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