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