1 # RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
3 #CHECK: brcl 0, .[[LAB:L.*]]-4294967296 # encoding: [0xc0,0x04,A,A,A,A]
4 #CHECK: fixup A - offset: 2, value: (.[[LAB]]-4294967296)+2, kind: FK_390_PC32DBL
6 #CHECK: brcl 0, .[[LAB:L.*]]-2 # encoding: [0xc0,0x04,A,A,A,A]
7 #CHECK: fixup A - offset: 2, value: (.[[LAB]]-2)+2, kind: FK_390_PC32DBL
9 #CHECK: brcl 0, .[[LAB:L.*]] # encoding: [0xc0,0x04,A,A,A,A]
10 #CHECK: fixup A - offset: 2, value: .[[LAB]]+2, kind: FK_390_PC32DBL
12 #CHECK: brcl 0, .[[LAB:L.*]]+4294967294 # encoding: [0xc0,0x04,A,A,A,A]
13 #CHECK: fixup A - offset: 2, value: (.[[LAB]]+4294967294)+2, kind: FK_390_PC32DBL
16 #CHECK: brcl 0, foo # encoding: [0xc0,0x04,A,A,A,A]
17 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
20 #CHECK: brcl 1, foo # encoding: [0xc0,0x14,A,A,A,A]
21 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
22 #CHECK: jgo foo # encoding: [0xc0,0x14,A,A,A,A]
23 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
27 #CHECK: brcl 2, foo # encoding: [0xc0,0x24,A,A,A,A]
28 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
29 #CHECK: jgh foo # encoding: [0xc0,0x24,A,A,A,A]
30 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
34 #CHECK: brcl 3, foo # encoding: [0xc0,0x34,A,A,A,A]
35 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
36 #CHECK: jgnle foo # encoding: [0xc0,0x34,A,A,A,A]
37 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
41 #CHECK: brcl 4, foo # encoding: [0xc0,0x44,A,A,A,A]
42 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
43 #CHECK: jgl foo # encoding: [0xc0,0x44,A,A,A,A]
44 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
48 #CHECK: brcl 5, foo # encoding: [0xc0,0x54,A,A,A,A]
49 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
50 #CHECK: jgnhe foo # encoding: [0xc0,0x54,A,A,A,A]
51 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
55 #CHECK: brcl 6, foo # encoding: [0xc0,0x64,A,A,A,A]
56 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
57 #CHECK: jglh foo # encoding: [0xc0,0x64,A,A,A,A]
58 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
62 #CHECK: brcl 7, foo # encoding: [0xc0,0x74,A,A,A,A]
63 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
64 #CHECK: jgne foo # encoding: [0xc0,0x74,A,A,A,A]
65 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
69 #CHECK: brcl 8, foo # encoding: [0xc0,0x84,A,A,A,A]
70 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
71 #CHECK: jge foo # encoding: [0xc0,0x84,A,A,A,A]
72 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
76 #CHECK: brcl 9, foo # encoding: [0xc0,0x94,A,A,A,A]
77 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
78 #CHECK: jgnlh foo # encoding: [0xc0,0x94,A,A,A,A]
79 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
83 #CHECK: brcl 10, foo # encoding: [0xc0,0xa4,A,A,A,A]
84 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
85 #CHECK: jghe foo # encoding: [0xc0,0xa4,A,A,A,A]
86 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
90 #CHECK: brcl 11, foo # encoding: [0xc0,0xb4,A,A,A,A]
91 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
92 #CHECK: jgnl foo # encoding: [0xc0,0xb4,A,A,A,A]
93 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
97 #CHECK: brcl 12, foo # encoding: [0xc0,0xc4,A,A,A,A]
98 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
99 #CHECK: jgle foo # encoding: [0xc0,0xc4,A,A,A,A]
100 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
104 #CHECK: brcl 13, foo # encoding: [0xc0,0xd4,A,A,A,A]
105 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
106 #CHECK: jgnh foo # encoding: [0xc0,0xd4,A,A,A,A]
107 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
111 #CHECK: brcl 14, foo # encoding: [0xc0,0xe4,A,A,A,A]
112 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
113 #CHECK: jgno foo # encoding: [0xc0,0xe4,A,A,A,A]
114 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
118 #CHECK: brcl 15, foo # encoding: [0xc0,0xf4,A,A,A,A]
119 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
120 #CHECK: jg foo # encoding: [0xc0,0xf4,A,A,A,A]
121 #CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
125 #CHECK: brcl 0, bar+100 # encoding: [0xc0,0x04,A,A,A,A]
126 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
129 #CHECK: jgo bar+100 # encoding: [0xc0,0x14,A,A,A,A]
130 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
133 #CHECK: jgh bar+100 # encoding: [0xc0,0x24,A,A,A,A]
134 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
137 #CHECK: jgnle bar+100 # encoding: [0xc0,0x34,A,A,A,A]
138 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
141 #CHECK: jgl bar+100 # encoding: [0xc0,0x44,A,A,A,A]
142 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
145 #CHECK: jgnhe bar+100 # encoding: [0xc0,0x54,A,A,A,A]
146 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
149 #CHECK: jglh bar+100 # encoding: [0xc0,0x64,A,A,A,A]
150 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
153 #CHECK: jgne bar+100 # encoding: [0xc0,0x74,A,A,A,A]
154 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
157 #CHECK: jge bar+100 # encoding: [0xc0,0x84,A,A,A,A]
158 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
161 #CHECK: jgnlh bar+100 # encoding: [0xc0,0x94,A,A,A,A]
162 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
165 #CHECK: jghe bar+100 # encoding: [0xc0,0xa4,A,A,A,A]
166 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
169 #CHECK: jgnl bar+100 # encoding: [0xc0,0xb4,A,A,A,A]
170 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
173 #CHECK: jgle bar+100 # encoding: [0xc0,0xc4,A,A,A,A]
174 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
177 #CHECK: jgnh bar+100 # encoding: [0xc0,0xd4,A,A,A,A]
178 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
181 #CHECK: jgno bar+100 # encoding: [0xc0,0xe4,A,A,A,A]
182 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
185 #CHECK: jg bar+100 # encoding: [0xc0,0xf4,A,A,A,A]
186 #CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
189 #CHECK: brcl 0, bar@PLT # encoding: [0xc0,0x04,A,A,A,A]
190 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
193 #CHECK: jgo bar@PLT # encoding: [0xc0,0x14,A,A,A,A]
194 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
197 #CHECK: jgh bar@PLT # encoding: [0xc0,0x24,A,A,A,A]
198 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
201 #CHECK: jgnle bar@PLT # encoding: [0xc0,0x34,A,A,A,A]
202 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
205 #CHECK: jgl bar@PLT # encoding: [0xc0,0x44,A,A,A,A]
206 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
209 #CHECK: jgnhe bar@PLT # encoding: [0xc0,0x54,A,A,A,A]
210 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
213 #CHECK: jglh bar@PLT # encoding: [0xc0,0x64,A,A,A,A]
214 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
217 #CHECK: jgne bar@PLT # encoding: [0xc0,0x74,A,A,A,A]
218 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
221 #CHECK: jge bar@PLT # encoding: [0xc0,0x84,A,A,A,A]
222 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
225 #CHECK: jgnlh bar@PLT # encoding: [0xc0,0x94,A,A,A,A]
226 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
229 #CHECK: jghe bar@PLT # encoding: [0xc0,0xa4,A,A,A,A]
230 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
233 #CHECK: jgnl bar@PLT # encoding: [0xc0,0xb4,A,A,A,A]
234 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
237 #CHECK: jgle bar@PLT # encoding: [0xc0,0xc4,A,A,A,A]
238 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
241 #CHECK: jgnh bar@PLT # encoding: [0xc0,0xd4,A,A,A,A]
242 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
245 #CHECK: jgno bar@PLT # encoding: [0xc0,0xe4,A,A,A,A]
246 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
249 #CHECK: jg bar@PLT # encoding: [0xc0,0xf4,A,A,A,A]
250 #CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL