xref: /llvm-project/llvm/test/tools/llvm-mca/ARM/m55-int.s (revision a10ce71ac4ef55cc9a80c0aece501a09bd39cc9a)
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2# RUN: llvm-mca -mtriple=thumbv8.1-m.main-none-none-eabi -mcpu=cortex-m55 -mattr=+mve.fp -instruction-tables < %s | FileCheck %s
3
4adc r0, r1, #0
5adcs r0, r1, #0
6adcs r0, r1
7adc.w r0, r1, r2
8adcs.w r0, r1, r2
9adc.w r0, r1, r2, LSL #1
10adcs.w r0, r1, r2, LSL #1
11add r0, sp, #1
12add sp, #1
13add.w r0, sp, #1
14adds.w r0, sp, #1
15addw r0, sp, #1
16add r0, sp, r0
17add sp, r1
18add.w r0, sp, r1
19adds.w r0, sp, r1
20add.w r0, sp, r1, LSL #1
21adds.w r0, sp, r1, LSL #1
22adds r0, r1, #1
23adds r0, #42
24add.w r0, r1, #1
25adds.w r0, r1, #1
26addw r0, r1, #1
27adds r0, r1, r2
28add r0, r1
29add.w r0, r1, r2
30adds.w r0, r1, r2
31add.w r0, r1, r2, LSL #1
32adds.w r0, r1, r2, LSL #1
33adr r0, #-6
34adr r8, #-6
35adr.w r0, #-6
36and r0, r1, #1
37ands r0, r1, #1
38ands r1, r0
39and.w r0, r1, r2
40ands.w r0, r1, r2
41and.w r0, r1, r2, LSL #1
42ands.w r0, r1, r2, LSL #1
43asrs r0, r1, #1
44asr.w r0, r1, #1
45asrs.w r0, r1, #1
46asrs r0, r1
47asr.w r0, r1, r2
48asrs.w r0, r1, r2
49asrl r0, r1, #1
50asrl r0, r1, r2
51bfc r0, #1, #2
52bfi r0, r1, #1, #2
53bic r0, r1, #1
54bics r0, r1, #1
55bics r0, r1
56bic.w r0, r1, r2
57bics.w r0, r1, r2
58bic.w r0, r1, r2, LSL #1
59bics.w r0, r1, r2, LSL #1
60bkpt #1
61clrex
62clrm {r1, r2}
63clz r0, r1
64cmn r0, #1
65cmn r0, r1
66cmn.w r0, r1
67cmn.w r0, r1, LSL #1
68cmp r0, #1
69cmp.w r0, #1
70cmp r0, r1
71cmp r0, r10
72cmp.w r0, r1
73cmp.w r0, r1, LSL #1
74#cpsdb 1
75#cpsie if
76csel r1, r2, r3, eq
77csinc r1, r2, r3, eq
78csinv r1, r2, r3, eq
79csneg r1, r2, r3, eq
80#dbg #1
81dmb
82dsb
83eor r0, r1, #1
84eors r0, r1, #1
85eors r0, r1
86eor.w r0, r1, r2
87eors.w r0, r1, r2
88eor.w r0, r1, r2, LSL #1
89eors.w r0, r1, r2, LSL #1
90isb
91lda r0, [r1]
92ldab r0, [r1]
93ldaex r0, [r1]
94ldaexb r0, [r1]
95ldaexh r0, [r1]
96ldah r0, [r1]
97ldm r0!, {r1}
98ldm r0, {r1}
99ldm.w r0, {r1}
100ldm.w r0!, {r1}
101ldmdb r0, {r1}
102ldmdb r0!, {r1}
103ldr r0, [r1, #4]
104ldr r0, [sp, #4]
105ldr.w r0, [r1, #4]
106ldr r0, [r1, #-1]
107ldr r0, [r1], #1
108ldr r0, [r1, #1]!
109ldr r0, #4
110ldr.w r0, #4
111ldr r0, next
112ldr.w r0, next
113ldr r0, [r1, r2]
114ldr.w r0, [r1, r2]
115ldr.w r0, [r1, r2, LSL #1]
116ldrb r0, [r1, #1]
117ldrb.w r0, [r1, #1]
118ldrb r0, [r1, #-1]
119ldrb r0, [r1], #1
120ldrb r0, [r1, #1]!
121ldrb r0, #4
122ldrb r0, next
123ldrb r0, [r1, r2]
124ldrb.w r0, [r1, r2]
125ldrb.w r0, [r1, r2, LSL #1]
126ldrbt r0, [r1, #1]
127ldrd r0, r2, [r1]
128ldrd r0, r2, [r1, #-4]
129ldrd r0, r2, [r1], #4
130ldrd r0, r2, [r1, #4]!
131ldrd r0, r2, next
132ldrex r0, [r1]
133ldrex r0, [r1, #4]
134ldrexb r0, [r1]
135ldrexh r0, [r1]
136ldrh r0, [r1, #2]
137ldrh.w r0, [r1, #1]
138ldrh r0, [r1, #-1]
139ldrh r0, [r1], #1
140ldrh r0, [r1, #1]!
141ldrh r0, #4
142ldrh r0, next
143ldrh r0, [r1, r2]
144ldrh.w r0, [r1, r2]
145ldrh.w r0, [r1, r2, LSL #1]
146ldrht r0, [r1, #1]
147ldrsb r0, [r1, #1]
148ldrsb r0, [r1, #-1]
149ldrsb r0, [r1], #1
150ldrsb r0, [r1, #1]!
151ldrsb r0, #4
152ldrsb r0, next
153ldrsb r0, [r1, r2]
154ldrsb.w r0, [r1, r2]
155ldrsb.w r0, [r1, r2, LSL #1]
156ldrsbt r0, [r1, #1]
157ldrsh r0, [r1, #2]
158ldrsh r0, [r1, #-1]
159ldrsh r0, [r1], #1
160ldrsh r0, [r1, #1]!
161ldrsh r0, #4
162ldrsh r0, next
163ldrsh r0, [r1, r2]
164ldrsh.w r0, [r1, r2]
165ldrsh.w r0, [r1, r2, LSL #1]
166ldrsht r0, [r1, #1]
167ldrt r0, [r1, #1]
168lsls r0, r1, #1
169lsl.w r0, r1, #1
170lsls.w r0, r1, #1
171lsls r0, r1
172lsl.w r0, r1, r2
173lsls.w r0, r1, r2
174lsll r0, r1, #2
175lsll r0, r1, r2
176lsrs r0, r1, #1
177lsr.w r0, r1, #1
178lsrs.w r0, r1, #1
179lsrs r0, r1
180lsr.w r0, r1, r2
181lsrs.w r0, r1, r2
182lsrl r0, r1, #2
183mla r0, r1, r2, r3
184mls r0, r1, r2, r3
185movs r0, #1
186mov.w r0, #1
187movs.w r0, #1
188movw r0, #1
189mov r0, r1
190#movs r0, r1
191mov.w r0, r1
192movs.w r0, r1
193movt r0, #1
194mrs r0, apsr
195msr apsr, r0
196muls r1, r2, r1
197mul r0, r1, r2
198mvn r0, #1
199mvns r0, #1
200mvns r0, r1
201mvn.w r0, r1
202mvns.w r0, r1
203mvn.w r0, r1, LSL #1
204mvns.w r0, r1, LSL #1
205nop
206orn r0, r1, #1
207orns r0, r1, #1
208orn r0, r1, r2
209orns r0, r1, r2
210orn r0, r1, r2, LSL #1
211orns r0, r1, r2, LSL #1
212orr r0, r1, #1
213orrs r0, r1, #1
214orrs r0, r1
215orr r0, r1, r2
216orrs r0, r1, r2
217orr r0, r1, r2, LSL #1
218orrs r0, r1, r2, LSL #1
219pkhbt r0, r1, r2
220pkhbt r0, r1, r2, LSL #1
221pkhtb r0, r1, r2
222pkhtb r0, r1, r2, ASR #1
223pop { r0 }
224pop.w { r0, r1 }
225pop.w { r0 }
226pssbb
227push { r0 }
228push.w { r0, r1 }
229push.w { r0 }
230qadd r0, r1, r2
231qadd16 r0, r1, r2
232qadd8 r0, r1, r2
233qasx r0, r1, r2
234qdadd r0, r1, r2
235qdsub r0, r1, r2
236qsax r0, r1, r2
237qsub r0, r1, r2
238qsub16 r0, r1, r2
239qsub8 r0, r1, r2
240rbit r0, r1
241rev r0, r1
242rev.w r0, r1
243rev16 r0, r1
244rev16.w r0, r1
245revsh r0, r1
246revsh.w r0, r1
247ror r0, r1, #1
248rors r0, r1, #1
249rors r0, r1
250ror.w r0, r1, r2
251rors.w r0, r1, r2
252rrx r0, r1
253rrxs r0, r1
254rsbs r0, r1, #0
255rsb.w r0, r1, #1
256rsbs.w r0, r1, #1
257rsb r0, r1, r2
258rsbs r0, r1, r2
259rsb r0, r1, r2, LSL #1
260rsbs r0, r1, r2, LSL #1
261sadd16 r0, r1, r2
262sadd8 r0, r1, r2
263sasx r0, r1, r2
264sbc r0, r1, #1
265sbcs r0, r1, #1
266sbcs r0, r1
267sbc r0, r1, r2
268sbcs r0, r1, r2
269sbc r0, r1, r2, LSL #1
270sbcs r0, r1, r2, LSL #1
271sbfx r0, r1, #1, #2
272sdiv r0, r1, r2
273sel r0, r1, r2
274sev
275#sg
276shadd16 r0, r1, r2
277shadd8 r0, r1, r2
278shasx r0, r1, r2
279shsax r0, r1, r2
280shsub16 r0, r1, r2
281shsub8 r0, r1, r2
282smlabb r0, r1, r2, r3
283smlabt r0, r1, r2, r3
284smlatb r0, r1, r2, r3
285smlatt r0, r1, r2, r3
286smlad r0, r1, r2, r3
287smladx r0, r1, r2, r3
288smlal r0, r1, r2, r3
289smlalbb r0, r1, r2, r3
290smlalbt r0, r1, r2, r3
291smlaltb r0, r1, r2, r3
292smlaltt r0, r1, r2, r3
293smlald r0, r1, r2, r3
294smlaldx r0, r1, r2, r3
295smlawb r0, r1, r2, r3
296smlawt r0, r1, r2, r3
297smlsd r0, r1, r2, r3
298smlsdx r0, r1, r2, r3
299smlsld r0, r1, r2, r3
300smlsldx r0, r1, r2, r3
301smmla r0, r1, r2, r3
302smmlar r0, r1, r2, r3
303smmls r0, r1, r2, r3
304smmlsr r0, r1, r2, r3
305smmul r0, r1, r2
306smmulr r0, r1, r2
307smuad r0, r1, r2
308smuadx r0, r1, r2
309smulbb r0, r1, r2
310smulbt r0, r1, r2
311smultb r0, r1, r2
312smultt r0, r1, r2
313smull r0, r1, r2, r3
314smulwb r0, r1, r2
315smulwt r0, r1, r2
316smusd r0, r1, r2
317smusdx r0, r1, r2
318sqrshr r0, r1
319sqrshrl r0, r1, #48, r2
320sqshl r0, #7
321sqshll r0, r1, #7
322srshr r0, #7
323srshrl r0, r1, #7
324ssat r0, #1, r2
325ssat r0, #1, r2, LSL #1
326ssat16 r0, #1, r1
327ssax r0, r1, r2
328ssbb
329ssub16 r0, r1, r2
330ssub8 r0, r1, r2
331stl r0, [r1]
332stlb r0, [r1]
333stlex r0, r1, [r2]
334stlexb r0, r1, [r2]
335stlexh r0, r1, [r2]
336stlh r0, [r1]
337stm r0!, { r1 }
338stm.w r0, { r1 }
339stm.w r0!, { r1 }
340stmdb r0, { r1 }
341stmdb r0!, { r1 }
342str r0, [ r1 ]
343str r0, [ r1, #4 ]
344str r0, [ sp, #4 ]
345str.w r0, [ r1, #1 ]
346str r0, [ r1, #-1 ]
347str r0, [ r1 ], #1
348#str r0, [ r1, #1 ]!
349str r0, [ r1, r2 ]
350str.w r0, [ r1, r2 ]
351str.w r0, [ r1, r2, LSL #1 ]
352strb r0, [ r1 ]
353strb r0, [ r1, #1 ]
354strb.w r0, [ r1, #1 ]
355strb r0, [ r1, #-1 ]
356strb r0, [ r1 ], #1
357strb r0, [ r1, #1 ]!
358strb r0, [ r1, r2 ]
359strb.w r0, [ r1, r2 ]
360strb.w r0, [ r1, r2, LSL #1 ]
361strbt r0, [ r1, #1 ]
362strd r0, r1, [ r2, #4 ]
363strd r0, r1, [ r2 ], #4
364strd r0, r1, [ r2, #4 ]!
365strex r0, r1, [ r2 ]
366strex r0, r1, [ r2, #4 ]
367strexb r0, r1, [ r2 ]
368strexh r0, r1, [ r2 ]
369strh r0, [ r1 ]
370strh r0, [ r1, #2 ]
371strh.w r0, [ r1, #2 ]
372strh r0, [ r1, #-1 ]
373strh r0, [ r1 ], #1
374strh r0, [ r1, #1 ]!
375strh r0, [ r1, r2 ]
376strh.w r0, [ r1, r2 ]
377strh.w r0, [ r1, r2, LSL #1 ]
378strht r0, [r1, #1 ]
379strt r0, [r1, #1 ]
380sub sp, sp, #4
381sub.w r0, sp, #1
382subs.w r0, sp, #1
383subw r0, sp, #1
384sub r0, sp, r1
385subs r0, sp, r1
386sub r0, sp, r1, LSL #1
387subs r0, sp, r1, LSL #1
388subs r0, r1, #1
389subs r0, #1
390sub.w r0, r1, #1
391subs.w r0, r1, #1
392subw r0, r1, #1
393subs r0, r1, r2
394sub.w r0, r1, r2
395subs.w r0, r1, r2
396sub.w r0, r1, r2, LSL #1
397subs.w r0, r1, r2, LSL #1
398#svc #1		; treated as a call
399sxtab r0, r1, r2
400sxtab r0, r1, r2, ROR #8
401sxtab16 r0, r1, r2
402sxtab16 r0, r1, r2, ROR #8
403sxtah r0, r1, r2
404sxtah r0, r1, r2, ROR #8
405sxtb r0, r1
406sxtb.w r0, r1
407sxtb.w r0, r1, ROR #8
408sxtb16 r0, r1
409sxtb16 r0, r1, ROR #8
410sxth r0, r1
411sxth.w r0, r1
412sxth.w r0, r1, ROR #8
413tbb [r0, r1]
414tbh [r0, r1, LSL #1]
415teq r0, #1
416teq r0, r1
417teq r0, r1, LSL #1
418tst r0, #1
419tst r0, r1
420tst.w r0, r1
421tst.w r0, r1, LSL #1
422#tt r0, r1
423#ttt r0, r1
424#tta r0, r1
425#ttat r0, r1
426uadd16 r0, r1, r2
427uadd8 r0, r1, r2
428uasx r0, r1, r2
429ubfx r0, r1, #1, #2
430#udf #1
431udiv r0, r1, r2
432uhadd16 r0, r1, r2
433uhadd8 r0, r1, r2
434uhasx r0, r1, r2
435uhsax r0, r1, r2
436uhsub16 r0, r1, r2
437uhsub8 r0, r1, r2
438umaal r0, r1, r2, r3
439umlal r0, r1, r2, r3
440umull r0, r1, r2, r3
441uqadd16 r0, r1, r2
442uqadd8 r0, r1, r2
443uqasx r0, r1, r2
444uqrshl r0, r1
445uqrshll r0, r1, #48, r2
446uqsax r0, r1, r2
447uqshl r0, #1
448uqshll r0, r1, #1
449uqsub16 r0, r1, r2
450uqsub8 r0, r1, r2
451urshr r0, #1
452urshrl r0, r1, #1
453usad8 r0, r1, r2
454usada8 r0, r1, r2, r3
455usat r0, #1, r1
456usat r0, #1, r1, LSL #1
457usat16 r0, #1, r1
458usax r0, r1, r2
459usub16 r0, r1, r2
460usub8 r0, r1, r2
461uxtab r0, r1, r2
462uxtab r0, r1, r2, ROR #8
463uxtab16 r0, r1, r2
464uxtab16 r0, r1, r2, ROR #8
465uxtah r0, r1, r2
466uxtah r0, r1, r2, ROR #8
467uxtb r0, r1
468uxtb.w r0, r1
469uxtb.w r0, r1, ROR #8
470uxtb16 r0, r1
471uxtb16 r0, r1, ROR #8
472uxth r0, r1
473uxth.w r0, r1
474uxth.w r0, r1, ROR #8
475wfe
476wfi
477yield
478
479# CHECK:      Instruction Info:
480# CHECK-NEXT: [1]: #uOps
481# CHECK-NEXT: [2]: Latency
482# CHECK-NEXT: [3]: RThroughput
483# CHECK-NEXT: [4]: MayLoad
484# CHECK-NEXT: [5]: MayStore
485# CHECK-NEXT: [6]: HasSideEffects (U)
486
487# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
488# CHECK-NEXT:  1      1     1.00                        adc	r0, r1, #0
489# CHECK-NEXT:  1      1     1.00                        adcs	r0, r1, #0
490# CHECK-NEXT:  1      1     1.00                  U     adcs	r0, r1
491# CHECK-NEXT:  1      1     1.00                        adc.w	r0, r1, r2
492# CHECK-NEXT:  1      1     1.00                        adcs.w	r0, r1, r2
493# CHECK-NEXT:  1      2     1.00                        adc.w	r0, r1, r2, lsl #1
494# CHECK-NEXT:  1      2     1.00                        adcs.w	r0, r1, r2, lsl #1
495# CHECK-NEXT:  1      1     0.50                        add.w	r0, sp, #1
496# CHECK-NEXT:  1      1     1.00                  U     add.w	sp, sp, #1
497# CHECK-NEXT:  1      1     0.50                        add.w	r0, sp, #1
498# CHECK-NEXT:  1      1     0.50                        adds.w	r0, sp, #1
499# CHECK-NEXT:  1      1     1.00                        addw	r0, sp, #1
500# CHECK-NEXT:  1      1     1.00                  U     add	r0, sp, r0
501# CHECK-NEXT:  1      1     1.00                  U     add	sp, r1
502# CHECK-NEXT:  1      1     1.00                        add.w	r0, sp, r1
503# CHECK-NEXT:  1      1     1.00                        adds.w	r0, sp, r1
504# CHECK-NEXT:  1      2     1.00                        add.w	r0, sp, r1, lsl #1
505# CHECK-NEXT:  1      2     1.00                        adds.w	r0, sp, r1, lsl #1
506# CHECK-NEXT:  1      1     0.50                        adds	r0, r1, #1
507# CHECK-NEXT:  1      1     0.50                        adds	r0, #42
508# CHECK-NEXT:  1      1     0.50                        add.w	r0, r1, #1
509# CHECK-NEXT:  1      1     0.50                        adds.w	r0, r1, #1
510# CHECK-NEXT:  1      1     1.00                        addw	r0, r1, #1
511# CHECK-NEXT:  1      1     1.00                        adds	r0, r1, r2
512# CHECK-NEXT:  1      1     1.00                        add	r0, r1
513# CHECK-NEXT:  1      1     1.00                        add.w	r0, r1, r2
514# CHECK-NEXT:  1      1     1.00                        adds.w	r0, r1, r2
515# CHECK-NEXT:  1      2     1.00                        add.w	r0, r1, r2, lsl #1
516# CHECK-NEXT:  1      2     1.00                        adds.w	r0, r1, r2, lsl #1
517# CHECK-NEXT:  1      1     1.00                  U     adr.w	r0, #-6
518# CHECK-NEXT:  1      1     1.00                  U     adr.w	r8, #-6
519# CHECK-NEXT:  1      1     1.00                  U     adr.w	r0, #-6
520# CHECK-NEXT:  1      1     1.00                        and	r0, r1, #1
521# CHECK-NEXT:  1      1     1.00                        ands	r0, r1, #1
522# CHECK-NEXT:  1      1     1.00                        ands	r1, r0
523# CHECK-NEXT:  1      1     1.00                        and.w	r0, r1, r2
524# CHECK-NEXT:  1      1     1.00                        ands.w	r0, r1, r2
525# CHECK-NEXT:  1      2     1.00                        and.w	r0, r1, r2, lsl #1
526# CHECK-NEXT:  1      2     1.00                        ands.w	r0, r1, r2, lsl #1
527# CHECK-NEXT:  1      1     1.00                        asrs	r0, r1, #1
528# CHECK-NEXT:  1      1     1.00                        asr.w	r0, r1, #1
529# CHECK-NEXT:  1      1     1.00                        asrs.w	r0, r1, #1
530# CHECK-NEXT:  1      1     1.00                        asrs	r0, r1
531# CHECK-NEXT:  1      1     1.00                        asr.w	r0, r1, r2
532# CHECK-NEXT:  1      1     1.00                        asrs.w	r0, r1, r2
533# CHECK-NEXT:  1      2     1.00                        asrl	r0, r1, #1
534# CHECK-NEXT:  1      2     1.00                        asrl	r0, r1, r2
535# CHECK-NEXT:  1      1     1.00                        bfc	r0, #1, #2
536# CHECK-NEXT:  1      1     1.00                        bfi	r0, r1, #1, #2
537# CHECK-NEXT:  1      1     1.00                        bic	r0, r1, #1
538# CHECK-NEXT:  1      1     1.00                        bics	r0, r1, #1
539# CHECK-NEXT:  1      1     1.00                        bics	r0, r1
540# CHECK-NEXT:  1      1     1.00                        bic.w	r0, r1, r2
541# CHECK-NEXT:  1      1     1.00                        bics.w	r0, r1, r2
542# CHECK-NEXT:  1      2     1.00                        bic.w	r0, r1, r2, lsl #1
543# CHECK-NEXT:  1      2     1.00                        bics.w	r0, r1, r2, lsl #1
544# CHECK-NEXT:  1      1     1.00                  U     bkpt	#1
545# CHECK-NEXT:  1      2     1.00    *      *      U     clrex
546# CHECK-NEXT:  1      2     1.00                  U     clrm	{r1, r2}
547# CHECK-NEXT:  1      1     1.00                        clz	r0, r1
548# CHECK-NEXT:  1      1     1.00                        cmn.w	r0, #1
549# CHECK-NEXT:  1      1     1.00                        cmn	r0, r1
550# CHECK-NEXT:  1      1     1.00                        cmn.w	r0, r1
551# CHECK-NEXT:  1      2     1.00                        cmn.w	r0, r1, lsl #1
552# CHECK-NEXT:  1      1     1.00                        cmp	r0, #1
553# CHECK-NEXT:  1      1     1.00                        cmp.w	r0, #1
554# CHECK-NEXT:  1      1     1.00                        cmp	r0, r1
555# CHECK-NEXT:  1      1     1.00                  U     cmp	r0, r10
556# CHECK-NEXT:  1      1     1.00                        cmp.w	r0, r1
557# CHECK-NEXT:  1      2     1.00                        cmp.w	r0, r1, lsl #1
558# CHECK-NEXT:  1      1     1.00                        csel	r1, r2, r3, eq
559# CHECK-NEXT:  1      1     1.00                        csinc	r1, r2, r3, eq
560# CHECK-NEXT:  1      1     1.00                        csinv	r1, r2, r3, eq
561# CHECK-NEXT:  1      1     1.00                        csneg	r1, r2, r3, eq
562# CHECK-NEXT:  1      2     1.00    *      *      U     dmb	sy
563# CHECK-NEXT:  1      2     1.00    *      *      U     dsb	sy
564# CHECK-NEXT:  1      1     1.00                        eor	r0, r1, #1
565# CHECK-NEXT:  1      1     1.00                        eors	r0, r1, #1
566# CHECK-NEXT:  1      1     1.00                        eors	r0, r1
567# CHECK-NEXT:  1      1     1.00                        eor.w	r0, r1, r2
568# CHECK-NEXT:  1      1     1.00                        eors.w	r0, r1, r2
569# CHECK-NEXT:  1      2     1.00                        eor.w	r0, r1, r2, lsl #1
570# CHECK-NEXT:  1      2     1.00                        eors.w	r0, r1, r2, lsl #1
571# CHECK-NEXT:  1      2     1.00    *      *      U     isb	sy
572# CHECK-NEXT:  1      2     1.00    *                   lda	r0, [r1]
573# CHECK-NEXT:  1      2     1.00    *                   ldab	r0, [r1]
574# CHECK-NEXT:  1      2     1.00    *      *      U     ldaex	r0, [r1]
575# CHECK-NEXT:  1      2     1.00    *      *      U     ldaexb	r0, [r1]
576# CHECK-NEXT:  1      2     1.00    *      *      U     ldaexh	r0, [r1]
577# CHECK-NEXT:  1      2     1.00    *                   ldah	r0, [r1]
578# CHECK-NEXT:  1      2     1.00    *                   ldm	r0!, {r1}
579# CHECK-NEXT:  1      2     1.00    *                   ldm.w	r0, {r1}
580# CHECK-NEXT:  1      2     1.00    *                   ldm.w	r0, {r1}
581# CHECK-NEXT:  1      2     1.00    *                   ldr	r1, [r0], #4
582# CHECK-NEXT:  1      2     1.00    *                   ldmdb	r0, {r1}
583# CHECK-NEXT:  1      2     1.00    *                   ldmdb	r0!, {r1}
584# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [r1, #4]
585# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [sp, #4]
586# CHECK-NEXT:  1      2     1.00    *                   ldr.w	r0, [r1, #4]
587# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [r1, #-1]
588# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [r1], #1
589# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [r1, #1]!
590# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [pc, #4]
591# CHECK-NEXT:  1      2     1.00    *                   ldr.w	r0, [pc, #4]
592# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, next
593# CHECK-NEXT:  1      2     1.00    *                   ldr.w	r0, next
594# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [r1, r2]
595# CHECK-NEXT:  1      2     1.00    *                   ldr.w	r0, [r1, r2]
596# CHECK-NEXT:  1      2     1.00    *                   ldr.w	r0, [r1, r2, lsl #1]
597# CHECK-NEXT:  1      2     1.00    *                   ldrb	r0, [r1, #1]
598# CHECK-NEXT:  1      2     1.00    *                   ldrb.w	r0, [r1, #1]
599# CHECK-NEXT:  1      2     1.00    *                   ldrb	r0, [r1, #-1]
600# CHECK-NEXT:  1      2     1.00    *                   ldrb	r0, [r1], #1
601# CHECK-NEXT:  1      2     1.00    *                   ldrb	r0, [r1, #1]!
602# CHECK-NEXT:  1      2     1.00    *                   ldrb.w	r0, [pc, #4]
603# CHECK-NEXT:  1      2     1.00    *                   ldrb.w	r0, next
604# CHECK-NEXT:  1      2     1.00    *                   ldrb	r0, [r1, r2]
605# CHECK-NEXT:  1      2     1.00    *                   ldrb.w	r0, [r1, r2]
606# CHECK-NEXT:  1      2     1.00    *                   ldrb.w	r0, [r1, r2, lsl #1]
607# CHECK-NEXT:  1      2     1.00                  U     ldrbt	r0, [r1, #1]
608# CHECK-NEXT:  1      2     1.00    *                   ldrd	r0, r2, [r1]
609# CHECK-NEXT:  1      2     1.00    *                   ldrd	r0, r2, [r1, #-4]
610# CHECK-NEXT:  1      2     1.00    *                   ldrd	r0, r2, [r1], #4
611# CHECK-NEXT:  1      2     1.00    *                   ldrd	r0, r2, [r1, #4]!
612# CHECK-NEXT:  1      2     1.00    *                   ldrd	r0, r2, next
613# CHECK-NEXT:  1      2     1.00    *      *      U     ldrex	r0, [r1]
614# CHECK-NEXT:  1      2     1.00    *      *      U     ldrex	r0, [r1, #4]
615# CHECK-NEXT:  1      2     1.00    *      *      U     ldrexb	r0, [r1]
616# CHECK-NEXT:  1      2     1.00    *      *      U     ldrexh	r0, [r1]
617# CHECK-NEXT:  1      2     1.00    *                   ldrh	r0, [r1, #2]
618# CHECK-NEXT:  1      2     1.00    *                   ldrh.w	r0, [r1, #1]
619# CHECK-NEXT:  1      2     1.00    *                   ldrh	r0, [r1, #-1]
620# CHECK-NEXT:  1      2     1.00    *                   ldrh	r0, [r1], #1
621# CHECK-NEXT:  1      2     1.00    *                   ldrh	r0, [r1, #1]!
622# CHECK-NEXT:  1      2     1.00    *                   ldrh.w	r0, [pc, #4]
623# CHECK-NEXT:  1      2     1.00    *                   ldrh.w	r0, next
624# CHECK-NEXT:  1      2     1.00    *                   ldrh	r0, [r1, r2]
625# CHECK-NEXT:  1      2     1.00    *                   ldrh.w	r0, [r1, r2]
626# CHECK-NEXT:  1      2     1.00    *                   ldrh.w	r0, [r1, r2, lsl #1]
627# CHECK-NEXT:  1      2     1.00                  U     ldrht	r0, [r1, #1]
628# CHECK-NEXT:  1      2     1.00    *                   ldrsb.w	r0, [r1, #1]
629# CHECK-NEXT:  1      2     1.00    *                   ldrsb	r0, [r1, #-1]
630# CHECK-NEXT:  1      2     1.00    *                   ldrsb	r0, [r1], #1
631# CHECK-NEXT:  1      2     1.00    *                   ldrsb	r0, [r1, #1]!
632# CHECK-NEXT:  1      2     1.00    *                   ldrsb.w	r0, [pc, #4]
633# CHECK-NEXT:  1      2     1.00    *                   ldrsb.w	r0, next
634# CHECK-NEXT:  1      2     1.00    *                   ldrsb	r0, [r1, r2]
635# CHECK-NEXT:  1      2     1.00    *                   ldrsb.w	r0, [r1, r2]
636# CHECK-NEXT:  1      2     1.00    *                   ldrsb.w	r0, [r1, r2, lsl #1]
637# CHECK-NEXT:  1      2     1.00                  U     ldrsbt	r0, [r1, #1]
638# CHECK-NEXT:  1      2     1.00    *                   ldrsh.w	r0, [r1, #2]
639# CHECK-NEXT:  1      2     1.00    *                   ldrsh	r0, [r1, #-1]
640# CHECK-NEXT:  1      2     1.00    *                   ldrsh	r0, [r1], #1
641# CHECK-NEXT:  1      2     1.00    *                   ldrsh	r0, [r1, #1]!
642# CHECK-NEXT:  1      2     1.00    *                   ldrsh.w	r0, [pc, #4]
643# CHECK-NEXT:  1      2     1.00    *                   ldrsh.w	r0, next
644# CHECK-NEXT:  1      2     1.00    *                   ldrsh	r0, [r1, r2]
645# CHECK-NEXT:  1      2     1.00    *                   ldrsh.w	r0, [r1, r2]
646# CHECK-NEXT:  1      2     1.00    *                   ldrsh.w	r0, [r1, r2, lsl #1]
647# CHECK-NEXT:  1      2     1.00                  U     ldrsht	r0, [r1, #1]
648# CHECK-NEXT:  1      2     1.00                  U     ldrt	r0, [r1, #1]
649# CHECK-NEXT:  1      1     1.00                        lsls	r0, r1, #1
650# CHECK-NEXT:  1      1     1.00                        lsl.w	r0, r1, #1
651# CHECK-NEXT:  1      1     1.00                        lsls.w	r0, r1, #1
652# CHECK-NEXT:  1      1     1.00                        lsls	r0, r1
653# CHECK-NEXT:  1      1     1.00                        lsl.w	r0, r1, r2
654# CHECK-NEXT:  1      1     1.00                        lsls.w	r0, r1, r2
655# CHECK-NEXT:  1      2     1.00                        lsll	r0, r1, #2
656# CHECK-NEXT:  1      2     1.00                        lsll	r0, r1, r2
657# CHECK-NEXT:  1      1     1.00                        lsrs	r0, r1, #1
658# CHECK-NEXT:  1      1     1.00                        lsr.w	r0, r1, #1
659# CHECK-NEXT:  1      1     1.00                        lsrs.w	r0, r1, #1
660# CHECK-NEXT:  1      1     1.00                        lsrs	r0, r1
661# CHECK-NEXT:  1      1     1.00                        lsr.w	r0, r1, r2
662# CHECK-NEXT:  1      1     1.00                        lsrs.w	r0, r1, r2
663# CHECK-NEXT:  1      2     1.00                        lsrl	r0, r1, #2
664# CHECK-NEXT:  1      2     1.00                        mla	r0, r1, r2, r3
665# CHECK-NEXT:  1      2     1.00                        mls	r0, r1, r2, r3
666# CHECK-NEXT:  1      1     0.50                        movs	r0, #1
667# CHECK-NEXT:  1      1     0.50                        mov.w	r0, #1
668# CHECK-NEXT:  1      1     0.50                        movs.w	r0, #1
669# CHECK-NEXT:  1      1     0.50                        movw	r0, #1
670# CHECK-NEXT:  1      1     0.50                        mov	r0, r1
671# CHECK-NEXT:  1      1     0.50                        mov.w	r0, r1
672# CHECK-NEXT:  1      1     0.50                        movs.w	r0, r1
673# CHECK-NEXT:  1      1     1.00                        movt	r0, #1
674# CHECK-NEXT:  1      1     1.00                  U     mrs	r0, apsr
675# CHECK-NEXT:  1      1     1.00                  U     msr	apsr_nzcvq, r0
676# CHECK-NEXT:  1      1     1.00                        muls	r1, r2, r1
677# CHECK-NEXT:  1      2     1.00                        mul	r0, r1, r2
678# CHECK-NEXT:  1      1     1.00                        mvn	r0, #1
679# CHECK-NEXT:  1      1     1.00                        mvns	r0, #1
680# CHECK-NEXT:  1      1     1.00                        mvns	r0, r1
681# CHECK-NEXT:  1      1     1.00                        mvn.w	r0, r1
682# CHECK-NEXT:  1      1     1.00                        mvns.w	r0, r1
683# CHECK-NEXT:  1      1     1.00                        mvn.w	r0, r1, lsl #1
684# CHECK-NEXT:  1      1     1.00                        mvns.w	r0, r1, lsl #1
685# CHECK-NEXT:  1      1     1.00    *      *      U     nop
686# CHECK-NEXT:  1      1     1.00                        orn	r0, r1, #1
687# CHECK-NEXT:  1      1     1.00                        orns	r0, r1, #1
688# CHECK-NEXT:  1      1     1.00                        orn	r0, r1, r2
689# CHECK-NEXT:  1      1     1.00                        orns	r0, r1, r2
690# CHECK-NEXT:  1      2     1.00                        orn	r0, r1, r2, lsl #1
691# CHECK-NEXT:  1      2     1.00                        orns	r0, r1, r2, lsl #1
692# CHECK-NEXT:  1      1     1.00                        orr	r0, r1, #1
693# CHECK-NEXT:  1      1     1.00                        orrs	r0, r1, #1
694# CHECK-NEXT:  1      1     1.00                        orrs	r0, r1
695# CHECK-NEXT:  1      1     1.00                        orr.w	r0, r1, r2
696# CHECK-NEXT:  1      1     1.00                        orrs.w	r0, r1, r2
697# CHECK-NEXT:  1      2     1.00                        orr.w	r0, r1, r2, lsl #1
698# CHECK-NEXT:  1      2     1.00                        orrs.w	r0, r1, r2, lsl #1
699# CHECK-NEXT:  1      2     1.00                        pkhbt	r0, r1, r2
700# CHECK-NEXT:  1      2     1.00                        pkhbt	r0, r1, r2, lsl #1
701# CHECK-NEXT:  1      2     1.00                        pkhbt	r0, r2, r1
702# CHECK-NEXT:  1      2     1.00                        pkhtb	r0, r1, r2, asr #1
703# CHECK-NEXT:  1      1     1.00    *             U     pop	{r0}
704# CHECK-NEXT:  1      2     1.00    *                   pop.w	{r0, r1}
705# CHECK-NEXT:  1      2     1.00    *                   ldr	r0, [sp], #4
706# CHECK-NEXT:  1      2     1.00    *      *      U     pssbb
707# CHECK-NEXT:  1      1     1.00           *      U     push	{r0}
708# CHECK-NEXT:  1      1     1.00           *            push.w	{r0, r1}
709# CHECK-NEXT:  1      1     1.00           *            str	r0, [sp, #-4]!
710# CHECK-NEXT:  1      2     1.00                        qadd	r0, r1, r2
711# CHECK-NEXT:  1      2     1.00                        qadd16	r0, r1, r2
712# CHECK-NEXT:  1      2     1.00                        qadd8	r0, r1, r2
713# CHECK-NEXT:  1      2     1.00                        qasx	r0, r1, r2
714# CHECK-NEXT:  1      2     1.00                        qdadd	r0, r1, r2
715# CHECK-NEXT:  1      2     1.00                        qdsub	r0, r1, r2
716# CHECK-NEXT:  1      2     1.00                        qsax	r0, r1, r2
717# CHECK-NEXT:  1      2     1.00                        qsub	r0, r1, r2
718# CHECK-NEXT:  1      2     1.00                        qsub16	r0, r1, r2
719# CHECK-NEXT:  1      2     1.00                        qsub8	r0, r1, r2
720# CHECK-NEXT:  1      1     1.00                        rbit	r0, r1
721# CHECK-NEXT:  1      1     1.00                        rev	r0, r1
722# CHECK-NEXT:  1      1     1.00                        rev.w	r0, r1
723# CHECK-NEXT:  1      1     1.00                        rev16	r0, r1
724# CHECK-NEXT:  1      1     1.00                        rev16.w	r0, r1
725# CHECK-NEXT:  1      1     1.00                        revsh	r0, r1
726# CHECK-NEXT:  1      1     1.00                        revsh.w	r0, r1
727# CHECK-NEXT:  1      1     1.00                        ror.w	r0, r1, #1
728# CHECK-NEXT:  1      1     1.00                        rors.w	r0, r1, #1
729# CHECK-NEXT:  1      1     1.00                        rors	r0, r1
730# CHECK-NEXT:  1      1     1.00                        ror.w	r0, r1, r2
731# CHECK-NEXT:  1      1     1.00                        rors.w	r0, r1, r2
732# CHECK-NEXT:  1      1     1.00                        rrx	r0, r1
733# CHECK-NEXT:  1      1     1.00                        rrxs	r0, r1
734# CHECK-NEXT:  1      1     1.00                        rsbs	r0, r1, #0
735# CHECK-NEXT:  1      1     1.00                        rsb.w	r0, r1, #1
736# CHECK-NEXT:  1      1     1.00                        rsbs.w	r0, r1, #1
737# CHECK-NEXT:  1      1     1.00                  U     rsb	r0, r1, r2
738# CHECK-NEXT:  1      1     1.00                  U     rsbs	r0, r1, r2
739# CHECK-NEXT:  1      2     1.00                        rsb	r0, r1, r2, lsl #1
740# CHECK-NEXT:  1      2     1.00                        rsbs	r0, r1, r2, lsl #1
741# CHECK-NEXT:  1      2     1.00    *      *      U     sadd16	r0, r1, r2
742# CHECK-NEXT:  1      2     1.00    *      *      U     sadd8	r0, r1, r2
743# CHECK-NEXT:  1      2     1.00    *      *      U     sasx	r0, r1, r2
744# CHECK-NEXT:  1      1     1.00                        sbc	r0, r1, #1
745# CHECK-NEXT:  1      1     1.00                        sbcs	r0, r1, #1
746# CHECK-NEXT:  1      1     1.00                  U     sbcs	r0, r1
747# CHECK-NEXT:  1      1     1.00                        sbc.w	r0, r1, r2
748# CHECK-NEXT:  1      1     1.00                        sbcs.w	r0, r1, r2
749# CHECK-NEXT:  1      2     1.00                        sbc.w	r0, r1, r2, lsl #1
750# CHECK-NEXT:  1      2     1.00                        sbcs.w	r0, r1, r2, lsl #1
751# CHECK-NEXT:  1      2     1.00                        sbfx	r0, r1, #1, #2
752# CHECK-NEXT:  1      2     1.00                        sdiv	r0, r1, r2
753# CHECK-NEXT:  1      1     1.00    *                   sel	r0, r1, r2
754# CHECK-NEXT:  1      1     1.00    *      *      U     sev
755# CHECK-NEXT:  1      2     1.00                        shadd16	r0, r1, r2
756# CHECK-NEXT:  1      2     1.00                        shadd8	r0, r1, r2
757# CHECK-NEXT:  1      2     1.00                        shasx	r0, r1, r2
758# CHECK-NEXT:  1      2     1.00                        shsax	r0, r1, r2
759# CHECK-NEXT:  1      2     1.00                        shsub16	r0, r1, r2
760# CHECK-NEXT:  1      2     1.00                        shsub8	r0, r1, r2
761# CHECK-NEXT:  1      2     1.00                        smlabb	r0, r1, r2, r3
762# CHECK-NEXT:  1      2     1.00                        smlabt	r0, r1, r2, r3
763# CHECK-NEXT:  1      2     1.00                        smlatb	r0, r1, r2, r3
764# CHECK-NEXT:  1      2     1.00                        smlatt	r0, r1, r2, r3
765# CHECK-NEXT:  1      2     1.00                        smlad	r0, r1, r2, r3
766# CHECK-NEXT:  1      2     1.00                        smladx	r0, r1, r2, r3
767# CHECK-NEXT:  1      2     1.00                        smlal	r0, r1, r2, r3
768# CHECK-NEXT:  1      2     1.00                        smlalbb	r0, r1, r2, r3
769# CHECK-NEXT:  1      2     1.00                        smlalbt	r0, r1, r2, r3
770# CHECK-NEXT:  1      2     1.00                        smlaltb	r0, r1, r2, r3
771# CHECK-NEXT:  1      2     1.00                        smlaltt	r0, r1, r2, r3
772# CHECK-NEXT:  1      2     1.00                        smlald	r0, r1, r2, r3
773# CHECK-NEXT:  1      2     1.00                        smlaldx	r0, r1, r2, r3
774# CHECK-NEXT:  1      2     1.00                        smlawb	r0, r1, r2, r3
775# CHECK-NEXT:  1      2     1.00                        smlawt	r0, r1, r2, r3
776# CHECK-NEXT:  1      2     1.00                        smlsd	r0, r1, r2, r3
777# CHECK-NEXT:  1      2     1.00                        smlsdx	r0, r1, r2, r3
778# CHECK-NEXT:  1      2     1.00                        smlsld	r0, r1, r2, r3
779# CHECK-NEXT:  1      2     1.00                        smlsldx	r0, r1, r2, r3
780# CHECK-NEXT:  1      2     1.00                        smmla	r0, r1, r2, r3
781# CHECK-NEXT:  1      2     1.00                        smmlar	r0, r1, r2, r3
782# CHECK-NEXT:  1      2     1.00                  U     smmls	r0, r1, r2, r3
783# CHECK-NEXT:  1      2     1.00                        smmlsr	r0, r1, r2, r3
784# CHECK-NEXT:  1      2     1.00                        smmul	r0, r1, r2
785# CHECK-NEXT:  1      2     1.00                        smmulr	r0, r1, r2
786# CHECK-NEXT:  1      2     1.00                        smuad	r0, r1, r2
787# CHECK-NEXT:  1      2     1.00                        smuadx	r0, r1, r2
788# CHECK-NEXT:  1      2     1.00                        smulbb	r0, r1, r2
789# CHECK-NEXT:  1      2     1.00                        smulbt	r0, r1, r2
790# CHECK-NEXT:  1      2     1.00                        smultb	r0, r1, r2
791# CHECK-NEXT:  1      2     1.00                        smultt	r0, r1, r2
792# CHECK-NEXT:  2      2     1.00                        smull	r0, r1, r2, r3
793# CHECK-NEXT:  1      2     1.00                        smulwb	r0, r1, r2
794# CHECK-NEXT:  1      2     1.00                        smulwt	r0, r1, r2
795# CHECK-NEXT:  1      2     1.00                        smusd	r0, r1, r2
796# CHECK-NEXT:  1      2     1.00                        smusdx	r0, r1, r2
797# CHECK-NEXT:  1      2     1.00                        sqrshr	r0, r1
798# CHECK-NEXT:  1      2     1.00                        sqrshrl	r0, r1, #48, r2
799# CHECK-NEXT:  1      2     1.00                        sqshl	r0, #7
800# CHECK-NEXT:  1      2     1.00                        sqshll	r0, r1, #7
801# CHECK-NEXT:  1      2     1.00                        srshr	r0, #7
802# CHECK-NEXT:  1      2     1.00                        srshrl	r0, r1, #7
803# CHECK-NEXT:  1      2     1.00                        ssat	r0, #1, r2
804# CHECK-NEXT:  1      2     1.00                        ssat	r0, #1, r2, lsl #1
805# CHECK-NEXT:  1      2     1.00                        ssat16	r0, #1, r1
806# CHECK-NEXT:  1      2     1.00    *      *      U     ssax	r0, r1, r2
807# CHECK-NEXT:  1      2     1.00    *      *      U     ssbb
808# CHECK-NEXT:  1      2     1.00    *      *      U     ssub16	r0, r1, r2
809# CHECK-NEXT:  1      2     1.00    *      *      U     ssub8	r0, r1, r2
810# CHECK-NEXT:  1      2     1.00           *            stl	r0, [r1]
811# CHECK-NEXT:  1      2     1.00           *            stlb	r0, [r1]
812# CHECK-NEXT:  1      2     1.00    *      *      U     stlex	r0, r1, [r2]
813# CHECK-NEXT:  1      2     1.00    *      *      U     stlexb	r0, r1, [r2]
814# CHECK-NEXT:  1      2     1.00    *      *      U     stlexh	r0, r1, [r2]
815# CHECK-NEXT:  1      2     1.00           *            stlh	r0, [r1]
816# CHECK-NEXT:  1      1     1.00           *            stm	r0!, {r1}
817# CHECK-NEXT:  1      1     1.00           *            stm.w	r0, {r1}
818# CHECK-NEXT:  1      1     1.00           *            stm.w	r0!, {r1}
819# CHECK-NEXT:  1      1     1.00           *            stmdb	r0, {r1}
820# CHECK-NEXT:  1      1     1.00           *            str	r1, [r0, #-4]!
821# CHECK-NEXT:  1      1     1.00           *            str	r0, [r1]
822# CHECK-NEXT:  1      1     1.00           *            str	r0, [r1, #4]
823# CHECK-NEXT:  1      1     1.00           *            str	r0, [sp, #4]
824# CHECK-NEXT:  1      1     1.00           *            str.w	r0, [r1, #1]
825# CHECK-NEXT:  1      1     1.00           *            str	r0, [r1, #-1]
826# CHECK-NEXT:  1      1     1.00           *            str	r0, [r1], #1
827# CHECK-NEXT:  1      1     1.00           *            str	r0, [r1, r2]
828# CHECK-NEXT:  1      1     1.00           *            str.w	r0, [r1, r2]
829# CHECK-NEXT:  1      1     1.00           *            str.w	r0, [r1, r2, lsl #1]
830# CHECK-NEXT:  1      1     1.00           *            strb	r0, [r1]
831# CHECK-NEXT:  1      1     1.00           *            strb	r0, [r1, #1]
832# CHECK-NEXT:  1      1     1.00           *            strb.w	r0, [r1, #1]
833# CHECK-NEXT:  1      1     1.00           *            strb	r0, [r1, #-1]
834# CHECK-NEXT:  1      1     1.00           *            strb	r0, [r1], #1
835# CHECK-NEXT:  1      1     1.00           *            strb	r0, [r1, #1]!
836# CHECK-NEXT:  1      1     1.00           *            strb	r0, [r1, r2]
837# CHECK-NEXT:  1      1     1.00           *            strb.w	r0, [r1, r2]
838# CHECK-NEXT:  1      1     1.00           *            strb.w	r0, [r1, r2, lsl #1]
839# CHECK-NEXT:  1      1     1.00           *            strbt	r0, [r1, #1]
840# CHECK-NEXT:  1      2     1.00           *            strd	r0, r1, [r2, #4]
841# CHECK-NEXT:  1      2     1.00           *            strd	r0, r1, [r2], #4
842# CHECK-NEXT:  1      2     1.00           *            strd	r0, r1, [r2, #4]!
843# CHECK-NEXT:  1      1     1.00    *      *      U     strex	r0, r1, [r2]
844# CHECK-NEXT:  1      1     1.00    *      *      U     strex	r0, r1, [r2, #4]
845# CHECK-NEXT:  1      1     1.00    *      *      U     strexb	r0, r1, [r2]
846# CHECK-NEXT:  1      1     1.00    *      *      U     strexh	r0, r1, [r2]
847# CHECK-NEXT:  1      1     1.00           *            strh	r0, [r1]
848# CHECK-NEXT:  1      1     1.00           *            strh	r0, [r1, #2]
849# CHECK-NEXT:  1      1     1.00           *            strh.w	r0, [r1, #2]
850# CHECK-NEXT:  1      1     1.00           *            strh	r0, [r1, #-1]
851# CHECK-NEXT:  1      1     1.00           *            strh	r0, [r1], #1
852# CHECK-NEXT:  1      1     1.00           *            strh	r0, [r1, #1]!
853# CHECK-NEXT:  1      1     1.00           *            strh	r0, [r1, r2]
854# CHECK-NEXT:  1      1     1.00           *            strh.w	r0, [r1, r2]
855# CHECK-NEXT:  1      1     1.00           *            strh.w	r0, [r1, r2, lsl #1]
856# CHECK-NEXT:  1      1     1.00           *            strht	r0, [r1, #1]
857# CHECK-NEXT:  1      1     1.00           *            strt	r0, [r1, #1]
858# CHECK-NEXT:  1      1     1.00                  U     sub	sp, #4
859# CHECK-NEXT:  1      1     0.50                        sub.w	r0, sp, #1
860# CHECK-NEXT:  1      1     0.50                        subs.w	r0, sp, #1
861# CHECK-NEXT:  1      1     1.00                        subw	r0, sp, #1
862# CHECK-NEXT:  1      1     1.00                        sub.w	r0, sp, r1
863# CHECK-NEXT:  1      1     1.00                        subs.w	r0, sp, r1
864# CHECK-NEXT:  1      2     1.00                        sub.w	r0, sp, r1, lsl #1
865# CHECK-NEXT:  1      2     1.00                        subs.w	r0, sp, r1, lsl #1
866# CHECK-NEXT:  1      1     0.50                        subs	r0, r1, #1
867# CHECK-NEXT:  1      1     0.50                        subs	r0, #1
868# CHECK-NEXT:  1      1     0.50                        sub.w	r0, r1, #1
869# CHECK-NEXT:  1      1     0.50                        subs.w	r0, r1, #1
870# CHECK-NEXT:  1      1     1.00                        subw	r0, r1, #1
871# CHECK-NEXT:  1      1     1.00                        subs	r0, r1, r2
872# CHECK-NEXT:  1      1     1.00                        sub.w	r0, r1, r2
873# CHECK-NEXT:  1      1     1.00                        subs.w	r0, r1, r2
874# CHECK-NEXT:  1      2     1.00                        sub.w	r0, r1, r2, lsl #1
875# CHECK-NEXT:  1      2     1.00                        subs.w	r0, r1, r2, lsl #1
876# CHECK-NEXT:  1      1     1.00                        sxtab	r0, r1, r2
877# CHECK-NEXT:  1      1     1.00                        sxtab	r0, r1, r2, ror #8
878# CHECK-NEXT:  1      1     1.00                        sxtab16	r0, r1, r2
879# CHECK-NEXT:  1      1     1.00                        sxtab16	r0, r1, r2, ror #8
880# CHECK-NEXT:  1      1     1.00                        sxtah	r0, r1, r2
881# CHECK-NEXT:  1      1     1.00                        sxtah	r0, r1, r2, ror #8
882# CHECK-NEXT:  1      1     0.50                        sxtb	r0, r1
883# CHECK-NEXT:  1      1     0.50                        sxtb.w	r0, r1
884# CHECK-NEXT:  1      1     0.50                        sxtb.w	r0, r1, ror #8
885# CHECK-NEXT:  1      1     1.00                        sxtb16	r0, r1
886# CHECK-NEXT:  1      1     1.00                        sxtb16	r0, r1, ror #8
887# CHECK-NEXT:  1      1     0.50                        sxth	r0, r1
888# CHECK-NEXT:  1      1     0.50                        sxth.w	r0, r1
889# CHECK-NEXT:  1      1     0.50                        sxth.w	r0, r1, ror #8
890# CHECK-NEXT:  1      1     1.00                  U     tbb	[r0, r1]
891# CHECK-NEXT:  1      1     1.00                  U     tbh	[r0, r1, lsl #1]
892# CHECK-NEXT:  1      1     1.00                        teq.w	r0, #1
893# CHECK-NEXT:  1      1     1.00                        teq.w	r0, r1
894# CHECK-NEXT:  1      2     1.00                        teq.w	r0, r1, lsl #1
895# CHECK-NEXT:  1      1     1.00                        tst.w	r0, #1
896# CHECK-NEXT:  1      1     1.00                        tst	r0, r1
897# CHECK-NEXT:  1      1     1.00                        tst.w	r0, r1
898# CHECK-NEXT:  1      2     1.00                        tst.w	r0, r1, lsl #1
899# CHECK-NEXT:  1      2     1.00    *      *      U     uadd16	r0, r1, r2
900# CHECK-NEXT:  1      2     1.00    *      *      U     uadd8	r0, r1, r2
901# CHECK-NEXT:  1      2     1.00    *      *      U     uasx	r0, r1, r2
902# CHECK-NEXT:  1      2     1.00                        ubfx	r0, r1, #1, #2
903# CHECK-NEXT:  1      2     1.00                        udiv	r0, r1, r2
904# CHECK-NEXT:  1      2     1.00                        uhadd16	r0, r1, r2
905# CHECK-NEXT:  1      2     1.00                        uhadd8	r0, r1, r2
906# CHECK-NEXT:  1      2     1.00                        uhasx	r0, r1, r2
907# CHECK-NEXT:  1      2     1.00                        uhsax	r0, r1, r2
908# CHECK-NEXT:  1      2     1.00                        uhsub16	r0, r1, r2
909# CHECK-NEXT:  1      2     1.00                        uhsub8	r0, r1, r2
910# CHECK-NEXT:  2      2     1.00                        umaal	r0, r1, r2, r3
911# CHECK-NEXT:  2      2     1.00                        umlal	r0, r1, r2, r3
912# CHECK-NEXT:  2      2     1.00                        umull	r0, r1, r2, r3
913# CHECK-NEXT:  1      2     1.00                        uqadd16	r0, r1, r2
914# CHECK-NEXT:  1      2     1.00                        uqadd8	r0, r1, r2
915# CHECK-NEXT:  1      2     1.00                        uqasx	r0, r1, r2
916# CHECK-NEXT:  1      2     1.00                        uqrshl	r0, r1
917# CHECK-NEXT:  1      2     1.00                        uqrshll	r0, r1, #48, r2
918# CHECK-NEXT:  1      2     1.00                        uqsax	r0, r1, r2
919# CHECK-NEXT:  1      2     1.00                        uqshl	r0, #1
920# CHECK-NEXT:  1      2     1.00                        uqshll	r0, r1, #1
921# CHECK-NEXT:  1      2     1.00                        uqsub16	r0, r1, r2
922# CHECK-NEXT:  1      2     1.00                        uqsub8	r0, r1, r2
923# CHECK-NEXT:  1      2     1.00                        urshr	r0, #1
924# CHECK-NEXT:  1      2     1.00                        urshrl	r0, r1, #1
925# CHECK-NEXT:  1      2     1.00                        usad8	r0, r1, r2
926# CHECK-NEXT:  1      2     1.00                        usada8	r0, r1, r2, r3
927# CHECK-NEXT:  1      2     1.00                        usat	r0, #1, r1
928# CHECK-NEXT:  1      2     1.00                        usat	r0, #1, r1, lsl #1
929# CHECK-NEXT:  1      2     1.00                        usat16	r0, #1, r1
930# CHECK-NEXT:  1      2     1.00    *      *      U     usax	r0, r1, r2
931# CHECK-NEXT:  1      2     1.00    *      *      U     usub16	r0, r1, r2
932# CHECK-NEXT:  1      2     1.00    *      *      U     usub8	r0, r1, r2
933# CHECK-NEXT:  1      2     1.00                        uxtab	r0, r1, r2
934# CHECK-NEXT:  1      2     1.00                        uxtab	r0, r1, r2, ror #8
935# CHECK-NEXT:  1      2     1.00                        uxtab16	r0, r1, r2
936# CHECK-NEXT:  1      2     1.00                        uxtab16	r0, r1, r2, ror #8
937# CHECK-NEXT:  1      2     1.00                        uxtah	r0, r1, r2
938# CHECK-NEXT:  1      2     1.00                        uxtah	r0, r1, r2, ror #8
939# CHECK-NEXT:  1      1     0.50                        uxtb	r0, r1
940# CHECK-NEXT:  1      1     0.50                        uxtb.w	r0, r1
941# CHECK-NEXT:  1      1     0.50                        uxtb.w	r0, r1, ror #8
942# CHECK-NEXT:  1      1     1.00                        uxtb16	r0, r1
943# CHECK-NEXT:  1      1     1.00                        uxtb16	r0, r1, ror #8
944# CHECK-NEXT:  1      1     0.50                        uxth	r0, r1
945# CHECK-NEXT:  1      1     0.50                        uxth.w	r0, r1
946# CHECK-NEXT:  1      1     0.50                        uxth.w	r0, r1, ror #8
947# CHECK-NEXT:  1      1     1.00    *      *      U     wfe
948# CHECK-NEXT:  1      1     1.00    *      *      U     wfi
949# CHECK-NEXT:  1      1     1.00    *      *      U     yield
950
951# CHECK:      Resources:
952# CHECK-NEXT: [0]   - M55UnitALU
953# CHECK-NEXT: [1]   - M55UnitLoadStore
954# CHECK-NEXT: [2]   - M55UnitVecALU
955# CHECK-NEXT: [3]   - M55UnitVecFPALU
956# CHECK-NEXT: [4]   - M55UnitVecSys
957
958# CHECK:      Resource pressure per iteration:
959# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]
960# CHECK-NEXT: 430.00  -      -      -      -
961
962# CHECK:      Resource pressure by instruction:
963# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    Instructions:
964# CHECK-NEXT: 1.00    -      -      -      -     adc	r0, r1, #0
965# CHECK-NEXT: 1.00    -      -      -      -     adcs	r0, r1, #0
966# CHECK-NEXT: 1.00    -      -      -      -     adcs	r0, r1
967# CHECK-NEXT: 1.00    -      -      -      -     adc.w	r0, r1, r2
968# CHECK-NEXT: 1.00    -      -      -      -     adcs.w	r0, r1, r2
969# CHECK-NEXT: 1.00    -      -      -      -     adc.w	r0, r1, r2, lsl #1
970# CHECK-NEXT: 1.00    -      -      -      -     adcs.w	r0, r1, r2, lsl #1
971# CHECK-NEXT:  -      -      -      -      -     add.w	r0, sp, #1
972# CHECK-NEXT: 1.00    -      -      -      -     add.w	sp, sp, #1
973# CHECK-NEXT:  -      -      -      -      -     add.w	r0, sp, #1
974# CHECK-NEXT:  -      -      -      -      -     adds.w	r0, sp, #1
975# CHECK-NEXT: 1.00    -      -      -      -     addw	r0, sp, #1
976# CHECK-NEXT: 1.00    -      -      -      -     add	r0, sp, r0
977# CHECK-NEXT: 1.00    -      -      -      -     add	sp, r1
978# CHECK-NEXT: 1.00    -      -      -      -     add.w	r0, sp, r1
979# CHECK-NEXT: 1.00    -      -      -      -     adds.w	r0, sp, r1
980# CHECK-NEXT: 1.00    -      -      -      -     add.w	r0, sp, r1, lsl #1
981# CHECK-NEXT: 1.00    -      -      -      -     adds.w	r0, sp, r1, lsl #1
982# CHECK-NEXT:  -      -      -      -      -     adds	r0, r1, #1
983# CHECK-NEXT:  -      -      -      -      -     adds	r0, #42
984# CHECK-NEXT:  -      -      -      -      -     add.w	r0, r1, #1
985# CHECK-NEXT:  -      -      -      -      -     adds.w	r0, r1, #1
986# CHECK-NEXT: 1.00    -      -      -      -     addw	r0, r1, #1
987# CHECK-NEXT: 1.00    -      -      -      -     adds	r0, r1, r2
988# CHECK-NEXT: 1.00    -      -      -      -     add	r0, r1
989# CHECK-NEXT: 1.00    -      -      -      -     add.w	r0, r1, r2
990# CHECK-NEXT: 1.00    -      -      -      -     adds.w	r0, r1, r2
991# CHECK-NEXT: 1.00    -      -      -      -     add.w	r0, r1, r2, lsl #1
992# CHECK-NEXT: 1.00    -      -      -      -     adds.w	r0, r1, r2, lsl #1
993# CHECK-NEXT: 1.00    -      -      -      -     adr.w	r0, #-6
994# CHECK-NEXT: 1.00    -      -      -      -     adr.w	r8, #-6
995# CHECK-NEXT: 1.00    -      -      -      -     adr.w	r0, #-6
996# CHECK-NEXT: 1.00    -      -      -      -     and	r0, r1, #1
997# CHECK-NEXT: 1.00    -      -      -      -     ands	r0, r1, #1
998# CHECK-NEXT: 1.00    -      -      -      -     ands	r1, r0
999# CHECK-NEXT: 1.00    -      -      -      -     and.w	r0, r1, r2
1000# CHECK-NEXT: 1.00    -      -      -      -     ands.w	r0, r1, r2
1001# CHECK-NEXT: 1.00    -      -      -      -     and.w	r0, r1, r2, lsl #1
1002# CHECK-NEXT: 1.00    -      -      -      -     ands.w	r0, r1, r2, lsl #1
1003# CHECK-NEXT: 1.00    -      -      -      -     asrs	r0, r1, #1
1004# CHECK-NEXT: 1.00    -      -      -      -     asr.w	r0, r1, #1
1005# CHECK-NEXT: 1.00    -      -      -      -     asrs.w	r0, r1, #1
1006# CHECK-NEXT: 1.00    -      -      -      -     asrs	r0, r1
1007# CHECK-NEXT: 1.00    -      -      -      -     asr.w	r0, r1, r2
1008# CHECK-NEXT: 1.00    -      -      -      -     asrs.w	r0, r1, r2
1009# CHECK-NEXT: 1.00    -      -      -      -     asrl	r0, r1, #1
1010# CHECK-NEXT: 1.00    -      -      -      -     asrl	r0, r1, r2
1011# CHECK-NEXT: 1.00    -      -      -      -     bfc	r0, #1, #2
1012# CHECK-NEXT: 1.00    -      -      -      -     bfi	r0, r1, #1, #2
1013# CHECK-NEXT: 1.00    -      -      -      -     bic	r0, r1, #1
1014# CHECK-NEXT: 1.00    -      -      -      -     bics	r0, r1, #1
1015# CHECK-NEXT: 1.00    -      -      -      -     bics	r0, r1
1016# CHECK-NEXT: 1.00    -      -      -      -     bic.w	r0, r1, r2
1017# CHECK-NEXT: 1.00    -      -      -      -     bics.w	r0, r1, r2
1018# CHECK-NEXT: 1.00    -      -      -      -     bic.w	r0, r1, r2, lsl #1
1019# CHECK-NEXT: 1.00    -      -      -      -     bics.w	r0, r1, r2, lsl #1
1020# CHECK-NEXT: 1.00    -      -      -      -     bkpt	#1
1021# CHECK-NEXT: 1.00    -      -      -      -     clrex
1022# CHECK-NEXT: 1.00    -      -      -      -     clrm	{r1, r2}
1023# CHECK-NEXT: 1.00    -      -      -      -     clz	r0, r1
1024# CHECK-NEXT: 1.00    -      -      -      -     cmn.w	r0, #1
1025# CHECK-NEXT: 1.00    -      -      -      -     cmn	r0, r1
1026# CHECK-NEXT: 1.00    -      -      -      -     cmn.w	r0, r1
1027# CHECK-NEXT: 1.00    -      -      -      -     cmn.w	r0, r1, lsl #1
1028# CHECK-NEXT: 1.00    -      -      -      -     cmp	r0, #1
1029# CHECK-NEXT: 1.00    -      -      -      -     cmp.w	r0, #1
1030# CHECK-NEXT: 1.00    -      -      -      -     cmp	r0, r1
1031# CHECK-NEXT: 1.00    -      -      -      -     cmp	r0, r10
1032# CHECK-NEXT: 1.00    -      -      -      -     cmp.w	r0, r1
1033# CHECK-NEXT: 1.00    -      -      -      -     cmp.w	r0, r1, lsl #1
1034# CHECK-NEXT: 1.00    -      -      -      -     csel	r1, r2, r3, eq
1035# CHECK-NEXT: 1.00    -      -      -      -     csinc	r1, r2, r3, eq
1036# CHECK-NEXT: 1.00    -      -      -      -     csinv	r1, r2, r3, eq
1037# CHECK-NEXT: 1.00    -      -      -      -     csneg	r1, r2, r3, eq
1038# CHECK-NEXT: 1.00    -      -      -      -     dmb	sy
1039# CHECK-NEXT: 1.00    -      -      -      -     dsb	sy
1040# CHECK-NEXT: 1.00    -      -      -      -     eor	r0, r1, #1
1041# CHECK-NEXT: 1.00    -      -      -      -     eors	r0, r1, #1
1042# CHECK-NEXT: 1.00    -      -      -      -     eors	r0, r1
1043# CHECK-NEXT: 1.00    -      -      -      -     eor.w	r0, r1, r2
1044# CHECK-NEXT: 1.00    -      -      -      -     eors.w	r0, r1, r2
1045# CHECK-NEXT: 1.00    -      -      -      -     eor.w	r0, r1, r2, lsl #1
1046# CHECK-NEXT: 1.00    -      -      -      -     eors.w	r0, r1, r2, lsl #1
1047# CHECK-NEXT: 1.00    -      -      -      -     isb	sy
1048# CHECK-NEXT: 1.00    -      -      -      -     lda	r0, [r1]
1049# CHECK-NEXT: 1.00    -      -      -      -     ldab	r0, [r1]
1050# CHECK-NEXT: 1.00    -      -      -      -     ldaex	r0, [r1]
1051# CHECK-NEXT: 1.00    -      -      -      -     ldaexb	r0, [r1]
1052# CHECK-NEXT: 1.00    -      -      -      -     ldaexh	r0, [r1]
1053# CHECK-NEXT: 1.00    -      -      -      -     ldah	r0, [r1]
1054# CHECK-NEXT: 1.00    -      -      -      -     ldm	r0!, {r1}
1055# CHECK-NEXT: 1.00    -      -      -      -     ldm.w	r0, {r1}
1056# CHECK-NEXT: 1.00    -      -      -      -     ldm.w	r0, {r1}
1057# CHECK-NEXT: 1.00    -      -      -      -     ldr	r1, [r0], #4
1058# CHECK-NEXT: 1.00    -      -      -      -     ldmdb	r0, {r1}
1059# CHECK-NEXT: 1.00    -      -      -      -     ldmdb	r0!, {r1}
1060# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [r1, #4]
1061# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [sp, #4]
1062# CHECK-NEXT: 1.00    -      -      -      -     ldr.w	r0, [r1, #4]
1063# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [r1, #-1]
1064# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [r1], #1
1065# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [r1, #1]!
1066# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [pc, #4]
1067# CHECK-NEXT: 1.00    -      -      -      -     ldr.w	r0, [pc, #4]
1068# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, next
1069# CHECK-NEXT: 1.00    -      -      -      -     ldr.w	r0, next
1070# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [r1, r2]
1071# CHECK-NEXT: 1.00    -      -      -      -     ldr.w	r0, [r1, r2]
1072# CHECK-NEXT: 1.00    -      -      -      -     ldr.w	r0, [r1, r2, lsl #1]
1073# CHECK-NEXT: 1.00    -      -      -      -     ldrb	r0, [r1, #1]
1074# CHECK-NEXT: 1.00    -      -      -      -     ldrb.w	r0, [r1, #1]
1075# CHECK-NEXT: 1.00    -      -      -      -     ldrb	r0, [r1, #-1]
1076# CHECK-NEXT: 1.00    -      -      -      -     ldrb	r0, [r1], #1
1077# CHECK-NEXT: 1.00    -      -      -      -     ldrb	r0, [r1, #1]!
1078# CHECK-NEXT: 1.00    -      -      -      -     ldrb.w	r0, [pc, #4]
1079# CHECK-NEXT: 1.00    -      -      -      -     ldrb.w	r0, next
1080# CHECK-NEXT: 1.00    -      -      -      -     ldrb	r0, [r1, r2]
1081# CHECK-NEXT: 1.00    -      -      -      -     ldrb.w	r0, [r1, r2]
1082# CHECK-NEXT: 1.00    -      -      -      -     ldrb.w	r0, [r1, r2, lsl #1]
1083# CHECK-NEXT: 1.00    -      -      -      -     ldrbt	r0, [r1, #1]
1084# CHECK-NEXT: 1.00    -      -      -      -     ldrd	r0, r2, [r1]
1085# CHECK-NEXT: 1.00    -      -      -      -     ldrd	r0, r2, [r1, #-4]
1086# CHECK-NEXT: 1.00    -      -      -      -     ldrd	r0, r2, [r1], #4
1087# CHECK-NEXT: 1.00    -      -      -      -     ldrd	r0, r2, [r1, #4]!
1088# CHECK-NEXT: 1.00    -      -      -      -     ldrd	r0, r2, next
1089# CHECK-NEXT: 1.00    -      -      -      -     ldrex	r0, [r1]
1090# CHECK-NEXT: 1.00    -      -      -      -     ldrex	r0, [r1, #4]
1091# CHECK-NEXT: 1.00    -      -      -      -     ldrexb	r0, [r1]
1092# CHECK-NEXT: 1.00    -      -      -      -     ldrexh	r0, [r1]
1093# CHECK-NEXT: 1.00    -      -      -      -     ldrh	r0, [r1, #2]
1094# CHECK-NEXT: 1.00    -      -      -      -     ldrh.w	r0, [r1, #1]
1095# CHECK-NEXT: 1.00    -      -      -      -     ldrh	r0, [r1, #-1]
1096# CHECK-NEXT: 1.00    -      -      -      -     ldrh	r0, [r1], #1
1097# CHECK-NEXT: 1.00    -      -      -      -     ldrh	r0, [r1, #1]!
1098# CHECK-NEXT: 1.00    -      -      -      -     ldrh.w	r0, [pc, #4]
1099# CHECK-NEXT: 1.00    -      -      -      -     ldrh.w	r0, next
1100# CHECK-NEXT: 1.00    -      -      -      -     ldrh	r0, [r1, r2]
1101# CHECK-NEXT: 1.00    -      -      -      -     ldrh.w	r0, [r1, r2]
1102# CHECK-NEXT: 1.00    -      -      -      -     ldrh.w	r0, [r1, r2, lsl #1]
1103# CHECK-NEXT: 1.00    -      -      -      -     ldrht	r0, [r1, #1]
1104# CHECK-NEXT: 1.00    -      -      -      -     ldrsb.w	r0, [r1, #1]
1105# CHECK-NEXT: 1.00    -      -      -      -     ldrsb	r0, [r1, #-1]
1106# CHECK-NEXT: 1.00    -      -      -      -     ldrsb	r0, [r1], #1
1107# CHECK-NEXT: 1.00    -      -      -      -     ldrsb	r0, [r1, #1]!
1108# CHECK-NEXT: 1.00    -      -      -      -     ldrsb.w	r0, [pc, #4]
1109# CHECK-NEXT: 1.00    -      -      -      -     ldrsb.w	r0, next
1110# CHECK-NEXT: 1.00    -      -      -      -     ldrsb	r0, [r1, r2]
1111# CHECK-NEXT: 1.00    -      -      -      -     ldrsb.w	r0, [r1, r2]
1112# CHECK-NEXT: 1.00    -      -      -      -     ldrsb.w	r0, [r1, r2, lsl #1]
1113# CHECK-NEXT: 1.00    -      -      -      -     ldrsbt	r0, [r1, #1]
1114# CHECK-NEXT: 1.00    -      -      -      -     ldrsh.w	r0, [r1, #2]
1115# CHECK-NEXT: 1.00    -      -      -      -     ldrsh	r0, [r1, #-1]
1116# CHECK-NEXT: 1.00    -      -      -      -     ldrsh	r0, [r1], #1
1117# CHECK-NEXT: 1.00    -      -      -      -     ldrsh	r0, [r1, #1]!
1118# CHECK-NEXT: 1.00    -      -      -      -     ldrsh.w	r0, [pc, #4]
1119# CHECK-NEXT: 1.00    -      -      -      -     ldrsh.w	r0, next
1120# CHECK-NEXT: 1.00    -      -      -      -     ldrsh	r0, [r1, r2]
1121# CHECK-NEXT: 1.00    -      -      -      -     ldrsh.w	r0, [r1, r2]
1122# CHECK-NEXT: 1.00    -      -      -      -     ldrsh.w	r0, [r1, r2, lsl #1]
1123# CHECK-NEXT: 1.00    -      -      -      -     ldrsht	r0, [r1, #1]
1124# CHECK-NEXT: 1.00    -      -      -      -     ldrt	r0, [r1, #1]
1125# CHECK-NEXT: 1.00    -      -      -      -     lsls	r0, r1, #1
1126# CHECK-NEXT: 1.00    -      -      -      -     lsl.w	r0, r1, #1
1127# CHECK-NEXT: 1.00    -      -      -      -     lsls.w	r0, r1, #1
1128# CHECK-NEXT: 1.00    -      -      -      -     lsls	r0, r1
1129# CHECK-NEXT: 1.00    -      -      -      -     lsl.w	r0, r1, r2
1130# CHECK-NEXT: 1.00    -      -      -      -     lsls.w	r0, r1, r2
1131# CHECK-NEXT: 1.00    -      -      -      -     lsll	r0, r1, #2
1132# CHECK-NEXT: 1.00    -      -      -      -     lsll	r0, r1, r2
1133# CHECK-NEXT: 1.00    -      -      -      -     lsrs	r0, r1, #1
1134# CHECK-NEXT: 1.00    -      -      -      -     lsr.w	r0, r1, #1
1135# CHECK-NEXT: 1.00    -      -      -      -     lsrs.w	r0, r1, #1
1136# CHECK-NEXT: 1.00    -      -      -      -     lsrs	r0, r1
1137# CHECK-NEXT: 1.00    -      -      -      -     lsr.w	r0, r1, r2
1138# CHECK-NEXT: 1.00    -      -      -      -     lsrs.w	r0, r1, r2
1139# CHECK-NEXT: 1.00    -      -      -      -     lsrl	r0, r1, #2
1140# CHECK-NEXT: 1.00    -      -      -      -     mla	r0, r1, r2, r3
1141# CHECK-NEXT: 1.00    -      -      -      -     mls	r0, r1, r2, r3
1142# CHECK-NEXT:  -      -      -      -      -     movs	r0, #1
1143# CHECK-NEXT:  -      -      -      -      -     mov.w	r0, #1
1144# CHECK-NEXT:  -      -      -      -      -     movs.w	r0, #1
1145# CHECK-NEXT:  -      -      -      -      -     movw	r0, #1
1146# CHECK-NEXT:  -      -      -      -      -     mov	r0, r1
1147# CHECK-NEXT:  -      -      -      -      -     mov.w	r0, r1
1148# CHECK-NEXT:  -      -      -      -      -     movs.w	r0, r1
1149# CHECK-NEXT: 1.00    -      -      -      -     movt	r0, #1
1150# CHECK-NEXT: 1.00    -      -      -      -     mrs	r0, apsr
1151# CHECK-NEXT: 1.00    -      -      -      -     msr	apsr_nzcvq, r0
1152# CHECK-NEXT: 1.00    -      -      -      -     muls	r1, r2, r1
1153# CHECK-NEXT: 1.00    -      -      -      -     mul	r0, r1, r2
1154# CHECK-NEXT: 1.00    -      -      -      -     mvn	r0, #1
1155# CHECK-NEXT: 1.00    -      -      -      -     mvns	r0, #1
1156# CHECK-NEXT: 1.00    -      -      -      -     mvns	r0, r1
1157# CHECK-NEXT: 1.00    -      -      -      -     mvn.w	r0, r1
1158# CHECK-NEXT: 1.00    -      -      -      -     mvns.w	r0, r1
1159# CHECK-NEXT: 1.00    -      -      -      -     mvn.w	r0, r1, lsl #1
1160# CHECK-NEXT: 1.00    -      -      -      -     mvns.w	r0, r1, lsl #1
1161# CHECK-NEXT: 1.00    -      -      -      -     nop
1162# CHECK-NEXT: 1.00    -      -      -      -     orn	r0, r1, #1
1163# CHECK-NEXT: 1.00    -      -      -      -     orns	r0, r1, #1
1164# CHECK-NEXT: 1.00    -      -      -      -     orn	r0, r1, r2
1165# CHECK-NEXT: 1.00    -      -      -      -     orns	r0, r1, r2
1166# CHECK-NEXT: 1.00    -      -      -      -     orn	r0, r1, r2, lsl #1
1167# CHECK-NEXT: 1.00    -      -      -      -     orns	r0, r1, r2, lsl #1
1168# CHECK-NEXT: 1.00    -      -      -      -     orr	r0, r1, #1
1169# CHECK-NEXT: 1.00    -      -      -      -     orrs	r0, r1, #1
1170# CHECK-NEXT: 1.00    -      -      -      -     orrs	r0, r1
1171# CHECK-NEXT: 1.00    -      -      -      -     orr.w	r0, r1, r2
1172# CHECK-NEXT: 1.00    -      -      -      -     orrs.w	r0, r1, r2
1173# CHECK-NEXT: 1.00    -      -      -      -     orr.w	r0, r1, r2, lsl #1
1174# CHECK-NEXT: 1.00    -      -      -      -     orrs.w	r0, r1, r2, lsl #1
1175# CHECK-NEXT: 1.00    -      -      -      -     pkhbt	r0, r1, r2
1176# CHECK-NEXT: 1.00    -      -      -      -     pkhbt	r0, r1, r2, lsl #1
1177# CHECK-NEXT: 1.00    -      -      -      -     pkhbt	r0, r2, r1
1178# CHECK-NEXT: 1.00    -      -      -      -     pkhtb	r0, r1, r2, asr #1
1179# CHECK-NEXT: 1.00    -      -      -      -     pop	{r0}
1180# CHECK-NEXT: 1.00    -      -      -      -     pop.w	{r0, r1}
1181# CHECK-NEXT: 1.00    -      -      -      -     ldr	r0, [sp], #4
1182# CHECK-NEXT: 1.00    -      -      -      -     pssbb
1183# CHECK-NEXT: 1.00    -      -      -      -     push	{r0}
1184# CHECK-NEXT: 1.00    -      -      -      -     push.w	{r0, r1}
1185# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [sp, #-4]!
1186# CHECK-NEXT: 1.00    -      -      -      -     qadd	r0, r1, r2
1187# CHECK-NEXT: 1.00    -      -      -      -     qadd16	r0, r1, r2
1188# CHECK-NEXT: 1.00    -      -      -      -     qadd8	r0, r1, r2
1189# CHECK-NEXT: 1.00    -      -      -      -     qasx	r0, r1, r2
1190# CHECK-NEXT: 1.00    -      -      -      -     qdadd	r0, r1, r2
1191# CHECK-NEXT: 1.00    -      -      -      -     qdsub	r0, r1, r2
1192# CHECK-NEXT: 1.00    -      -      -      -     qsax	r0, r1, r2
1193# CHECK-NEXT: 1.00    -      -      -      -     qsub	r0, r1, r2
1194# CHECK-NEXT: 1.00    -      -      -      -     qsub16	r0, r1, r2
1195# CHECK-NEXT: 1.00    -      -      -      -     qsub8	r0, r1, r2
1196# CHECK-NEXT: 1.00    -      -      -      -     rbit	r0, r1
1197# CHECK-NEXT: 1.00    -      -      -      -     rev	r0, r1
1198# CHECK-NEXT: 1.00    -      -      -      -     rev.w	r0, r1
1199# CHECK-NEXT: 1.00    -      -      -      -     rev16	r0, r1
1200# CHECK-NEXT: 1.00    -      -      -      -     rev16.w	r0, r1
1201# CHECK-NEXT: 1.00    -      -      -      -     revsh	r0, r1
1202# CHECK-NEXT: 1.00    -      -      -      -     revsh.w	r0, r1
1203# CHECK-NEXT: 1.00    -      -      -      -     ror.w	r0, r1, #1
1204# CHECK-NEXT: 1.00    -      -      -      -     rors.w	r0, r1, #1
1205# CHECK-NEXT: 1.00    -      -      -      -     rors	r0, r1
1206# CHECK-NEXT: 1.00    -      -      -      -     ror.w	r0, r1, r2
1207# CHECK-NEXT: 1.00    -      -      -      -     rors.w	r0, r1, r2
1208# CHECK-NEXT: 1.00    -      -      -      -     rrx	r0, r1
1209# CHECK-NEXT: 1.00    -      -      -      -     rrxs	r0, r1
1210# CHECK-NEXT: 1.00    -      -      -      -     rsbs	r0, r1, #0
1211# CHECK-NEXT: 1.00    -      -      -      -     rsb.w	r0, r1, #1
1212# CHECK-NEXT: 1.00    -      -      -      -     rsbs.w	r0, r1, #1
1213# CHECK-NEXT: 1.00    -      -      -      -     rsb	r0, r1, r2
1214# CHECK-NEXT: 1.00    -      -      -      -     rsbs	r0, r1, r2
1215# CHECK-NEXT: 1.00    -      -      -      -     rsb	r0, r1, r2, lsl #1
1216# CHECK-NEXT: 1.00    -      -      -      -     rsbs	r0, r1, r2, lsl #1
1217# CHECK-NEXT: 1.00    -      -      -      -     sadd16	r0, r1, r2
1218# CHECK-NEXT: 1.00    -      -      -      -     sadd8	r0, r1, r2
1219# CHECK-NEXT: 1.00    -      -      -      -     sasx	r0, r1, r2
1220# CHECK-NEXT: 1.00    -      -      -      -     sbc	r0, r1, #1
1221# CHECK-NEXT: 1.00    -      -      -      -     sbcs	r0, r1, #1
1222# CHECK-NEXT: 1.00    -      -      -      -     sbcs	r0, r1
1223# CHECK-NEXT: 1.00    -      -      -      -     sbc.w	r0, r1, r2
1224# CHECK-NEXT: 1.00    -      -      -      -     sbcs.w	r0, r1, r2
1225# CHECK-NEXT: 1.00    -      -      -      -     sbc.w	r0, r1, r2, lsl #1
1226# CHECK-NEXT: 1.00    -      -      -      -     sbcs.w	r0, r1, r2, lsl #1
1227# CHECK-NEXT: 1.00    -      -      -      -     sbfx	r0, r1, #1, #2
1228# CHECK-NEXT: 1.00    -      -      -      -     sdiv	r0, r1, r2
1229# CHECK-NEXT: 1.00    -      -      -      -     sel	r0, r1, r2
1230# CHECK-NEXT: 1.00    -      -      -      -     sev
1231# CHECK-NEXT: 1.00    -      -      -      -     shadd16	r0, r1, r2
1232# CHECK-NEXT: 1.00    -      -      -      -     shadd8	r0, r1, r2
1233# CHECK-NEXT: 1.00    -      -      -      -     shasx	r0, r1, r2
1234# CHECK-NEXT: 1.00    -      -      -      -     shsax	r0, r1, r2
1235# CHECK-NEXT: 1.00    -      -      -      -     shsub16	r0, r1, r2
1236# CHECK-NEXT: 1.00    -      -      -      -     shsub8	r0, r1, r2
1237# CHECK-NEXT: 1.00    -      -      -      -     smlabb	r0, r1, r2, r3
1238# CHECK-NEXT: 1.00    -      -      -      -     smlabt	r0, r1, r2, r3
1239# CHECK-NEXT: 1.00    -      -      -      -     smlatb	r0, r1, r2, r3
1240# CHECK-NEXT: 1.00    -      -      -      -     smlatt	r0, r1, r2, r3
1241# CHECK-NEXT: 1.00    -      -      -      -     smlad	r0, r1, r2, r3
1242# CHECK-NEXT: 1.00    -      -      -      -     smladx	r0, r1, r2, r3
1243# CHECK-NEXT: 1.00    -      -      -      -     smlal	r0, r1, r2, r3
1244# CHECK-NEXT: 1.00    -      -      -      -     smlalbb	r0, r1, r2, r3
1245# CHECK-NEXT: 1.00    -      -      -      -     smlalbt	r0, r1, r2, r3
1246# CHECK-NEXT: 1.00    -      -      -      -     smlaltb	r0, r1, r2, r3
1247# CHECK-NEXT: 1.00    -      -      -      -     smlaltt	r0, r1, r2, r3
1248# CHECK-NEXT: 1.00    -      -      -      -     smlald	r0, r1, r2, r3
1249# CHECK-NEXT: 1.00    -      -      -      -     smlaldx	r0, r1, r2, r3
1250# CHECK-NEXT: 1.00    -      -      -      -     smlawb	r0, r1, r2, r3
1251# CHECK-NEXT: 1.00    -      -      -      -     smlawt	r0, r1, r2, r3
1252# CHECK-NEXT: 1.00    -      -      -      -     smlsd	r0, r1, r2, r3
1253# CHECK-NEXT: 1.00    -      -      -      -     smlsdx	r0, r1, r2, r3
1254# CHECK-NEXT: 1.00    -      -      -      -     smlsld	r0, r1, r2, r3
1255# CHECK-NEXT: 1.00    -      -      -      -     smlsldx	r0, r1, r2, r3
1256# CHECK-NEXT: 1.00    -      -      -      -     smmla	r0, r1, r2, r3
1257# CHECK-NEXT: 1.00    -      -      -      -     smmlar	r0, r1, r2, r3
1258# CHECK-NEXT: 1.00    -      -      -      -     smmls	r0, r1, r2, r3
1259# CHECK-NEXT: 1.00    -      -      -      -     smmlsr	r0, r1, r2, r3
1260# CHECK-NEXT: 1.00    -      -      -      -     smmul	r0, r1, r2
1261# CHECK-NEXT: 1.00    -      -      -      -     smmulr	r0, r1, r2
1262# CHECK-NEXT: 1.00    -      -      -      -     smuad	r0, r1, r2
1263# CHECK-NEXT: 1.00    -      -      -      -     smuadx	r0, r1, r2
1264# CHECK-NEXT: 1.00    -      -      -      -     smulbb	r0, r1, r2
1265# CHECK-NEXT: 1.00    -      -      -      -     smulbt	r0, r1, r2
1266# CHECK-NEXT: 1.00    -      -      -      -     smultb	r0, r1, r2
1267# CHECK-NEXT: 1.00    -      -      -      -     smultt	r0, r1, r2
1268# CHECK-NEXT: 1.00    -      -      -      -     smull	r0, r1, r2, r3
1269# CHECK-NEXT: 1.00    -      -      -      -     smulwb	r0, r1, r2
1270# CHECK-NEXT: 1.00    -      -      -      -     smulwt	r0, r1, r2
1271# CHECK-NEXT: 1.00    -      -      -      -     smusd	r0, r1, r2
1272# CHECK-NEXT: 1.00    -      -      -      -     smusdx	r0, r1, r2
1273# CHECK-NEXT: 1.00    -      -      -      -     sqrshr	r0, r1
1274# CHECK-NEXT: 1.00    -      -      -      -     sqrshrl	r0, r1, #48, r2
1275# CHECK-NEXT: 1.00    -      -      -      -     sqshl	r0, #7
1276# CHECK-NEXT: 1.00    -      -      -      -     sqshll	r0, r1, #7
1277# CHECK-NEXT: 1.00    -      -      -      -     srshr	r0, #7
1278# CHECK-NEXT: 1.00    -      -      -      -     srshrl	r0, r1, #7
1279# CHECK-NEXT: 1.00    -      -      -      -     ssat	r0, #1, r2
1280# CHECK-NEXT: 1.00    -      -      -      -     ssat	r0, #1, r2, lsl #1
1281# CHECK-NEXT: 1.00    -      -      -      -     ssat16	r0, #1, r1
1282# CHECK-NEXT: 1.00    -      -      -      -     ssax	r0, r1, r2
1283# CHECK-NEXT: 1.00    -      -      -      -     ssbb
1284# CHECK-NEXT: 1.00    -      -      -      -     ssub16	r0, r1, r2
1285# CHECK-NEXT: 1.00    -      -      -      -     ssub8	r0, r1, r2
1286# CHECK-NEXT: 1.00    -      -      -      -     stl	r0, [r1]
1287# CHECK-NEXT: 1.00    -      -      -      -     stlb	r0, [r1]
1288# CHECK-NEXT: 1.00    -      -      -      -     stlex	r0, r1, [r2]
1289# CHECK-NEXT: 1.00    -      -      -      -     stlexb	r0, r1, [r2]
1290# CHECK-NEXT: 1.00    -      -      -      -     stlexh	r0, r1, [r2]
1291# CHECK-NEXT: 1.00    -      -      -      -     stlh	r0, [r1]
1292# CHECK-NEXT: 1.00    -      -      -      -     stm	r0!, {r1}
1293# CHECK-NEXT: 1.00    -      -      -      -     stm.w	r0, {r1}
1294# CHECK-NEXT: 1.00    -      -      -      -     stm.w	r0!, {r1}
1295# CHECK-NEXT: 1.00    -      -      -      -     stmdb	r0, {r1}
1296# CHECK-NEXT: 1.00    -      -      -      -     str	r1, [r0, #-4]!
1297# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [r1]
1298# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [r1, #4]
1299# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [sp, #4]
1300# CHECK-NEXT: 1.00    -      -      -      -     str.w	r0, [r1, #1]
1301# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [r1, #-1]
1302# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [r1], #1
1303# CHECK-NEXT: 1.00    -      -      -      -     str	r0, [r1, r2]
1304# CHECK-NEXT: 1.00    -      -      -      -     str.w	r0, [r1, r2]
1305# CHECK-NEXT: 1.00    -      -      -      -     str.w	r0, [r1, r2, lsl #1]
1306# CHECK-NEXT: 1.00    -      -      -      -     strb	r0, [r1]
1307# CHECK-NEXT: 1.00    -      -      -      -     strb	r0, [r1, #1]
1308# CHECK-NEXT: 1.00    -      -      -      -     strb.w	r0, [r1, #1]
1309# CHECK-NEXT: 1.00    -      -      -      -     strb	r0, [r1, #-1]
1310# CHECK-NEXT: 1.00    -      -      -      -     strb	r0, [r1], #1
1311# CHECK-NEXT: 1.00    -      -      -      -     strb	r0, [r1, #1]!
1312# CHECK-NEXT: 1.00    -      -      -      -     strb	r0, [r1, r2]
1313# CHECK-NEXT: 1.00    -      -      -      -     strb.w	r0, [r1, r2]
1314# CHECK-NEXT: 1.00    -      -      -      -     strb.w	r0, [r1, r2, lsl #1]
1315# CHECK-NEXT: 1.00    -      -      -      -     strbt	r0, [r1, #1]
1316# CHECK-NEXT: 1.00    -      -      -      -     strd	r0, r1, [r2, #4]
1317# CHECK-NEXT: 1.00    -      -      -      -     strd	r0, r1, [r2], #4
1318# CHECK-NEXT: 1.00    -      -      -      -     strd	r0, r1, [r2, #4]!
1319# CHECK-NEXT: 1.00    -      -      -      -     strex	r0, r1, [r2]
1320# CHECK-NEXT: 1.00    -      -      -      -     strex	r0, r1, [r2, #4]
1321# CHECK-NEXT: 1.00    -      -      -      -     strexb	r0, r1, [r2]
1322# CHECK-NEXT: 1.00    -      -      -      -     strexh	r0, r1, [r2]
1323# CHECK-NEXT: 1.00    -      -      -      -     strh	r0, [r1]
1324# CHECK-NEXT: 1.00    -      -      -      -     strh	r0, [r1, #2]
1325# CHECK-NEXT: 1.00    -      -      -      -     strh.w	r0, [r1, #2]
1326# CHECK-NEXT: 1.00    -      -      -      -     strh	r0, [r1, #-1]
1327# CHECK-NEXT: 1.00    -      -      -      -     strh	r0, [r1], #1
1328# CHECK-NEXT: 1.00    -      -      -      -     strh	r0, [r1, #1]!
1329# CHECK-NEXT: 1.00    -      -      -      -     strh	r0, [r1, r2]
1330# CHECK-NEXT: 1.00    -      -      -      -     strh.w	r0, [r1, r2]
1331# CHECK-NEXT: 1.00    -      -      -      -     strh.w	r0, [r1, r2, lsl #1]
1332# CHECK-NEXT: 1.00    -      -      -      -     strht	r0, [r1, #1]
1333# CHECK-NEXT: 1.00    -      -      -      -     strt	r0, [r1, #1]
1334# CHECK-NEXT: 1.00    -      -      -      -     sub	sp, #4
1335# CHECK-NEXT:  -      -      -      -      -     sub.w	r0, sp, #1
1336# CHECK-NEXT:  -      -      -      -      -     subs.w	r0, sp, #1
1337# CHECK-NEXT: 1.00    -      -      -      -     subw	r0, sp, #1
1338# CHECK-NEXT: 1.00    -      -      -      -     sub.w	r0, sp, r1
1339# CHECK-NEXT: 1.00    -      -      -      -     subs.w	r0, sp, r1
1340# CHECK-NEXT: 1.00    -      -      -      -     sub.w	r0, sp, r1, lsl #1
1341# CHECK-NEXT: 1.00    -      -      -      -     subs.w	r0, sp, r1, lsl #1
1342# CHECK-NEXT:  -      -      -      -      -     subs	r0, r1, #1
1343# CHECK-NEXT:  -      -      -      -      -     subs	r0, #1
1344# CHECK-NEXT:  -      -      -      -      -     sub.w	r0, r1, #1
1345# CHECK-NEXT:  -      -      -      -      -     subs.w	r0, r1, #1
1346# CHECK-NEXT: 1.00    -      -      -      -     subw	r0, r1, #1
1347# CHECK-NEXT: 1.00    -      -      -      -     subs	r0, r1, r2
1348# CHECK-NEXT: 1.00    -      -      -      -     sub.w	r0, r1, r2
1349# CHECK-NEXT: 1.00    -      -      -      -     subs.w	r0, r1, r2
1350# CHECK-NEXT: 1.00    -      -      -      -     sub.w	r0, r1, r2, lsl #1
1351# CHECK-NEXT: 1.00    -      -      -      -     subs.w	r0, r1, r2, lsl #1
1352# CHECK-NEXT: 1.00    -      -      -      -     sxtab	r0, r1, r2
1353# CHECK-NEXT: 1.00    -      -      -      -     sxtab	r0, r1, r2, ror #8
1354# CHECK-NEXT: 1.00    -      -      -      -     sxtab16	r0, r1, r2
1355# CHECK-NEXT: 1.00    -      -      -      -     sxtab16	r0, r1, r2, ror #8
1356# CHECK-NEXT: 1.00    -      -      -      -     sxtah	r0, r1, r2
1357# CHECK-NEXT: 1.00    -      -      -      -     sxtah	r0, r1, r2, ror #8
1358# CHECK-NEXT:  -      -      -      -      -     sxtb	r0, r1
1359# CHECK-NEXT:  -      -      -      -      -     sxtb.w	r0, r1
1360# CHECK-NEXT:  -      -      -      -      -     sxtb.w	r0, r1, ror #8
1361# CHECK-NEXT: 1.00    -      -      -      -     sxtb16	r0, r1
1362# CHECK-NEXT: 1.00    -      -      -      -     sxtb16	r0, r1, ror #8
1363# CHECK-NEXT:  -      -      -      -      -     sxth	r0, r1
1364# CHECK-NEXT:  -      -      -      -      -     sxth.w	r0, r1
1365# CHECK-NEXT:  -      -      -      -      -     sxth.w	r0, r1, ror #8
1366# CHECK-NEXT: 1.00    -      -      -      -     tbb	[r0, r1]
1367# CHECK-NEXT: 1.00    -      -      -      -     tbh	[r0, r1, lsl #1]
1368# CHECK-NEXT: 1.00    -      -      -      -     teq.w	r0, #1
1369# CHECK-NEXT: 1.00    -      -      -      -     teq.w	r0, r1
1370# CHECK-NEXT: 1.00    -      -      -      -     teq.w	r0, r1, lsl #1
1371# CHECK-NEXT: 1.00    -      -      -      -     tst.w	r0, #1
1372# CHECK-NEXT: 1.00    -      -      -      -     tst	r0, r1
1373# CHECK-NEXT: 1.00    -      -      -      -     tst.w	r0, r1
1374# CHECK-NEXT: 1.00    -      -      -      -     tst.w	r0, r1, lsl #1
1375# CHECK-NEXT: 1.00    -      -      -      -     uadd16	r0, r1, r2
1376# CHECK-NEXT: 1.00    -      -      -      -     uadd8	r0, r1, r2
1377# CHECK-NEXT: 1.00    -      -      -      -     uasx	r0, r1, r2
1378# CHECK-NEXT: 1.00    -      -      -      -     ubfx	r0, r1, #1, #2
1379# CHECK-NEXT: 1.00    -      -      -      -     udiv	r0, r1, r2
1380# CHECK-NEXT: 1.00    -      -      -      -     uhadd16	r0, r1, r2
1381# CHECK-NEXT: 1.00    -      -      -      -     uhadd8	r0, r1, r2
1382# CHECK-NEXT: 1.00    -      -      -      -     uhasx	r0, r1, r2
1383# CHECK-NEXT: 1.00    -      -      -      -     uhsax	r0, r1, r2
1384# CHECK-NEXT: 1.00    -      -      -      -     uhsub16	r0, r1, r2
1385# CHECK-NEXT: 1.00    -      -      -      -     uhsub8	r0, r1, r2
1386# CHECK-NEXT: 1.00    -      -      -      -     umaal	r0, r1, r2, r3
1387# CHECK-NEXT: 1.00    -      -      -      -     umlal	r0, r1, r2, r3
1388# CHECK-NEXT: 1.00    -      -      -      -     umull	r0, r1, r2, r3
1389# CHECK-NEXT: 1.00    -      -      -      -     uqadd16	r0, r1, r2
1390# CHECK-NEXT: 1.00    -      -      -      -     uqadd8	r0, r1, r2
1391# CHECK-NEXT: 1.00    -      -      -      -     uqasx	r0, r1, r2
1392# CHECK-NEXT: 1.00    -      -      -      -     uqrshl	r0, r1
1393# CHECK-NEXT: 1.00    -      -      -      -     uqrshll	r0, r1, #48, r2
1394# CHECK-NEXT: 1.00    -      -      -      -     uqsax	r0, r1, r2
1395# CHECK-NEXT: 1.00    -      -      -      -     uqshl	r0, #1
1396# CHECK-NEXT: 1.00    -      -      -      -     uqshll	r0, r1, #1
1397# CHECK-NEXT: 1.00    -      -      -      -     uqsub16	r0, r1, r2
1398# CHECK-NEXT: 1.00    -      -      -      -     uqsub8	r0, r1, r2
1399# CHECK-NEXT: 1.00    -      -      -      -     urshr	r0, #1
1400# CHECK-NEXT: 1.00    -      -      -      -     urshrl	r0, r1, #1
1401# CHECK-NEXT: 1.00    -      -      -      -     usad8	r0, r1, r2
1402# CHECK-NEXT: 1.00    -      -      -      -     usada8	r0, r1, r2, r3
1403# CHECK-NEXT: 1.00    -      -      -      -     usat	r0, #1, r1
1404# CHECK-NEXT: 1.00    -      -      -      -     usat	r0, #1, r1, lsl #1
1405# CHECK-NEXT: 1.00    -      -      -      -     usat16	r0, #1, r1
1406# CHECK-NEXT: 1.00    -      -      -      -     usax	r0, r1, r2
1407# CHECK-NEXT: 1.00    -      -      -      -     usub16	r0, r1, r2
1408# CHECK-NEXT: 1.00    -      -      -      -     usub8	r0, r1, r2
1409# CHECK-NEXT: 1.00    -      -      -      -     uxtab	r0, r1, r2
1410# CHECK-NEXT: 1.00    -      -      -      -     uxtab	r0, r1, r2, ror #8
1411# CHECK-NEXT: 1.00    -      -      -      -     uxtab16	r0, r1, r2
1412# CHECK-NEXT: 1.00    -      -      -      -     uxtab16	r0, r1, r2, ror #8
1413# CHECK-NEXT: 1.00    -      -      -      -     uxtah	r0, r1, r2
1414# CHECK-NEXT: 1.00    -      -      -      -     uxtah	r0, r1, r2, ror #8
1415# CHECK-NEXT:  -      -      -      -      -     uxtb	r0, r1
1416# CHECK-NEXT:  -      -      -      -      -     uxtb.w	r0, r1
1417# CHECK-NEXT:  -      -      -      -      -     uxtb.w	r0, r1, ror #8
1418# CHECK-NEXT: 1.00    -      -      -      -     uxtb16	r0, r1
1419# CHECK-NEXT: 1.00    -      -      -      -     uxtb16	r0, r1, ror #8
1420# CHECK-NEXT:  -      -      -      -      -     uxth	r0, r1
1421# CHECK-NEXT:  -      -      -      -      -     uxth.w	r0, r1
1422# CHECK-NEXT:  -      -      -      -      -     uxth.w	r0, r1, ror #8
1423# CHECK-NEXT: 1.00    -      -      -      -     wfe
1424# CHECK-NEXT: 1.00    -      -      -      -     wfi
1425# CHECK-NEXT: 1.00    -      -      -      -     yield
1426