[DAGCombiner] Add target hook function to decide folding (mul (add x, c1), c2)
[llvm-project.git] / llvm / test / MC / Lanai / v11.s
blob621c47de0235c4468ad8ec9f7928b9df55891f55
1 ! RUN: llvm-mc -arch=lanai -show-encoding %s | FileCheck %s
3 add %r17, 0, %r21
4 ! CHECK: 0x0a,0xc4,0x00,0x00
5 add %r17, 0x00001234, %r21
6 ! CHECK: 0x0a,0xc4,0x12,0x34
7 add %r17, 0x12340000, %r21
8 ! CHECK: 0x0a,0xc5,0x12,0x34
9 add.f %r17, 0, %r21
10 ! CHECK: 0x0a,0xc6,0x00,0x00
11 add.f %r17, 0x00001234, %r21
12 ! CHECK: 0x0a,0xc6,0x12,0x34
13 add.f %r17, 0x12340000, %r21
14 ! CHECK: 0x0a,0xc7,0x12,0x34
15 add %r17, %r18, %r21
16 ! CHECK: 0xca,0xc4,0x90,0x00
17 add.f %r17, %r18, %r21
18 ! CHECK: 0xca,0xc6,0x90,0x00
19 addc %r17, %r18, %r21
20 ! CHECK: 0xca,0xc4,0x91,0x00
21 addc.f %r17, %r18, %r21
22 ! CHECK: 0xca,0xc6,0x91,0x00
23 addc %r17, 0, %r21
24 ! CHECK: 0x1a,0xc4,0x00,0x00
25 addc %r17, 0x00001234, %r21
26 ! CHECK: 0x1a,0xc4,0x12,0x34
27 addc %r17, 0x12340000, %r21
28 ! CHECK: 0x1a,0xc5,0x12,0x34
29 addc.f %r17, 0, %r21
30 ! CHECK: 0x1a,0xc6,0x00,0x00
31 addc.f %r17, 0x00001234, %r21
32 ! CHECK: 0x1a,0xc6,0x12,0x34
33 addc.f %r17, 0x12340000, %r21
34 ! CHECK: 0x1a,0xc7,0x12,0x34
35 and %r17, 0xffff1234, %r21
36 ! CHECK: 0x4a,0xc4,0x12,0x34
37 and %r17, 0x1234ffff, %r21
38 ! CHECK: 0x4a,0xc5,0x12,0x34
39 and.f %r17, 0xffff1234, %r21
40 ! CHECK: 0x4a,0xc6,0x12,0x34
41 and.f %r17, 0x1234ffff, %r21
42 ! CHECK: 0x4a,0xc7,0x12,0x34
43 and %r17, %r18, %r21
44 ! CHECK: 0xca,0xc4,0x94,0x00
45 and.f %r17, %r18, %r21
46 ! CHECK: 0xca,0xc6,0x94,0x00
47 bt 0x123454
48 ! CHECK: 0xe0,0x12,0x34,0x54
49 bf 0x123454
50 ! CHECK: 0xe0,0x12,0x34,0x55
51 bhi 0x123454
52 ! CHECK: 0xe2,0x12,0x34,0x54
53 bugt 0x123454
54 ! CHECK: 0xe2,0x12,0x34,0x54
55 bls 0x123454
56 ! CHECK: 0xe2,0x12,0x34,0x55
57 bule 0x123454
58 ! CHECK: 0xe2,0x12,0x34,0x55
59 bcc 0x123454
60 ! CHECK: 0xe4,0x12,0x34,0x54
61 bult 0x123454
62 ! CHECK: 0xe4,0x12,0x34,0x54
63 bcs 0x123454
64 ! CHECK: 0xe4,0x12,0x34,0x55
65 buge 0x123454
66 ! CHECK: 0xe4,0x12,0x34,0x55
67 bne 0x123454
68 ! CHECK: 0xe6,0x12,0x34,0x54
69 beq 0x123454
70 ! CHECK: 0xe6,0x12,0x34,0x55
71 bvc 0x123454
72 ! CHECK: 0xe8,0x12,0x34,0x54
73 bvs 0x123454
74 ! CHECK: 0xe8,0x12,0x34,0x55
75 bpl 0x123454
76 ! CHECK: 0xea,0x12,0x34,0x54
77 bmi 0x123454
78 ! CHECK: 0xea,0x12,0x34,0x55
79 bge 0x123454
80 ! CHECK: 0xec,0x12,0x34,0x54
81 blt 0x123454
82 ! CHECK: 0xec,0x12,0x34,0x55
83 bgt 0x123454
84 ! CHECK: 0xee,0x12,0x34,0x54
85 bt %r19
86 ! CHECK: 0xc1,0x00,0x9d,0x00
87 bt.r 0x5678
88 ! CHECK: 0xe1,0x00,0x56,0x7a
89 bf.r 0x5678
90 ! CHECK: 0xe1,0x00,0x56,0x7b
91 bhi.r 0x5678
92 ! CHECK: 0xe3,0x00,0x56,0x7a
93 bugt.r 0x5678
94 ! CHECK: 0xe3,0x00,0x56,0x7a
95 bls.r 0x5678
96 ! CHECK: 0xe3,0x00,0x56,0x7b
97 bule.r 0x5678
98 ! CHECK: 0xe3,0x00,0x56,0x7b
99 bcc.r 0x5678
100 ! CHECK: 0xe5,0x00,0x56,0x7a
101 bult.r 0x5678
102 ! CHECK: 0xe5,0x00,0x56,0x7a
103 bcs.r 0x5678
104 ! CHECK: 0xe5,0x00,0x56,0x7b
105 buge.r 0x5678
106 ! CHECK: 0xe5,0x00,0x56,0x7b
107 bne.r 0x5678
108 ! CHECK: 0xe7,0x00,0x56,0x7a
109 beq.r 0x5678
110 ! CHECK: 0xe7,0x00,0x56,0x7b
111 bvc.r 0x5678
112 ! CHECK: 0xe9,0x00,0x56,0x7a
113 bvs.r 0x5678
114 ! CHECK: 0xe9,0x00,0x56,0x7b
115 bpl.r 0x5678
116 ! CHECK: 0xeb,0x00,0x56,0x7a
117 bmi.r 0x5678
118 ! CHECK: 0xeb,0x00,0x56,0x7b
119 bge.r 0x5678
120 ! CHECK: 0xed,0x00,0x56,0x7a
121 blt.r 0x5678
122 ! CHECK: 0xed,0x00,0x56,0x7b
123 bgt.r 0x5678
124 ! CHECK: 0xef,0x00,0x56,0x7a
125 ld -32768[%r17], %r21
126 ! CHECK: 0x8a,0xc6,0x80,0x00
127 ld -1024[%r17], %r21
128 ! CHECK: 0x8a,0xc6,0xfc,0x00
129 ld 0[%r17], %r21
130 ! CHECK: 0x8a,0xc4,0x00,0x00
131 ld 1024[%r17], %r21
132 ! CHECK: 0x8a,0xc6,0x04,0x00
133 ld 32767[%r17], %r21
134 ! CHECK: 0x8a,0xc6,0x7f,0xff
135 uld -32768[%r17], %r21
136 ! CHECK: 0x8a,0xc6,0x80,0x00
137 uld -1024[%r17], %r21
138 ! CHECK: 0x8a,0xc6,0xfc,0x00
139 uld 0[%r17], %r21
140 ! CHECK: 0x8a,0xc4,0x00,0x00
141 uld 1024[%r17], %r21
142 ! CHECK: 0x8a,0xc6,0x04,0x00
143 uld 32767[%r17], %r21
144 ! CHECK: 0x8a,0xc6,0x7f,0xff
145 ld %r18[%r17], %r21
146 ! CHECK: 0xaa,0xc6,0x90,0x02
147 uld %r18[%r17], %r21
148 ! CHECK: 0xaa,0xc6,0x90,0x03
149 ld.h -512[%r17], %r21
150 ! CHECK: 0xfa,0xc7,0x0a,0x00
151 ld.h -13[%r17], %r21
152 ! CHECK: 0xfa,0xc7,0x0b,0xf3
153 ld.h 18[%r17], %r21
154 ! CHECK: 0xfa,0xc7,0x08,0x12
155 ld.h 511[%r17], %r21
156 ! CHECK: 0xfa,0xc7,0x09,0xff
157 ld.b -512[%r17], %r21
158 ! CHECK: 0xfa,0xc7,0x4a,0x00
159 ld.b -13[%r17], %r21
160 ! CHECK: 0xfa,0xc7,0x4b,0xf3
161 ld.b 18[%r17], %r21
162 ! CHECK: 0xfa,0xc7,0x48,0x12
163 ld.b 511[%r17], %r21
164 ! CHECK: 0xfa,0xc7,0x49,0xff
165 uld.h -512[%r17], %r21
166 ! CHECK: 0xfa,0xc7,0x1a,0x00
167 uld.h -13[%r17], %r21
168 ! CHECK: 0xfa,0xc7,0x1b,0xf3
169 uld.h 18[%r17], %r21
170 ! CHECK: 0xfa,0xc7,0x18,0x12
171 uld.h 511[%r17], %r21
172 ! CHECK: 0xfa,0xc7,0x19,0xff
173 uld.b -512[%r17], %r21
174 ! CHECK: 0xfa,0xc7,0x5a,0x00
175 uld.b -13[%r17], %r21
176 ! CHECK: 0xfa,0xc7,0x5b,0xf3
177 uld.b 18[%r17], %r21
178 ! CHECK: 0xfa,0xc7,0x58,0x12
179 uld.b 511[%r17], %r21
180 ! CHECK: 0xfa,0xc7,0x59,0xff
181 ld -32768[*%r17], %r21
182 ! CHECK: 0x8a,0xc7,0x80,0x00
183 ld -1024[*%r17], %r21
184 ! CHECK: 0x8a,0xc7,0xfc,0x00
185 ld 0[*%r17], %r21
186 ! CHECK: 0x8a,0xc4,0x00,0x00
187 ld 1024[*%r17], %r21
188 ! CHECK: 0x8a,0xc7,0x04,0x00
189 ld 32767[*%r17], %r21
190 ! CHECK: 0x8a,0xc7,0x7f,0xff
191 uld -32768[*%r17], %r21
192 ! CHECK: 0x8a,0xc7,0x80,0x00
193 uld -1024[*%r17], %r21
194 ! CHECK: 0x8a,0xc7,0xfc,0x00
195 uld 0[*%r17], %r21
196 ! CHECK: 0x8a,0xc4,0x00,0x00
197 uld 1024[*%r17], %r21
198 ! CHECK: 0x8a,0xc7,0x04,0x00
199 uld 32767[*%r17], %r21
200 ! CHECK: 0x8a,0xc7,0x7f,0xff
201 ld [--%r17], %r21
202 ! CHECK: 0x8a,0xc7,0xff,0xfc
203 ld [++%r17], %r21
204 ! CHECK: 0x8a,0xc7,0x00,0x04
205 ld.h [--%r17], %r21
206 ! CHECK: 0xfa,0xc7,0x0f,0xfe
207 ld.h [++%r17], %r21
208 ! CHECK: 0xfa,0xc7,0x0c,0x02
209 uld.h [--%r17], %r21
210 ! CHECK: 0xfa,0xc7,0x1f,0xfe
211 uld.h [++%r17], %r21
212 ! CHECK: 0xfa,0xc7,0x1c,0x02
213 ld.b [--%r17], %r21
214 ! CHECK: 0xfa,0xc7,0x4f,0xff
215 ld.b [++%r17], %r21
216 ! CHECK: 0xfa,0xc7,0x4c,0x01
217 uld.b [--%r17], %r21
218 ! CHECK: 0xfa,0xc7,0x5f,0xff
219 uld.b [++%r17], %r21
220 ! CHECK: 0xfa,0xc7,0x5c,0x01
221 ld %r18[*%r17], %r21
222 ! CHECK: 0xaa,0xc7,0x90,0x02
223 uld %r18[*%r17], %r21
224 ! CHECK: 0xaa,0xc7,0x90,0x03
225 ld.h -512[*%r17], %r21
226 ! CHECK: 0xfa,0xc7,0x0e,0x00
227 ld.h -13[*%r17], %r21
228 ! CHECK: 0xfa,0xc7,0x0f,0xf3
229 ld.h 18[*%r17], %r21
230 ! CHECK: 0xfa,0xc7,0x0c,0x12
231 ld.h 511[*%r17], %r21
232 ! CHECK: 0xfa,0xc7,0x0d,0xff
233 ld.b -512[*%r17], %r21
234 ! CHECK: 0xfa,0xc7,0x4e,0x00
235 ld.b -13[*%r17], %r21
236 ! CHECK: 0xfa,0xc7,0x4f,0xf3
237 ld.b 18[*%r17], %r21
238 ! CHECK: 0xfa,0xc7,0x4c,0x12
239 ld.b 511[*%r17], %r21
240 ! CHECK: 0xfa,0xc7,0x4d,0xff
241 uld.h -512[*%r17], %r21
242 ! CHECK: 0xfa,0xc7,0x1e,0x00
243 uld.h -13[*%r17], %r21
244 ! CHECK: 0xfa,0xc7,0x1f,0xf3
245 uld.h 18[*%r17], %r21
246 ! CHECK: 0xfa,0xc7,0x1c,0x12
247 uld.h 511[*%r17], %r21
248 ! CHECK: 0xfa,0xc7,0x1d,0xff
249 uld.b -512[*%r17], %r21
250 ! CHECK: 0xfa,0xc7,0x5e,0x00
251 uld.b -13[*%r17], %r21
252 ! CHECK: 0xfa,0xc7,0x5f,0xf3
253 uld.b 18[*%r17], %r21
254 ! CHECK: 0xfa,0xc7,0x5c,0x12
255 uld.b 511[*%r17], %r21
256 ! CHECK: 0xfa,0xc7,0x5d,0xff
257 ld -32768[%r17*], %r21
258 ! CHECK: 0x8a,0xc5,0x80,0x00
259 ld -1024[%r17*], %r21
260 ! CHECK: 0x8a,0xc5,0xfc,0x00
261 ld 0[%r17*], %r21
262 ! CHECK: 0x8a,0xc4,0x00,0x00
263 ld 1024[%r17*], %r21
264 ! CHECK: 0x8a,0xc5,0x04,0x00
265 ld 32767[%r17*], %r21
266 ! CHECK: 0x8a,0xc5,0x7f,0xff
267 uld -32768[%r17*], %r21
268 ! CHECK: 0x8a,0xc5,0x80,0x00
269 uld -1024[%r17*], %r21
270 ! CHECK: 0x8a,0xc5,0xfc,0x00
271 uld 0[%r17*], %r21
272 ! CHECK: 0x8a,0xc4,0x00,0x00
273 uld 1024[%r17*], %r21
274 ! CHECK: 0x8a,0xc5,0x04,0x00
275 uld 32767[%r17*], %r21
276 ! CHECK: 0x8a,0xc5,0x7f,0xff
277 ld [%r17--], %r21
278 ! CHECK: 0x8a,0xc5,0xff,0xfc
279 ld [%r17++], %r21
280 ! CHECK: 0x8a,0xc5,0x00,0x04
281 ld.h [%r17--], %r21
282 ! CHECK: 0xfa,0xc7,0x07,0xfe
283 ld.h [%r17++], %r21
284 ! CHECK: 0xfa,0xc7,0x04,0x02
285 uld.h [%r17--], %r21
286 ! CHECK: 0xfa,0xc7,0x17,0xfe
287 uld.h [%r17++], %r21
288 ! CHECK: 0xfa,0xc7,0x14,0x02
289 ld.b [%r17--], %r21
290 ! CHECK: 0xfa,0xc7,0x47,0xff
291 ld.b [%r17++], %r21
292 ! CHECK: 0xfa,0xc7,0x44,0x01
293 uld.b [%r17--], %r21
294 ! CHECK: 0xfa,0xc7,0x57,0xff
295 uld.b [%r17++], %r21
296 ! CHECK: 0xfa,0xc7,0x54,0x01
297 ld %r18[%r17*], %r21
298 ! CHECK: 0xaa,0xc5,0x90,0x02
299 uld %r18[%r17*], %r21
300 ! CHECK: 0xaa,0xc5,0x90,0x03
301 ld.h -512[%r17*], %r21
302 ! CHECK: 0xfa,0xc7,0x06,0x00
303 ld.h -13[%r17*], %r21
304 ! CHECK: 0xfa,0xc7,0x07,0xf3
305 ld.h 18[%r17*], %r21
306 ! CHECK: 0xfa,0xc7,0x04,0x12
307 ld.h 511[%r17*], %r21
308 ! CHECK: 0xfa,0xc7,0x05,0xff
309 ld.b -512[%r17*], %r21
310 ! CHECK: 0xfa,0xc7,0x46,0x00
311 ld.b -13[%r17*], %r21
312 ! CHECK: 0xfa,0xc7,0x47,0xf3
313 ld.b 18[%r17*], %r21
314 ! CHECK: 0xfa,0xc7,0x44,0x12
315 ld.b 511[%r17*], %r21
316 ! CHECK: 0xfa,0xc7,0x45,0xff
317 uld.h -512[%r17*], %r21
318 ! CHECK: 0xfa,0xc7,0x16,0x00
319 uld.h -13[%r17*], %r21
320 ! CHECK: 0xfa,0xc7,0x17,0xf3
321 uld.h 18[%r17*], %r21
322 ! CHECK: 0xfa,0xc7,0x14,0x12
323 uld.h 511[%r17*], %r21
324 ! CHECK: 0xfa,0xc7,0x15,0xff
325 uld.b -512[%r17*], %r21
326 ! CHECK: 0xfa,0xc7,0x56,0x00
327 uld.b -13[%r17*], %r21
328 ! CHECK: 0xfa,0xc7,0x57,0xf3
329 uld.b 18[%r17*], %r21
330 ! CHECK: 0xfa,0xc7,0x54,0x12
331 uld.b 511[%r17*], %r21
332 ! CHECK: 0xfa,0xc7,0x55,0xff
333 ld [%r17 add %r18], %r21
334 ! CHECK: 0xaa,0xc6,0x90,0x02
335 ld [%r17 addc %r18], %r21
336 ! CHECK: 0xaa,0xc6,0x91,0x02
337 ld [%r17 sub %r18], %r21
338 ! CHECK: 0xaa,0xc6,0x92,0x02
339 ld [%r17 subb %r18], %r21
340 ! CHECK: 0xaa,0xc6,0x93,0x02
341 ld [%r17 and %r18], %r21
342 ! CHECK: 0xaa,0xc6,0x94,0x02
343 ld [%r17 or %r18], %r21
344 ! CHECK: 0xaa,0xc6,0x95,0x02
345 ld [%r17 xor %r18], %r21
346 ! CHECK: 0xaa,0xc6,0x96,0x02
347 ld [%r17 sh %r18], %r21
348 ! CHECK: 0xaa,0xc6,0x97,0x82
349 ld [%r17 sha %r18], %r21
350 ! CHECK: 0xaa,0xc6,0x97,0xc2
351 ld [*%r17 add %r18], %r21
352 ! CHECK: 0xaa,0xc7,0x90,0x02
353 ld [*%r17 addc %r18], %r21
354 ! CHECK: 0xaa,0xc7,0x91,0x02
355 ld [*%r17 sub %r18], %r21
356 ! CHECK: 0xaa,0xc7,0x92,0x02
357 ld [*%r17 subb %r18], %r21
358 ! CHECK: 0xaa,0xc7,0x93,0x02
359 ld [*%r17 and %r18], %r21
360 ! CHECK: 0xaa,0xc7,0x94,0x02
361 ld [*%r17 or %r18], %r21
362 ! CHECK: 0xaa,0xc7,0x95,0x02
363 ld [*%r17 xor %r18], %r21
364 ! CHECK: 0xaa,0xc7,0x96,0x02
365 ld [*%r17 sh %r18], %r21
366 ! CHECK: 0xaa,0xc7,0x97,0x82
367 ld [*%r17 sha %r18], %r21
368 ! CHECK: 0xaa,0xc7,0x97,0xc2
369 ld [%r17* add %r18], %r21
370 ! CHECK: 0xaa,0xc5,0x90,0x02
371 ld [%r17* addc %r18], %r21
372 ! CHECK: 0xaa,0xc5,0x91,0x02
373 ld [%r17* sub %r18], %r21
374 ! CHECK: 0xaa,0xc5,0x92,0x02
375 ld [%r17* subb %r18], %r21
376 ! CHECK: 0xaa,0xc5,0x93,0x02
377 ld [%r17* and %r18], %r21
378 ! CHECK: 0xaa,0xc5,0x94,0x02
379 ld [%r17* or %r18], %r21
380 ! CHECK: 0xaa,0xc5,0x95,0x02
381 ld [%r17* xor %r18], %r21
382 ! CHECK: 0xaa,0xc5,0x96,0x02
383 ld [%r17* sh %r18], %r21
384 ! CHECK: 0xaa,0xc5,0x97,0x82
385 ld [%r17* sha %r18], %r21
386 ! CHECK: 0xaa,0xc5,0x97,0xc2
387 ld [0x12344], %r21
388 ! CHECK: 0xfa,0x84,0x23,0x44
389 leadz %r17, %r21
390 ! CHECK: 0xda,0xc4,0x00,0x02
391 mov 0, %r17
392 ! CHECK: 0x08,0x80,0x00,0x00
393 mov 0x00001234, %r17
394 ! CHECK: 0x08,0x80,0x12,0x34
395 mov 0x12340000, %r17
396 ! CHECK: 0x08,0x81,0x12,0x34
397 mov 0xaaaa0000, %r17
398 ! CHECK: 0x08,0x81,0xaa,0xaa
399 mov %r18, %r17
400 ! CHECK: 0xc8,0xc8,0x00,0x00
401 mov 0x12344, %r17
402 ! CHECK: 0xf8,0x86,0x23,0x44
403 mov 0xffff1234, %r17
404 ! CHECK: 0x48,0x84,0x12,0x34
405 mov 0x1234ffff, %r17
406 ! CHECK: 0x48,0x85,0x12,0x34
408 ! CHECK: 0x00,0x00,0x00,0x01
409 or %r17, 0, %r21
410 ! CHECK: 0x5a,0xc4,0x00,0x00
411 or %r17, 0x00001234, %r21
412 ! CHECK: 0x5a,0xc4,0x12,0x34
413 or %r17, 0x12340000, %r21
414 ! CHECK: 0x5a,0xc5,0x12,0x34
415 or.f %r17, 0, %r21
416 ! CHECK: 0x5a,0xc6,0x00,0x00
417 or.f %r17, 0x00001234, %r21
418 ! CHECK: 0x5a,0xc6,0x12,0x34
419 or.f %r17, 0x12340000, %r21
420 ! CHECK: 0x5a,0xc7,0x12,0x34
421 or %r17, %r18, %r21
422 ! CHECK: 0xca,0xc4,0x95,0x00
423 or.f %r17, %r18, %r21
424 ! CHECK: 0xca,0xc6,0x95,0x00
425 popc %r17, %r21
426 ! CHECK: 0xda,0xc4,0x00,0x01
427 st %r21
428 ! CHECK: 0xe0,0x54,0x00,0x02
429 shi %r21
430 ! CHECK: 0xe2,0x54,0x00,0x02
431 sugt %r21
432 ! CHECK: 0xe2,0x54,0x00,0x02
433 sls %r21
434 ! CHECK: 0xe2,0x54,0x00,0x03
435 sule %r21
436 ! CHECK: 0xe2,0x54,0x00,0x03
437 scc %r21
438 ! CHECK: 0xe4,0x54,0x00,0x02
439 sult %r21
440 ! CHECK: 0xe4,0x54,0x00,0x02
441 scs %r21
442 ! CHECK: 0xe4,0x54,0x00,0x03
443 suge %r21
444 ! CHECK: 0xe4,0x54,0x00,0x03
445 sne %r21
446 ! CHECK: 0xe6,0x54,0x00,0x02
447 seq %r21
448 ! CHECK: 0xe6,0x54,0x00,0x03
449 svc %r21
450 ! CHECK: 0xe8,0x54,0x00,0x02
451 svs %r21
452 ! CHECK: 0xe8,0x54,0x00,0x03
453 spl %r21
454 ! CHECK: 0xea,0x54,0x00,0x02
455 smi %r21
456 ! CHECK: 0xea,0x54,0x00,0x03
457 sge %r21
458 ! CHECK: 0xec,0x54,0x00,0x02
459 slt %r21
460 ! CHECK: 0xec,0x54,0x00,0x03
461 sgt %r21
462 ! CHECK: 0xee,0x54,0x00,0x02
463 sh %r17, -31, %r21
464 ! CHECK: 0x7a,0xc4,0xff,0xe1
465 sh %r17, -5, %r21
466 ! CHECK: 0x7a,0xc4,0xff,0xfb
467 sh %r17, 2, %r21
468 ! CHECK: 0x7a,0xc4,0x00,0x02
469 sh %r17, 31, %r21
470 ! CHECK: 0x7a,0xc4,0x00,0x1f
471 sh.f %r17, -31, %r21
472 ! CHECK: 0x7a,0xc6,0xff,0xe1
473 sh.f %r17, -5, %r21
474 ! CHECK: 0x7a,0xc6,0xff,0xfb
475 sh.f %r17, 2, %r21
476 ! CHECK: 0x7a,0xc6,0x00,0x02
477 sh.f %r17, 31, %r21
478 ! CHECK: 0x7a,0xc6,0x00,0x1f
479 sh %r17, %r18, %r21
480 ! CHECK: 0xca,0xc4,0x97,0x80
481 sh.f %r17, %r18, %r21
482 ! CHECK: 0xca,0xc6,0x97,0x80
483 sha %r17, -31, %r21
484 ! CHECK: 0x7a,0xc5,0xff,0xe1
485 sha %r17, -5, %r21
486 ! CHECK: 0x7a,0xc5,0xff,0xfb
487 sha %r17, 2, %r21
488 ! CHECK: 0x7a,0xc5,0x00,0x02
489 sha %r17, 31, %r21
490 ! CHECK: 0x7a,0xc5,0x00,0x1f
491 sha.f %r17, -31, %r21
492 ! CHECK: 0x7a,0xc7,0xff,0xe1
493 sha.f %r17, -5, %r21
494 ! CHECK: 0x7a,0xc7,0xff,0xfb
495 sha.f %r17, 2, %r21
496 ! CHECK: 0x7a,0xc7,0x00,0x02
497 sha.f %r17, 31, %r21
498 ! CHECK: 0x7a,0xc7,0x00,0x1f
499 sha %r17, %r18, %r21
500 ! CHECK: 0xca,0xc4,0x97,0xc0
501 sha.f %r17, %r18, %r21
502 ! CHECK: 0xca,0xc6,0x97,0xc0
503 st %r17, -32768[%r19]
504 ! CHECK: 0x98,0xce,0x80,0x00
505 st %r17, -1024[%r19]
506 ! CHECK: 0x98,0xce,0xfc,0x00
507 st %r17, 0[%r19]
508 ! CHECK: 0x98,0xcc,0x00,0x00
509 st %r17, 1024[%r19]
510 ! CHECK: 0x98,0xce,0x04,0x00
511 st %r17, 32767[%r19]
512 ! CHECK: 0x98,0xce,0x7f,0xff
513 st.h %r17, -512[%r19]
514 ! CHECK: 0xf8,0xcf,0x2a,0x00
515 st.h %r17, -13[%r19]
516 ! CHECK: 0xf8,0xcf,0x2b,0xf3
517 st.h %r17, 18[%r19]
518 ! CHECK: 0xf8,0xcf,0x28,0x12
519 st.h %r17, 511[%r19]
520 ! CHECK: 0xf8,0xcf,0x29,0xff
521 st.b %r17, -512[%r19]
522 ! CHECK: 0xf8,0xcf,0x6a,0x00
523 st.b %r17, -13[%r19]
524 ! CHECK: 0xf8,0xcf,0x6b,0xf3
525 st.b %r17, 18[%r19]
526 ! CHECK: 0xf8,0xcf,0x68,0x12
527 st.b %r17, 511[%r19]
528 ! CHECK: 0xf8,0xcf,0x69,0xff
529 st %r17, %r18[%r19]
530 ! CHECK: 0xb8,0xce,0x90,0x02
531 st.h %r17, %r18[%r19]
532 ! CHECK: 0xb8,0xce,0x90,0x00
533 st.b %r17, %r18[%r19]
534 ! CHECK: 0xb8,0xce,0x90,0x04
535 st %r17, -32768[*%r19]
536 ! CHECK: 0x98,0xcf,0x80,0x00
537 st %r17, -1024[*%r19]
538 ! CHECK: 0x98,0xcf,0xfc,0x00
539 st %r17, 0[*%r19]
540 ! CHECK: 0x98,0xcc,0x00,0x00
541 st %r17, 1024[*%r19]
542 ! CHECK: 0x98,0xcf,0x04,0x00
543 st %r17, 32767[*%r19]
544 ! CHECK: 0x98,0xcf,0x7f,0xff
545 st.h %r17, -512[*%r19]
546 ! CHECK: 0xf8,0xcf,0x2e,0x00
547 st.h %r17, -13[*%r19]
548 ! CHECK: 0xf8,0xcf,0x2f,0xf3
549 st.h %r17, 18[*%r19]
550 ! CHECK: 0xf8,0xcf,0x2c,0x12
551 st.h %r17, 511[*%r19]
552 ! CHECK: 0xf8,0xcf,0x2d,0xff
553 st.b %r17, -512[*%r19]
554 ! CHECK: 0xf8,0xcf,0x6e,0x00
555 st.b %r17, -13[*%r19]
556 ! CHECK: 0xf8,0xcf,0x6f,0xf3
557 st.b %r17, 18[*%r19]
558 ! CHECK: 0xf8,0xcf,0x6c,0x12
559 st.b %r17, 511[*%r19]
560 ! CHECK: 0xf8,0xcf,0x6d,0xff
561 st %r17, [--%r19]
562 ! CHECK: 0x98,0xcf,0xff,0xfc
563 st %r17, [++%r19]
564 ! CHECK: 0x98,0xcf,0x00,0x04
565 st.h %r17, [--%r19]
566 ! CHECK: 0xf8,0xcf,0x2f,0xfe
567 st.h %r17, [++%r19]
568 ! CHECK: 0xf8,0xcf,0x2c,0x02
569 st.b %r17, [--%r19]
570 ! CHECK: 0xf8,0xcf,0x6f,0xff
571 st.b %r17, [++%r19]
572 ! CHECK: 0xf8,0xcf,0x6c,0x01
573 st %r17, %r18[*%r19]
574 ! CHECK: 0xb8,0xcf,0x90,0x02
575 st.h %r17, %r18[*%r19]
576 ! CHECK: 0xb8,0xcf,0x90,0x00
577 st.b %r17, %r18[*%r19]
578 ! CHECK: 0xb8,0xcf,0x90,0x04
579 st %r17, -32768[%r19*]
580 ! CHECK: 0x98,0xcd,0x80,0x00
581 st %r17, -1024[%r19*]
582 ! CHECK: 0x98,0xcd,0xfc,0x00
583 st %r17, 0[%r19*]
584 ! CHECK: 0x98,0xcc,0x00,0x00
585 st %r17, 1024[%r19*]
586 ! CHECK: 0x98,0xcd,0x04,0x00
587 st %r17, 32767[%r19*]
588 ! CHECK: 0x98,0xcd,0x7f,0xff
589 st.h %r17, -512[%r19*]
590 ! CHECK: 0xf8,0xcf,0x26,0x00
591 st.h %r17, -13[%r19*]
592 ! CHECK: 0xf8,0xcf,0x27,0xf3
593 st.h %r17, 18[%r19*]
594 ! CHECK: 0xf8,0xcf,0x24,0x12
595 st.h %r17, 511[%r19*]
596 ! CHECK: 0xf8,0xcf,0x25,0xff
597 st.b %r17, -512[%r19*]
598 ! CHECK: 0xf8,0xcf,0x66,0x00
599 st.b %r17, -13[%r19*]
600 ! CHECK: 0xf8,0xcf,0x67,0xf3
601 st.b %r17, 18[%r19*]
602 ! CHECK: 0xf8,0xcf,0x64,0x12
603 st.b %r17, 511[%r19*]
604 ! CHECK: 0xf8,0xcf,0x65,0xff
605 st %r17, [%r19--]
606 ! CHECK: 0x98,0xcd,0xff,0xfc
607 st %r17, [%r19++]
608 ! CHECK: 0x98,0xcd,0x00,0x04
609 st.h %r17, [%r19--]
610 ! CHECK: 0xf8,0xcf,0x27,0xfe
611 st.h %r17, [%r19++]
612 ! CHECK: 0xf8,0xcf,0x24,0x02
613 st.b %r17, [%r19--]
614 ! CHECK: 0xf8,0xcf,0x67,0xff
615 st.b %r17, [%r19++]
616 ! CHECK: 0xf8,0xcf,0x64,0x01
617 st %r17, %r18[%r19*]
618 ! CHECK: 0xb8,0xcd,0x90,0x02
619 st.h %r17, %r18[%r19*]
620 ! CHECK: 0xb8,0xcd,0x90,0x00
621 st.b %r17, %r18[%r19*]
622 ! CHECK: 0xb8,0xcd,0x90,0x04
623 st %r21, [%r17 add %r18]
624 ! CHECK: 0xba,0xc6,0x90,0x02
625 st %r21, [%r17 addc %r18]
626 ! CHECK: 0xba,0xc6,0x91,0x02
627 st %r21, [%r17 sub %r18]
628 ! CHECK: 0xba,0xc6,0x92,0x02
629 st %r21, [%r17 subb %r18]
630 ! CHECK: 0xba,0xc6,0x93,0x02
631 st %r21, [%r17 and %r18]
632 ! CHECK: 0xba,0xc6,0x94,0x02
633 st %r21, [%r17 or %r18]
634 ! CHECK: 0xba,0xc6,0x95,0x02
635 st %r21, [%r17 xor %r18]
636 ! CHECK: 0xba,0xc6,0x96,0x02
637 st %r21, [%r17 sh %r18]
638 ! CHECK: 0xba,0xc6,0x97,0x82
639 st %r21, [%r17 sha %r18]
640 ! CHECK: 0xba,0xc6,0x97,0xc2
641 st.h %r21, [%r17 add %r18]
642 ! CHECK: 0xba,0xc6,0x90,0x00
643 st.h %r21, [%r17 addc %r18]
644 ! CHECK: 0xba,0xc6,0x91,0x00
645 st.h %r21, [%r17 sub %r18]
646 ! CHECK: 0xba,0xc6,0x92,0x00
647 st.h %r21, [%r17 subb %r18]
648 ! CHECK: 0xba,0xc6,0x93,0x00
649 st.h %r21, [%r17 and %r18]
650 ! CHECK: 0xba,0xc6,0x94,0x00
651 st.h %r21, [%r17 or %r18]
652 ! CHECK: 0xba,0xc6,0x95,0x00
653 st.h %r21, [%r17 xor %r18]
654 ! CHECK: 0xba,0xc6,0x96,0x00
655 st.h %r21, [%r17 sh %r18]
656 ! CHECK: 0xba,0xc6,0x97,0x80
657 st.h %r21, [%r17 sha %r18]
658 ! CHECK: 0xba,0xc6,0x97,0xc0
659 st.b %r21, [%r17 add %r18]
660 ! CHECK: 0xba,0xc6,0x90,0x04
661 st.b %r21, [%r17 addc %r18]
662 ! CHECK: 0xba,0xc6,0x91,0x04
663 st.b %r21, [%r17 sub %r18]
664 ! CHECK: 0xba,0xc6,0x92,0x04
665 st.b %r21, [%r17 subb %r18]
666 ! CHECK: 0xba,0xc6,0x93,0x04
667 st.b %r21, [%r17 and %r18]
668 ! CHECK: 0xba,0xc6,0x94,0x04
669 st.b %r21, [%r17 or %r18]
670 ! CHECK: 0xba,0xc6,0x95,0x04
671 st.b %r21, [%r17 xor %r18]
672 ! CHECK: 0xba,0xc6,0x96,0x04
673 st.b %r21, [%r17 sh %r18]
674 ! CHECK: 0xba,0xc6,0x97,0x84
675 st.b %r21, [%r17 sha %r18]
676 ! CHECK: 0xba,0xc6,0x97,0xc4
677 st %r21, [*%r17 add %r18]
678 ! CHECK: 0xba,0xc7,0x90,0x02
679 st %r21, [*%r17 addc %r18]
680 ! CHECK: 0xba,0xc7,0x91,0x02
681 st %r21, [*%r17 sub %r18]
682 ! CHECK: 0xba,0xc7,0x92,0x02
683 st %r21, [*%r17 subb %r18]
684 ! CHECK: 0xba,0xc7,0x93,0x02
685 st %r21, [*%r17 and %r18]
686 ! CHECK: 0xba,0xc7,0x94,0x02
687 st %r21, [*%r17 or %r18]
688 ! CHECK: 0xba,0xc7,0x95,0x02
689 st %r21, [*%r17 xor %r18]
690 ! CHECK: 0xba,0xc7,0x96,0x02
691 st %r21, [*%r17 sha %r18]
692 ! CHECK: 0xba,0xc7,0x97,0xc2
693 st.h %r21, [*%r17 add %r18]
694 ! CHECK: 0xba,0xc7,0x90,0x00
695 st.h %r21, [*%r17 addc %r18]
696 ! CHECK: 0xba,0xc7,0x91,0x00
697 st.h %r21, [*%r17 sub %r18]
698 ! CHECK: 0xba,0xc7,0x92,0x00
699 st.h %r21, [*%r17 subb %r18]
700 ! CHECK: 0xba,0xc7,0x93,0x00
701 st.h %r21, [*%r17 and %r18]
702 ! CHECK: 0xba,0xc7,0x94,0x00
703 st.h %r21, [*%r17 or %r18]
704 ! CHECK: 0xba,0xc7,0x95,0x00
705 st.h %r21, [*%r17 xor %r18]
706 ! CHECK: 0xba,0xc7,0x96,0x00
707 st.h %r21, [*%r17 sha %r18]
708 ! CHECK: 0xba,0xc7,0x97,0xc0
709 st.b %r21, [*%r17 add %r18]
710 ! CHECK: 0xba,0xc7,0x90,0x04
711 st.b %r21, [*%r17 addc %r18]
712 ! CHECK: 0xba,0xc7,0x91,0x04
713 st.b %r21, [*%r17 sub %r18]
714 ! CHECK: 0xba,0xc7,0x92,0x04
715 st.b %r21, [*%r17 subb %r18]
716 ! CHECK: 0xba,0xc7,0x93,0x04
717 st.b %r21, [*%r17 and %r18]
718 ! CHECK: 0xba,0xc7,0x94,0x04
719 st.b %r21, [*%r17 or %r18]
720 ! CHECK: 0xba,0xc7,0x95,0x04
721 st.b %r21, [*%r17 xor %r18]
722 ! CHECK: 0xba,0xc7,0x96,0x04
723 st.b %r21, [*%r17 sha %r18]
724 ! CHECK: 0xba,0xc7,0x97,0xc4
725 st %r21, [%r17* add %r18]
726 ! CHECK: 0xba,0xc5,0x90,0x02
727 st %r21, [%r17* addc %r18]
728 ! CHECK: 0xba,0xc5,0x91,0x02
729 st %r21, [%r17* sub %r18]
730 ! CHECK: 0xba,0xc5,0x92,0x02
731 st %r21, [%r17* subb %r18]
732 ! CHECK: 0xba,0xc5,0x93,0x02
733 st %r21, [%r17* and %r18]
734 ! CHECK: 0xba,0xc5,0x94,0x02
735 st %r21, [%r17* or %r18]
736 ! CHECK: 0xba,0xc5,0x95,0x02
737 st %r21, [%r17* xor %r18]
738 ! CHECK: 0xba,0xc5,0x96,0x02
739 st %r21, [%r17* sh %r18]
740 ! CHECK: 0xba,0xc5,0x97,0x82
741 st %r21, [%r17* sha %r18]
742 ! CHECK: 0xba,0xc5,0x97,0xc2
743 st.h %r21, [%r17* add %r18]
744 ! CHECK: 0xba,0xc5,0x90,0x00
745 st.h %r21, [%r17* addc %r18]
746 ! CHECK: 0xba,0xc5,0x91,0x00
747 st.h %r21, [%r17* sub %r18]
748 ! CHECK: 0xba,0xc5,0x92,0x00
749 st.h %r21, [%r17* subb %r18]
750 ! CHECK: 0xba,0xc5,0x93,0x00
751 st.h %r21, [%r17* and %r18]
752 ! CHECK: 0xba,0xc5,0x94,0x00
753 st.h %r21, [%r17* or %r18]
754 ! CHECK: 0xba,0xc5,0x95,0x00
755 st.h %r21, [%r17* xor %r18]
756 ! CHECK: 0xba,0xc5,0x96,0x00
757 st.h %r21, [%r17* sh %r18]
758 ! CHECK: 0xba,0xc5,0x97,0x80
759 st.h %r21, [%r17* sha %r18]
760 ! CHECK: 0xba,0xc5,0x97,0xc0
761 st.b %r21, [%r17* add %r18]
762 ! CHECK: 0xba,0xc5,0x90,0x04
763 st.b %r21, [%r17* addc %r18]
764 ! CHECK: 0xba,0xc5,0x91,0x04
765 st.b %r21, [%r17* sub %r18]
766 ! CHECK: 0xba,0xc5,0x92,0x04
767 st.b %r21, [%r17* subb %r18]
768 ! CHECK: 0xba,0xc5,0x93,0x04
769 st.b %r21, [%r17* and %r18]
770 ! CHECK: 0xba,0xc5,0x94,0x04
771 st.b %r21, [%r17* or %r18]
772 ! CHECK: 0xba,0xc5,0x95,0x04
773 st.b %r21, [%r17* xor %r18]
774 ! CHECK: 0xba,0xc5,0x96,0x04
775 st.b %r21, [%r17* sh %r18]
776 ! CHECK: 0xba,0xc5,0x97,0x84
777 st.b %r21, [%r17* sha %r18]
778 ! CHECK: 0xba,0xc5,0x97,0xc4
779 st %r21, [0x12344]
780 ! CHECK: 0xfa,0x85,0x23,0x44
781 sub %r17, 0, %r21
782 ! CHECK: 0x2a,0xc4,0x00,0x00
783 sub %r17, 0x00001234, %r21
784 ! CHECK: 0x2a,0xc4,0x12,0x34
785 sub %r17, 0x12340000, %r21
786 ! CHECK: 0x2a,0xc5,0x12,0x34
787 sub.f %r17, 0, %r21
788 ! CHECK: 0x2a,0xc6,0x00,0x00
789 sub.f %r17, 0x00001234, %r21
790 ! CHECK: 0x2a,0xc6,0x12,0x34
791 sub.f %r17, 0x12340000, %r21
792 ! CHECK: 0x2a,0xc7,0x12,0x34
793 sub %r17, %r18, %r21
794 ! CHECK: 0xca,0xc4,0x92,0x00
795 sub.f %r17, %r18, %r21
796 ! CHECK: 0xca,0xc6,0x92,0x00
797 subb %r17, 0, %r21
798 ! CHECK: 0x3a,0xc4,0x00,0x00
799 subb %r17, 0x00001234, %r21
800 ! CHECK: 0x3a,0xc4,0x12,0x34
801 subb %r17, 0x12340000, %r21
802 ! CHECK: 0x3a,0xc5,0x12,0x34
803 subb.f %r17, 0, %r21
804 ! CHECK: 0x3a,0xc6,0x00,0x00
805 subb.f %r17, 0x00001234, %r21
806 ! CHECK: 0x3a,0xc6,0x12,0x34
807 subb.f %r17, 0x12340000, %r21
808 ! CHECK: 0x3a,0xc7,0x12,0x34
809 subb %r17, %r18, %r21
810 ! CHECK: 0xca,0xc4,0x93,0x00
811 subb.f %r17, %r18, %r21
812 ! CHECK: 0xca,0xc6,0x93,0x00
813 xor %r17, 0, %r21
814 ! CHECK: 0x6a,0xc4,0x00,0x00
815 xor %r17, 0x00001234, %r21
816 ! CHECK: 0x6a,0xc4,0x12,0x34
817 xor %r17, 0x12340000, %r21
818 ! CHECK: 0x6a,0xc5,0x12,0x34
819 xor.f %r17, 0, %r21
820 ! CHECK: 0x6a,0xc6,0x00,0x00
821 xor.f %r17, 0x00001234, %r21
822 ! CHECK: 0x6a,0xc6,0x12,0x34
823 xor.f %r17, 0x12340000, %r21
824 ! CHECK: 0x6a,0xc7,0x12,0x34
825 xor %r17, %r18, %r21
826 ! CHECK: 0xca,0xc4,0x96,0x00
827 xor.f %r17, %r18, %r21
828 ! CHECK: 0xca,0xc6,0x96,0x00
829 sel.ne %r9, %r15, %r12
830 ! CHECK: 0xc6,0x24,0x7f,0x03
831 sel.gt %r9, %r15, %r12
832 ! CHECK: 0xc6,0x24,0x7f,0x07
833 xor.lt %r17, %r18, %r21
834 ! CHECK: 0xca,0xc5,0x96,0x06
835 xor.f.eq %r17, %r18, %r21
836 ! CHECK: 0xca,0xc7,0x96,0x03
837 add.ge %r13, %r14, %r18
838 ! CHECK: 0xc9,0x34,0x70,0x06
839 spl %r19
840 ! CHECK: 0xea,0x4c,0x00,0x02
841 bt 0x1234
842 ! CHECK: 0xe0,0x00,0x12,0x34
843 sel.t %r9, %r15, %r12
844 ! CHECK: 0xc6,0x24,0x7f,0x00
845 sel.f %r9, %r15, %r12
846 ! CHECK: 0xc6,0x25,0x7f,0x00
847 sel.ugt %r9, %r15, %r12
848 ! CHECK: 0xc6,0x24,0x7f,0x01
849 sel.ule %r9, %r15, %r12
850 ! CHECK: 0xc6,0x25,0x7f,0x01
851 sel.ult %r9, %r15, %r12
852 ! CHECK: 0xc6,0x24,0x7f,0x02
853 sel.uge %r9, %r15, %r12
854 ! CHECK: 0xc6,0x25,0x7f,0x02
855 sel.ne %r9, %r15, %r12
856 ! CHECK: 0xc6,0x24,0x7f,0x03
857 sel.eq %r9, %r15, %r12
858 ! CHECK: 0xc6,0x25,0x7f,0x03
859 sel.vc %r9, %r15, %r12
860 ! CHECK: 0xc6,0x24,0x7f,0x04
861 sel.vs %r9, %r15, %r12
862 ! CHECK: 0xc6,0x25,0x7f,0x04
863 sel.pl %r9, %r15, %r12
864 ! CHECK: 0xc6,0x24,0x7f,0x05
865 sel.mi %r9, %r15, %r12
866 ! CHECK: 0xc6,0x25,0x7f,0x05
867 sel.ge %r9, %r15, %r12
868 ! CHECK: 0xc6,0x24,0x7f,0x06
869 sel.lt %r9, %r15, %r12
870 ! CHECK: 0xc6,0x25,0x7f,0x06
871 sel.gt %r9, %r15, %r12
872 ! CHECK: 0xc6,0x24,0x7f,0x07
873 sel.le %r9, %r15, %r12
874 ! CHECK: 0xc6,0x25,0x7f,0x07
875 trailz %r15, %r12
876 ! CHECK: 0xd6,0x3c,0x00,0x03