xref: /minix3/external/bsd/llvm/dist/llvm/test/MC/ELF/symver.s (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -r -t | FileCheck %s
2*0a6a1f1dSLionel Sambuc
3*0a6a1f1dSLionel Sambucdefined1:
4*0a6a1f1dSLionel Sambucdefined2:
5*0a6a1f1dSLionel Sambucdefined3:
6*0a6a1f1dSLionel Sambuc        .symver defined1, bar1@zed
7*0a6a1f1dSLionel Sambuc        .symver undefined1, bar2@zed
8*0a6a1f1dSLionel Sambuc
9*0a6a1f1dSLionel Sambuc        .symver defined2, bar3@@zed
10*0a6a1f1dSLionel Sambuc
11*0a6a1f1dSLionel Sambuc        .symver defined3, bar5@@@zed
12*0a6a1f1dSLionel Sambuc        .symver undefined3, bar6@@@zed
13*0a6a1f1dSLionel Sambuc
14*0a6a1f1dSLionel Sambuc        .long defined1
15*0a6a1f1dSLionel Sambuc        .long undefined1
16*0a6a1f1dSLionel Sambuc        .long defined2
17*0a6a1f1dSLionel Sambuc        .long defined3
18*0a6a1f1dSLionel Sambuc        .long undefined3
19*0a6a1f1dSLionel Sambuc
20*0a6a1f1dSLionel Sambuc        .global global1
21*0a6a1f1dSLionel Sambuc        .symver global1, g1@@zed
22*0a6a1f1dSLionel Sambucglobal1:
23*0a6a1f1dSLionel Sambuc
24*0a6a1f1dSLionel Sambuc// CHECK:      Relocations [
25*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Section (2) .rela.text {
26*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     0x0 R_X86_64_32 .text 0x0
27*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     0x4 R_X86_64_32 bar2@zed 0x0
28*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     0x8 R_X86_64_32 .text 0x0
29*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     0xC R_X86_64_32 .text 0x0
30*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     0x10 R_X86_64_32 bar6@zed 0x0
31*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
32*0a6a1f1dSLionel Sambuc// CHECK-NEXT: ]
33*0a6a1f1dSLionel Sambuc
34*0a6a1f1dSLionel Sambuc// CHECK:        Symbol {
35*0a6a1f1dSLionel Sambuc// CHECK:          Name: bar1@zed
36*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
37*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
38*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
39*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
40*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
41*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
42*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
43*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
44*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: bar3@@zed
45*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
46*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
47*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
48*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
49*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
50*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
51*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
52*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
53*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: bar5@@zed
54*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
55*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
56*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
57*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
58*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
59*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
60*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
61*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
62*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: defined1
63*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
64*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
65*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
66*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
67*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
68*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
69*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
70*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
71*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: defined2
72*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
73*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
74*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
75*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
76*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
77*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
78*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
79*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
80*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: .text
81*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
82*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
83*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
84*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: Section
85*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
86*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
87*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
88*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
89*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: .data
90*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
91*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
92*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
93*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: Section
94*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
95*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .data
96*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
97*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
98*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: .bss
99*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
100*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
101*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Local
102*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: Section
103*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
104*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .bss
105*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
106*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
107*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: g1@@zed
108*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x14
109*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
110*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Global
111*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
112*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
113*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
114*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
115*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
116*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: global1
117*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x14
118*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
119*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Global
120*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
121*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
122*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: .text
123*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
124*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
125*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: bar2@zed
126*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
127*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
128*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Global
129*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
130*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
131*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: Undefined
132*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
133*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   Symbol {
134*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Name: bar6@zed
135*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Value: 0x0
136*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Size: 0
137*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Binding: Global
138*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Type: None
139*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Other: 0
140*0a6a1f1dSLionel Sambuc// CHECK-NEXT:     Section: Undefined
141*0a6a1f1dSLionel Sambuc// CHECK-NEXT:   }
142*0a6a1f1dSLionel Sambuc// CHECK-NEXT: ]
143