1 // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -t | FileCheck %s
14 // Test that bar4 and bar 5 are also functions and have the same value as foo4.
23 // Test that bar6 is a function that doesn't have the same value as foo4.
27 // Test that indirect local aliases do not appear as symbols.
32 leaq .Llocal1(%rip), %rdi
37 // CHECK-NEXT: Symbol {
38 // CHECK-NEXT: Name: (0)
39 // CHECK-NEXT: Value: 0x0
40 // CHECK-NEXT: Size: 0
41 // CHECK-NEXT: Binding: Local (0x0)
42 // CHECK-NEXT: Type: None (0x0)
43 // CHECK-NEXT: Other: 0
44 // CHECK-NEXT: Section: Undefined (0x0)
46 // CHECK-NEXT: Symbol {
47 // CHECK-NEXT: Name: bar
48 // CHECK-NEXT: Value: 0x0
49 // CHECK-NEXT: Size: 0
50 // CHECK-NEXT: Binding: Local
51 // CHECK-NEXT: Type: None
52 // CHECK-NEXT: Other: 0
53 // CHECK-NEXT: Section: .text
55 // CHECK-NEXT: Symbol {
56 // CHECK-NEXT: Name: bar4
57 // CHECK-NEXT: Value: 0x1
58 // CHECK-NEXT: Size: 0
59 // CHECK-NEXT: Binding: Local
60 // CHECK-NEXT: Type: Function
61 // CHECK-NEXT: Other: 0
62 // CHECK-NEXT: Section: .text
64 // CHECK-NEXT: Symbol {
65 // CHECK-NEXT: Name: bar5
66 // CHECK-NEXT: Value: 0x1
67 // CHECK-NEXT: Size: 0
68 // CHECK-NEXT: Binding: Local
69 // CHECK-NEXT: Type: Function
70 // CHECK-NEXT: Other: 0
71 // CHECK-NEXT: Section: .text
73 // CHECK-NEXT: Symbol {
74 // CHECK-NEXT: Name: bar6
75 // CHECK-NEXT: Value: 0x5
76 // CHECK-NEXT: Size: 0
77 // CHECK-NEXT: Binding: Local
78 // CHECK-NEXT: Type: None
79 // CHECK-NEXT: Other: 0
80 // CHECK-NEXT: Section: .text
82 // CHECK-NEXT: Symbol {
83 // CHECK-NEXT: Name: foo
84 // CHECK-NEXT: Value: 0x0
85 // CHECK-NEXT: Size: 0
86 // CHECK-NEXT: Binding: Local
87 // CHECK-NEXT: Type: None
88 // CHECK-NEXT: Other: 0
89 // CHECK-NEXT: Section: .text
91 // CHECK-NEXT: Symbol {
92 // CHECK-NEXT: Name: foo3
93 // CHECK-NEXT: Value: 0x0
94 // CHECK-NEXT: Size: 0
95 // CHECK-NEXT: Binding: Local
96 // CHECK-NEXT: Type: None
97 // CHECK-NEXT: Other: 0
98 // CHECK-NEXT: Section: .text
100 // CHECK-NEXT: Symbol {
101 // CHECK-NEXT: Name: foo4
102 // CHECK-NEXT: Value: 0x1
103 // CHECK-NEXT: Size: 0
104 // CHECK-NEXT: Binding: Local
105 // CHECK-NEXT: Type: Function
106 // CHECK-NEXT: Other: 0
107 // CHECK-NEXT: Section: .text
109 // CHECK-NEXT: Symbol {
110 // CHECK-NEXT: Name: .text (0)
111 // CHECK-NOT: Symbol {
113 // CHECK-NEXT: Symbol {
114 // CHECK-NEXT: Name: .data (0)
115 // CHECK-NOT: Symbol {
117 // CHECK-NEXT: Symbol {
118 // CHECK-NEXT: Name: .bss (0)
119 // CHECK-NOT: Symbol {
121 // CHECK-NEXT: Symbol {
122 // CHECK-NEXT: Name: bar3
123 // CHECK-NEXT: Value: 0x0
124 // CHECK-NEXT: Size: 0
125 // CHECK-NEXT: Binding: Global
126 // CHECK-NEXT: Type: None
127 // CHECK-NEXT: Other: 0
128 // CHECK-NEXT: Section: .text
130 // CHECK-NEXT: Symbol {
131 // CHECK-NEXT: Name: bar2
132 // CHECK-NEXT: Value: 0x0
133 // CHECK-NEXT: Size: 0
134 // CHECK-NEXT: Binding: Global
135 // CHECK-NEXT: Type: None
136 // CHECK-NEXT: Other: 0
137 // CHECK-NEXT: Section: Undefined (0x0)