dcb1660bbad3e3b8640312ff4130a9f57098d8f7
[oota-llvm.git] / test / MC / ELF / undef.s
1 // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -t | FileCheck %s
2
3 // Test which symbols should be in the symbol table
4
5         .long   .Lsym1
6 .Lsym2:
7 .Lsym3:
8 .Lsym4 = .Lsym2 - .Lsym3
9         .long   .Lsym4
10
11         .type   .Lsym5,@object
12         .type   sym6,@object
13         .long sym6
14
15         .section        .rodata.str1.1,"aMS",@progbits,1
16 .Lsym7:
17 .Lsym8:
18
19         .text
20         movsd   .Lsym8(%rip), %xmm1
21
22 test2_a = undef
23 test2_b = undef + 1
24
25 // CHECK:      Symbols [
26 // CHECK-NEXT:   Symbol {
27 // CHECK-NEXT:     Name:  (0)
28 // CHECK-NEXT:     Value: 0x0
29 // CHECK-NEXT:     Size: 0
30 // CHECK-NEXT:     Binding: Local
31 // CHECK-NEXT:     Type: None
32 // CHECK-NEXT:     Other: 0
33 // CHECK-NEXT:     Section: Undefined
34 // CHECK-NEXT:   }
35 // CHECK-NEXT:   Symbol {
36 // CHECK-NEXT:     Name: .Lsym8
37 // CHECK-NEXT:     Value: 0x0
38 // CHECK-NEXT:     Size: 0
39 // CHECK-NEXT:     Binding: Local
40 // CHECK-NEXT:     Type: None
41 // CHECK-NEXT:     Other: 0
42 // CHECK-NEXT:     Section: .rodata.str1.1
43 // CHECK-NEXT:   }
44 // CHECK-NEXT:   Symbol {
45 // CHECK-NEXT:     Name: (0)
46 // CHECK-NEXT:     Value: 0x0
47 // CHECK-NEXT:     Size: 0
48 // CHECK-NEXT:     Binding: Local
49 // CHECK-NEXT:     Type: Section
50 // CHECK-NEXT:     Other: 0
51 // CHECK-NEXT:     Section: .text
52 // CHECK-NEXT:   }
53 // CHECK-NEXT:   Symbol {
54 // CHECK-NEXT:     Name: (0)
55 // CHECK-NEXT:     Value: 0x0
56 // CHECK-NEXT:     Size: 0
57 // CHECK-NEXT:     Binding: Local
58 // CHECK-NEXT:     Type: Section
59 // CHECK-NEXT:     Other: 0
60 // CHECK-NEXT:     Section: .data
61 // CHECK-NEXT:   }
62 // CHECK-NEXT:   Symbol {
63 // CHECK-NEXT:     Name: (0)
64 // CHECK-NEXT:     Value: 0x0
65 // CHECK-NEXT:     Size: 0
66 // CHECK-NEXT:     Binding: Local
67 // CHECK-NEXT:     Type: Section
68 // CHECK-NEXT:     Other: 0
69 // CHECK-NEXT:     Section: .bss
70 // CHECK-NEXT:   }
71 // CHECK-NEXT:   Symbol {
72 // CHECK-NEXT:     Name: (0)
73 // CHECK-NEXT:     Value: 0x0
74 // CHECK-NEXT:     Size: 0
75 // CHECK-NEXT:     Binding: Local
76 // CHECK-NEXT:     Type: Section
77 // CHECK-NEXT:     Other: 0
78 // CHECK-NEXT:     Section: .rodata.str1.1
79 // CHECK-NEXT:   }
80 // CHECK-NEXT:   Symbol {
81 // CHECK-NEXT:     Name: .Lsym1
82 // CHECK-NEXT:     Value: 0x0
83 // CHECK-NEXT:     Size: 0
84 // CHECK-NEXT:     Binding: Global
85 // CHECK-NEXT:     Type: None
86 // CHECK-NEXT:     Other: 0
87 // CHECK-NEXT:     Section: Undefined
88 // CHECK-NEXT:   }
89 // CHECK-NEXT:   Symbol {
90 // CHECK-NEXT:     Name: sym6
91 // CHECK-NEXT:     Value: 0x0
92 // CHECK-NEXT:     Size: 0
93 // CHECK-NEXT:     Binding: Global
94 // CHECK-NEXT:     Type: Object
95 // CHECK-NEXT:     Other: 0
96 // CHECK-NEXT:     Section: Undefined
97 // CHECK-NEXT:   }
98 // CHECK-NEXT: ]