[llvm] 9c3b68d - [llvm-mca] Fix processing thumb instruction set

Evgeny Leviant via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 24 07:28:08 PST 2020


Author: Evgeny Leviant
Date: 2020-11-24T18:27:59+03:00
New Revision: 9c3b68dc6fe1475bf49c2a878748de32cac83ede

URL: https://github.com/llvm/llvm-project/commit/9c3b68dc6fe1475bf49c2a878748de32cac83ede
DIFF: https://github.com/llvm/llvm-project/commit/9c3b68dc6fe1475bf49c2a878748de32cac83ede.diff

LOG: [llvm-mca] Fix processing thumb instruction set

Differential revision: https://reviews.llvm.org/D91704

Added: 
    llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s

Modified: 
    llvm/lib/MCA/InstrBuilder.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/MCA/InstrBuilder.cpp b/llvm/lib/MCA/InstrBuilder.cpp
index dd3ce5d2c49e7..2bad136017186 100644
--- a/llvm/lib/MCA/InstrBuilder.cpp
+++ b/llvm/lib/MCA/InstrBuilder.cpp
@@ -259,8 +259,9 @@ void InstrBuilder::populateWrites(InstrDesc &ID, const MCInst &MCI,
   //     the opcode descriptor (MCInstrDesc).
   //  2. Uses start at index #(MCDesc.getNumDefs()).
   //  3. There can only be a single optional register definition, an it is
-  //     always the last operand of the sequence (excluding extra operands
-  //     contributed by variadic opcodes).
+  //     either the last operand of the sequence (excluding extra operands
+  //     contributed by variadic opcodes) or one of the explicit register
+  //     definitions. The latter occurs for some Thumb1 instructions.
   //
   // These assumptions work quite well for most out-of-order in-tree targets
   // like x86. This is mainly because the vast majority of instructions is
@@ -308,12 +309,18 @@ void InstrBuilder::populateWrites(InstrDesc &ID, const MCInst &MCI,
   // The first NumExplicitDefs register operands are expected to be register
   // definitions.
   unsigned CurrentDef = 0;
+  unsigned OptionalDefIdx = MCDesc.getNumOperands() - 1;
   unsigned i = 0;
   for (; i < MCI.getNumOperands() && CurrentDef < NumExplicitDefs; ++i) {
     const MCOperand &Op = MCI.getOperand(i);
     if (!Op.isReg())
       continue;
 
+    if (MCDesc.OpInfo[CurrentDef].isOptionalDef()) {
+      OptionalDefIdx = CurrentDef++;
+      continue;
+    }
+
     WriteDescriptor &Write = ID.Writes[CurrentDef];
     Write.OpIndex = i;
     if (CurrentDef < NumWriteLatencyEntries) {
@@ -369,7 +376,7 @@ void InstrBuilder::populateWrites(InstrDesc &ID, const MCInst &MCI,
 
   if (MCDesc.hasOptionalDef()) {
     WriteDescriptor &Write = ID.Writes[NumExplicitDefs + NumImplicitDefs];
-    Write.OpIndex = MCDesc.getNumOperands() - 1;
+    Write.OpIndex = OptionalDefIdx;
     // Assign a default latency for this write.
     Write.Latency = ID.MaxLatency;
     Write.SClassOrWriteResourceID = 0;

diff  --git a/llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s b/llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s
new file mode 100644
index 0000000000000..21accd7e2e188
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s
@@ -0,0 +1,2730 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=thumbv8 -mcpu=cortex-a57 -instruction-tables < %s | FileCheck %s
+
+  .text
+  adc	r0, r1, #4
+  adcs	r0, r1, #0
+  adc	r1, r2, #255
+  adc	r3, r7, #5570645
+  adc	r8, r12, #2852170240
+  adc	r9, r7, #2779096485
+  adc	r5, r3, #2264924160
+  adc	r4, r2, #2139095040
+  adc	r4, r2, #1664
+  adc.w	r4, r5, r6
+  adcs.w	r4, r5, r6
+  adc.w	r9, r1, r3
+  adcs.w	r9, r1, r3
+  adc.w	r0, r1, r3, ror #4
+  adcs.w	r0, r1, r3, lsl #7
+  adc.w	r0, r1, r3, lsr #31
+  adcs.w	r0, r1, r3, asr #32
+  itet	eq
+  addeq	r1, r2, #4
+  addwne	r5, r3, #1023
+  addweq	r4, r5, #293
+  add.w	r2, sp, #1024
+  add.w	r2, r8, #65280
+  addw	r2, r3, #257
+  add.w	r12, r6, #256
+  addw	r12, r6, #256
+  adds.w	r1, r2, #496
+  add.w	r1, r2, r8
+  add.w	r5, r9, r2, asr #32
+  adds.w	r7, r3, r1, lsl #31
+  adds.w	r0, r3, r6, lsr #25
+  add.w	r4, r8, r1, ror #12
+  adr.w	r11, #-3270
+  adr.w	r11, #-826
+  subw	r1, pc, #0
+  adr.w	r0, #1024
+  and	r2, r5, #1044480
+  ands	r3, r12, #15
+  and	r1, r1, #255
+  and.w	r4, r9, r8
+  and.w	r1, r4, r8, asr #3
+  ands.w	r2, r1, r7, lsl #1
+  ands.w	r4, r5, r2, lsr #20
+  and.w	r9, r12, r1, ror #17
+  asr.w	r2, r3, #12
+  asrs.w	r8, r3, #32
+  asrs.w	r2, r3, #1
+  asr.w	r2, r3, #4
+  asrs.w	r2, r12, #15
+  asr.w	r3, r3, #19
+  asrs.w	r8, r8, #2
+  asrs.w	r7, r7, #5
+  asr.w	r12, r12, #21
+  asr.w	r3, r4, r2
+  asr.w	r1, r1, r2
+  asrs.w	r3, r4, r8
+  bmi.w	#-183396
+  b.w	#208962
+  b.w	#-16777216
+  bfc	r5, #3, #17
+  it	lo
+  bfclo	r5, #3, #17
+  bfi	r5, r2, #3, #17
+  it	ne
+  bfine	r5, r2, #3, #17
+  bfi	r6, r0, #0, #32
+  bfi	r6, r0, #31, #1
+  bic	r10, r1, #15
+  bic.w	r12, r3, r6
+  bic.w	r11, r2, r6, lsl #12
+  bic.w	r8, r4, r1, lsr #11
+  bic.w	r7, r5, r7, lsr #15
+  bic.w	r6, r7, r9, asr #32
+  bic.w	r5, r6, r8, ror #1
+  bic	r1, r1, #15
+  bic.w	r1, r1, r1
+  bic.w	r4, r4, r2, lsl #31
+  bic.w	r6, r6, r3, lsr #12
+  bic.w	r7, r7, r4, lsr #7
+  bic.w	r8, r8, r5, asr #15
+  bic.w	r12, r12, r6, ror #29
+  bxj	r5
+  it	ne
+  bxjne	r7
+  cbnz	r7, #6
+  cbnz	r7, #12
+  cbz	r4, #64
+  strh	r6, [r5, #14]
+  asrs	r7, r2, #4
+  strh	r6, [r7, #14]
+  itett	ne
+  cmpne	r7, #243
+  addeq	r7, r1, r2
+  itttt	lt
+  cmplt	r7, #243
+  uxthlt	r7, r1
+  strhlt	r2, [r7, #22]
+  lsrlt	r1, r6, #3
+  uxthne	r7, r7
+  strh	r2, [r7, #22]
+  asrs	r1, r6, #7
+  lsrs	r1, r6, #31
+  adds	r7, r1, r0
+  lsls	r3, r5, #27
+  asrs	r7, r1, #4
+  strh	r3, [r5, #54]
+  asrs	r7, r5, #4
+  str	r6, [sp, #940]
+  adds	r7, r5, #4
+  str	r6, [sp, #940]
+  asrs	r7, r5, #4
+  adr	r6, #940
+  asrs	r7, r5, #4
+  cmp	r7, #182
+  cmp.w	r5, #65280
+  cmp.w	r4, r12
+  cmp.w	r9, r6, lsl #12
+  cmp.w	r3, r7, lsr #31
+  cmp.w	sp, r6, lsr #1
+  cmp.w	r2, r5, asr #24
+  cmp.w	r1, r4, ror #15
+  dbg	#5
+  dbg	#0
+  dbg	#15
+  dmb	sy
+  dmb	st
+  dmb	ld
+  dmb	#0xc
+  dmb	ish
+  dmb	ishst
+  dmb	ishld
+  dmb	#0x8
+  dmb	nsh
+  dmb	nshst
+  dmb	nshld
+  dmb	#0x4
+  dmb	osh
+  dmb	oshst
+  dmb	oshld
+  dmb	#0x0
+  dsb	sy
+  dsb	st
+  dsb	ld
+  dsb	#0xc
+  dsb	ish
+  dsb	ishst
+  dsb	ishld
+  dsb	#0x8
+  dsb	nsh
+  dsb	nshst
+  dsb	nshld
+  pssbb
+  dsb	osh
+  dsb	oshst
+  dsb	oshld
+  ssbb
+  eor	r4, r5, #61440
+  eor.w	r4, r5, r6
+  eor.w	r4, r5, r6, lsl #5
+  eor.w	r4, r5, r6, lsr #5
+  eor.w	r4, r5, r6, lsr #5
+  eor.w	r4, r5, r6, asr #5
+  eor.w	r4, r5, r6, ror #5
+  isb	sy
+  isb	#0xa
+  iteet	eq
+  addeq	r0, r1, r2
+  nopne
+  subne	r5, r6, r7
+  addeq	r1, r2, #4
+  ittee	ls
+  addls	r0, r1, r2
+  nopls
+  subhi	r5, r6, r7
+  addhi	r1, r2, #4
+  ldm.w	r4, {r4, r5, r8, r9}
+  ldm.w	r4, {r5, r6}
+  ldm.w	r5!, {r3, r8}
+  ldm.w	r4, {r4, r5, r8, r9}
+  ldm.w	r4, {r5, r6}
+  ldm.w	r5!, {r3, r8}
+  ldm.w	r5!, {r1, r2}
+  ldm.w	r2, {r1, r2}
+  ldm.w	r4, {r4, r5, r8, r9}
+  ldm.w	r4, {r5, r6}
+  ldm.w	r5!, {r3, r8}
+  ldm.w	r4, {r4, r5, r8, r9}
+  ldm.w	r4, {r5, r6}
+  ldm.w	r5!, {r3, r8}
+  ldm.w	r5!, {r3, r8}
+  ldmdb	r4, {r4, r5, r8, r9}
+  ldmdb	r4, {r5, r6}
+  ldmdb	r5!, {r3, r8}
+  ldmdb	r5!, {r3, r8}
+  ldr	r5, [r5, #-4]
+  ldr	r5, [r6, #32]
+  ldr.w	r5, [r6, #33]
+  ldr.w	r5, [r6, #257]
+  ldr.w	pc, [r7, #257]
+  ldr.w	r4, [pc, #-0]
+  ldr.w	r2, [pc, #-40]
+  ldr.w	r1, [pc, #1024]
+  ldr.w	r1, [r8, r1]
+  ldr.w	r4, [r5, r2]
+  ldr.w	r6, [r0, r2, lsl #3]
+  ldr.w	r8, [r8, r2, lsl #2]
+  ldr.w	r7, [sp, r2, lsl #1]
+  ldr.w	r7, [sp, r2]
+  ldr	pc, [sp], #12
+  ldr	r2, [r4, #255]!
+  ldr	r8, [sp, #4]!
+  ldr	lr, [sp, #-4]!
+  ldr	lr, [sp, #0]!
+  ldr	r2, [r4], #255
+  ldr	r8, [sp], #4
+  ldr	lr, [sp], #-4
+  ldrb	r5, [r5, #-4]
+  ldrb.w	r5, [r6, #32]
+  ldrb.w	r5, [r6, #33]
+  ldrb.w	r5, [r6, #257]
+  ldrb.w	lr, [r7, #257]
+  ldrb.w	r1, [r8, r1]
+  ldrb.w	r4, [r5, r2]
+  ldrb.w	r6, [r0, r2, lsl #3]
+  ldrb.w	r8, [r8, r2, lsl #2]
+  ldrb.w	r7, [sp, r2, lsl #1]
+  ldrb.w	r7, [sp, r2]
+  ldrb	r5, [r8, #255]!
+  ldrb	r2, [r5, #4]!
+  ldrb	r1, [r4, #-4]!
+  ldrb	r1, [r4, #0]!
+  ldrb	lr, [r3], #255
+  ldrb	r9, [r2], #4
+  ldrb	r3, [sp], #-4
+  ldrb.w	r6, [pc, #-0]
+  ldrb.w	r10, [pc, #227]
+  ldrb.w	r5, [pc, #0]
+  ldrbt	r1, [r2]
+  ldrbt	r1, [r8]
+  ldrbt	r1, [r8, #3]
+  ldrbt	r1, [r8, #255]
+  ldrd	r3, r5, [r6, #24]
+  ldrd	r3, r5, [r6, #24]!
+  ldrd	r3, r5, [r6], #4
+  ldrd	r3, r5, [r6], #-8
+  ldrd	r3, r5, [r6]
+  ldrd	r8, r1, [r3]
+  ldrd	r0, r1, [r2], #-0
+  ldrd	r0, r1, [r2, #-0]!
+  ldrd	r0, r1, [r2, #0]!
+  ldrd	r0, r1, [r2, #-0]
+  ldrd	r1, r1, [r0], #0
+  ldrex	r1, [r4]
+  ldrex	r8, [r4]
+  ldrex	r2, [sp, #128]
+  ldrexb	r5, [r7]
+  ldrexh	r9, [r12]
+  ldrexd	r9, r3, [r4]
+  ldrh	r5, [r5, #-4]
+  ldrh	r5, [r6, #32]
+  ldrh.w	r5, [r6, #33]
+  ldrh.w	r5, [r6, #257]
+  ldrh.w	lr, [r7, #257]
+  ldrh.w	r1, [r8, r1]
+  ldrh.w	r4, [r5, r2]
+  ldrh.w	r6, [r0, r2, lsl #3]
+  ldrh.w	r8, [r8, r2, lsl #2]
+  ldrh.w	r7, [sp, r2, lsl #1]
+  ldrh.w	r7, [sp, r2]
+  ldrh	r5, [r8, #255]!
+  ldrh	r2, [r5, #4]!
+  ldrh	r1, [r4, #-4]!
+  ldrh	r1, [r4, #0]!
+  ldrh	lr, [r3], #255
+  ldrh	r9, [r2], #4
+  ldrh	r3, [sp], #-4
+  ldrh.w	r7, [pc, #-0]
+  ldrh.w	r5, [pc, #121]
+  ldrh.w	r4, [pc, #0]
+  ldrsb	r5, [r5, #-4]
+  ldrsb.w	r5, [r6, #32]
+  ldrsb.w	r5, [r6, #33]
+  ldrsb.w	r5, [r6, #257]
+  ldrsb.w	lr, [r7, #257]
+  ldrsb.w	r1, [r8, r1]
+  ldrsb.w	r4, [r5, r2]
+  ldrsb.w	r6, [r0, r2, lsl #3]
+  ldrsb.w	r8, [r8, r2, lsl #2]
+  ldrsb.w	r7, [sp, r2, lsl #1]
+  ldrsb.w	r7, [sp, r2]
+  ldrsb	r5, [r8, #255]!
+  ldrsb	r2, [r5, #4]!
+  ldrsb	r1, [r4, #-4]!
+  ldrsb	r1, [r4, #0]!
+  ldrsb	lr, [r3], #255
+  ldrsb	r9, [r2], #4
+  ldrsb	r3, [sp], #-4
+  ldrsb.w	r0, [pc, #-0]
+  ldrsb.w	r12, [pc, #80]
+  ldrsb.w	r3, [pc, #0]
+  ldrsbt	r1, [r2]
+  ldrsbt	r1, [r8]
+  ldrsbt	r1, [r8, #3]
+  ldrsbt	r1, [r8, #255]
+  ldrsh	r5, [r5, #-4]
+  ldrsh.w	r5, [r6, #32]
+  ldrsh.w	r5, [r6, #33]
+  ldrsh.w	r5, [r6, #257]
+  ldrsh.w	lr, [r7, #257]
+  ldrsh	r10, [r5, #-0]
+  ldrsh.w	r1, [r8, r1]
+  ldrsh.w	r4, [r5, r2]
+  ldrsh.w	r6, [r0, r2, lsl #3]
+  ldrsh.w	r8, [r8, r2, lsl #2]
+  ldrsh.w	r7, [sp, r2, lsl #1]
+  ldrsh.w	r7, [sp, r2]
+  ldrsh	r5, [r8, #255]!
+  ldrsh	r2, [r5, #4]!
+  ldrsh	r1, [r4, #-4]!
+  ldrsh	r1, [r4, #0]!
+  ldrsh	lr, [r3], #255
+  ldrsh	r9, [r2], #4
+  ldrsh	r3, [sp], #-4
+  ldrsh.w	r0, [pc, #-0]
+  ldrsh.w	r10, [pc, #-231]
+  ldrsh.w	r6, [pc, #0]
+  ldrsht	r1, [r2]
+  ldrsht	r1, [r8]
+  ldrsht	r1, [r8, #3]
+  ldrsht	r1, [r8, #255]
+  ldrt	r1, [r2]
+  ldrt	r2, [r6]
+  ldrt	r3, [r7, #3]
+  ldrt	r4, [r9, #255]
+  lsl.w	r2, r3, #12
+  lsls.w	r8, r3, #31
+  lsls.w	r2, r3, #1
+  lsl.w	r2, r3, #4
+  lsls.w	r2, r12, #15
+  lsl.w	r3, r3, #19
+  lsls.w	r8, r8, #2
+  lsls.w	r7, r7, #5
+  lsl.w	r12, r12, #21
+  lsl.w	r3, r4, r2
+  lsl.w	r1, r1, r2
+  lsls.w	r3, r4, r8
+  lsr.w	r2, r3, #12
+  lsrs.w	r8, r3, #32
+  lsrs.w	r2, r3, #1
+  lsr.w	r2, r3, #4
+  lsrs.w	r2, r12, #15
+  lsr.w	r3, r3, #19
+  lsrs.w	r8, r8, #2
+  lsrs.w	r7, r7, #5
+  lsr.w	r12, r12, #21
+  lsr.w	r3, r4, r2
+  lsr.w	r1, r1, r2
+  lsrs.w	r3, r4, r8
+  str	r1, [sp, #952]
+  movs	r1, #87
+  str	r1, [sp, #1016]
+  add	r7, r10
+  ldrsb	r1, [r6, r7]
+  ldrsb	r1, [r6, r7]
+  mla	r1, r2, r3, r4
+  mls	r1, r2, r3, r4
+  movs	r1, #21
+  movs.w	r1, #21
+  movs.w	r8, #21
+  movw	r0, #65535
+  movw	r1, #43777
+  movw	r1, #43792
+  mov.w	r0, #66846720
+  mov.w	r0, #66846720
+  movs.w	r0, #66846720
+  movt	r3, #7
+  movt	r6, #65535
+  it	eq
+  movteq	r4, #4080
+  mrc	p14, #0, r1, c1, c2, #4
+  str	r2, [sp, #1016]
+  strb	r6, [r3, r0]
+  asrs	r4, r5, #7
+  strb	r7, [r2, r1]
+  asrs	r4, r7, #7
+  mrs	r8, apsr
+  mrs	r8, spsr
+  msr	APSR_nzcvq, r1
+  msr	APSR_g, r2
+  msr	APSR_nzcvq, r3
+  msr	APSR_nzcvq, r4
+  msr	APSR_nzcvqg, r5
+  msr	CPSR_fc, r6
+  msr	CPSR_c, r7
+  msr	CPSR_x, r8
+  msr	CPSR_fc, r9
+  msr	CPSR_fc, r11
+  msr	CPSR_fsx, r12
+  msr	SPSR_fc, r0
+  msr	SPSR_fsxc, r5
+  msr	CPSR_fsxc, r8
+  muls	r3, r4, r3
+  mul	r3, r4, r3
+  mul	r3, r4, r6
+  it	eq
+  muleq	r3, r4, r5
+  mvns	r8, #21
+  mvn	r0, #66846720
+  mvns	r0, #66846720
+  itte	eq
+  mvnseq	r1, #12
+  mvneq	r1, #12
+  mvnne	r1, #12
+  mvn.w	r2, r3
+  mvns	r2, r3
+  mvn.w	r5, r6, lsl #19
+  mvn.w	r5, r6, lsr #9
+  mvn.w	r5, r6, asr #4
+  mvn.w	r5, r6, ror #6
+  mvn.w	r5, r6, rrx
+  it	eq
+  mvneq	r2, r3
+  nop.w
+  orn	r4, r5, #61440
+  orn	r4, r5, r6
+  orns	r4, r5, r6
+  orn	r4, r5, r6, lsl #5
+  orns	r4, r5, r6, lsr #5
+  orn	r4, r5, r6, lsr #5
+  orns	r4, r5, r6, asr #5
+  orn	r4, r5, r6, ror #5
+  orr	r4, r5, #61440
+  orr.w	r4, r5, r6
+  orr.w	r4, r5, r6, lsl #5
+  orrs.w	r4, r5, r6, lsr #5
+  orr.w	r4, r5, r6, lsr #5
+  orrs.w	r4, r5, r6, asr #5
+  orr.w	r4, r5, r6, ror #5
+  pkhbt	r2, r2, r3
+  pkhbt	r2, r2, r3, lsl #31
+  pkhbt	r2, r2, r3, lsl #15
+  pkhtb	r2, r2, r3, asr #31
+  pkhtb	r2, r2, r3, asr #15
+  pld	[r5, #-4]
+  pld	[r6, #32]
+  pld	[r6, #33]
+  pld	[r6, #257]
+  pld	[r7, #257]
+  pld	[r8, r1]
+  pld	[r5, r2]
+  pld	[r0, r2, lsl #3]
+  pld	[r8, r2, lsl #2]
+  pld	[sp, r2, lsl #1]
+  pld	[sp, r2]
+  pld	[pc, #-0]
+  pld	[pc, #455]
+  pld	[pc, #0]
+  pli	[r5, #-4]
+  pli	[r6, #32]
+  pli	[r6, #33]
+  pli	[r6, #257]
+  pli	[r7, #257]
+  pli	[r8, r1]
+  pli	[r5, r2]
+  pli	[r0, r2, lsl #3]
+  pli	[r8, r2, lsl #2]
+  pli	[sp, r2, lsl #1]
+  pli	[sp, r2]
+  pli	[pc, #-0]
+  pli	[pc, #-328]
+  pli	[pc, #0]
+  qadd	r1, r2, r3
+  qadd16	r1, r2, r3
+  qadd8	r1, r2, r3
+  itte	gt
+  qaddgt	r1, r2, r3
+  qadd16gt	r1, r2, r3
+  qadd8le	r1, r2, r3
+  qdadd	r6, r7, r8
+  qdsub	r6, r7, r8
+  itt	hi
+  qdaddhi	r6, r7, r8
+  qdsubhi	r6, r7, r8
+  qsax	r9, r12, r0
+  it	eq
+  qsaxeq	r9, r12, r0
+  qsub	r1, r2, r3
+  qsub16	r1, r2, r3
+  qsub8	r1, r2, r3
+  itet	le
+  qsuble	r1, r2, r3
+  qsub16gt	r1, r2, r3
+  qsub8le	r1, r2, r3
+  rbit	r1, r2
+  it	ne
+  rbitne	r1, r2
+  rev.w	r1, r2
+  rev.w	r2, r8
+  itt	ne
+  revne	r1, r2
+  revne.w	r1, r8
+  rev16.w	r1, r2
+  rev16.w	r2, r8
+  itt	ne
+  rev16ne	r1, r2
+  rev16ne.w	r1, r8
+  revsh.w	r1, r2
+  revsh.w	r2, r8
+  itt	ne
+  revshne	r1, r2
+  revshne.w	r1, r8
+  ror.w	r2, r3, #12
+  rors.w	r8, r3, #31
+  rors.w	r2, r3, #1
+  ror.w	r2, r3, #4
+  rors.w	r2, r12, #15
+  ror.w	r3, r3, #19
+  rors.w	r8, r8, #2
+  rors.w	r7, r7, #5
+  ror.w	r12, r12, #21
+  ror.w	r3, r4, r2
+  ror.w	r1, r1, r2
+  rors.w	r3, r4, r8
+  rrx	r1, r2
+  rrxs	r1, r2
+  ite	lt
+  rrxlt	r9, r12
+  rrxsge	r8, r3
+  rsb.w	r2, r5, #1044480
+  rsbs.w	r3, r12, #15
+  rsb.w	r1, r1, #255
+  rsb	r4, r4, r8
+  rsb	r4, r9, r8
+  rsb	r1, r4, r8, asr #3
+  rsbs	r2, r1, r7, lsl #1
+  sadd16	r3, r4, r8
+  it	ne
+  sadd16ne	r3, r4, r8
+  sadd8	r3, r4, r8
+  it	ne
+  sadd8ne	r3, r4, r8
+  sasx	r9, r2, r7
+  it	ne
+  sasxne	r2, r5, r6
+  sbc	r0, r1, #4
+  sbcs	r0, r1, #0
+  sbc	r1, r2, #255
+  sbc	r3, r7, #5570645
+  sbc	r8, r12, #2852170240
+  sbc	r9, r7, #2779096485
+  sbc	r5, r3, #2264924160
+  sbc	r4, r2, #2139095040
+  sbc	r4, r2, #1664
+  sbc.w	r4, r5, r6
+  sbcs.w	r4, r5, r6
+  sbc.w	r9, r1, r3
+  sbcs.w	r9, r1, r3
+  sbc.w	r0, r1, r3, ror #4
+  sbcs.w	r0, r1, r3, lsl #7
+  sbc.w	r0, r1, r3, lsr #31
+  sbcs.w	r0, r1, r3, asr #32
+  sbfx	r4, r5, #16, #1
+  it	gt
+  sbfxgt	r4, r5, #16, #16
+  sel	r5, r9, r2
+  it	le
+  selle	r5, r9, r2
+  sev.w
+  it	eq
+  seveq.w
+  sadd16	r1, r2, r3
+  sadd8	r1, r2, r3
+  ite	gt
+  sadd16gt	r1, r2, r3
+  sadd8le	r1, r2, r3
+  shasx	r4, r8, r2
+  it	gt
+  shasxgt	r4, r8, r2
+  shsax	r4, r8, r2
+  it	gt
+  shsaxgt	r4, r8, r2
+  shsub16	r4, r8, r2
+  shsub8	r4, r8, r2
+  itt	gt
+  shsub16gt	r4, r8, r2
+  shsub8gt	r4, r8, r2
+  smlabb	r3, r1, r9, r0
+  smlabt	r5, r6, r4, r1
+  smlatb	r4, r2, r3, r2
+  smlatt	r8, r3, r8, r4
+  itete	gt
+  smlabbgt	r3, r1, r9, r0
+  smlabtle	r5, r6, r4, r1
+  smlatbgt	r4, r2, r3, r2
+  smlattle	r8, r3, r8, r4
+  smlad	r2, r3, r5, r8
+  smladx	r2, r3, r5, r8
+  itt	hi
+  smladhi	r2, r3, r5, r8
+  smladxhi	r2, r3, r5, r8
+  smlal	r2, r3, r5, r8
+  it	eq
+  smlaleq	r2, r3, r5, r8
+  smlalbb	r3, r1, r9, r0
+  smlalbt	r5, r6, r4, r1
+  smlaltb	r4, r2, r3, r2
+  smlaltt	r8, r3, r8, r4
+  iteet	ge
+  smlalbbge	r3, r1, r9, r0
+  smlalbtlt	r5, r6, r4, r1
+  smlaltblt	r4, r2, r3, r2
+  smlalttge	r8, r3, r8, r4
+  smlald	r2, r3, r5, r8
+  smlaldx	r2, r3, r5, r8
+  ite	eq
+  smlaldeq	r2, r3, r5, r8
+  smlaldxne	r2, r3, r5, r8
+  smlawb	r2, r3, r10, r8
+  smlawt	r8, r3, r5, r9
+  ite	eq
+  smlawbeq	r2, r7, r5, r8
+  smlawtne	r1, r3, r0, r8
+  smlsd	r2, r3, r5, r8
+  smlsdx	r2, r3, r5, r8
+  ite	le
+  smlsdle	r2, r3, r5, r8
+  smlsdxgt	r2, r3, r5, r8
+  smlsld	r2, r9, r5, r1
+  smlsldx	r4, r11, r2, r8
+  ite	ge
+  smlsldge	r8, r2, r5, r6
+  smlsldxlt	r1, r0, r3, r8
+  smmla	r1, r2, r3, r4
+  smmlar	r4, r3, r2, r1
+  ite	lo
+  smmlalo	r1, r2, r3, r4
+  smmlarhs	r4, r3, r2, r1
+  smmls	r1, r2, r3, r4
+  smmlsr	r4, r3, r2, r1
+  ite	lo
+  smmlslo	r1, r2, r3, r4
+  smmlsrhs	r4, r3, r2, r1
+  ssat	r9, #30, r0, asr #2
+  str	r10, [r11], #0
+  strd	r1, r1, [r0], #0
+  strd	r6, r3, [r5], #-8
+  strd	r8, r5, [r5], #-0
+  strd	r7, r4, [r5], #-4
+  strd	r0, r1, [r2, #-0]!
+  strd	r0, r1, [r2, #0]!
+  strd	r0, r1, [r2, #-0]
+  strex	r1, r8, [r4]
+  strex	r8, r2, [r4]
+  strex	r2, r12, [sp, #128]
+  strexb	r5, r1, [r7]
+  strexh	r9, r7, [r12]
+  strexd	r9, r3, r6, [r4]
+  strh	r5, [r5, #-4]
+  strh	r5, [r6, #32]
+  strh.w	r5, [r6, #33]
+  strh.w	r5, [r6, #257]
+  strh.w	lr, [r7, #257]
+  strh	r5, [r8, #255]!
+  strh	r2, [r5, #4]!
+  strh	r1, [r4, #-4]!
+  strh	r1, [r4, #0]!
+  strh	lr, [r3], #255
+  strh	r9, [r2], #4
+  strh	r3, [sp], #-4
+  strh.w	r1, [r8, r1]
+  strh.w	r4, [r5, r2]
+  strh.w	r6, [r0, r2, lsl #3]
+  strh.w	r8, [r8, r2, lsl #2]
+  strh.w	r7, [sp, r2, lsl #1]
+  strh.w	r7, [sp, r2]
+  strht	r1, [r2]
+  strht	r1, [r8]
+  strht	r1, [r8, #3]
+  strht	r1, [r8, #255]
+  strt	r1, [r2]
+  strt	r1, [r8]
+  strt	r1, [r8, #3]
+  strt	r1, [r8, #255]
+  itet	eq
+  subeq	r1, r2, #4
+  subwne	r5, r3, #1023
+  subweq	r4, r5, #293
+  sub.w	r2, sp, #1024
+  sub.w	r2, r8, #65280
+  subw	r2, r3, #257
+  sub.w	r12, r6, #256
+  subw	r12, r6, #256
+  subs.w	r1, r2, #496
+  subs	pc, lr, #4
+  sub.w	r4, r5, r6
+  sub.w	r4, r5, r6, lsl #5
+  sub.w	r4, r5, r6, lsr #5
+  sub.w	r4, r5, r6, lsr #5
+  sub.w	r4, r5, r6, asr #5
+  sub.w	r4, r5, r6, ror #5
+  sub.w	r5, r2, r12, rrx
+  svc	#0
+  ite	eq
+  svceq	#255
+  svcne	#33
+  sxtab	r2, r3, r4
+  sxtab	r4, r5, r6
+  it	lt
+  sxtablt	r6, r2, r9, ror #8
+  sxtab	r5, r1, r4, ror #16
+  sxtab	r7, r8, r3, ror #24
+  sxtab16	r6, r2, r7
+  sxtab16	r3, r5, r8, ror #8
+  sxtab16	r3, r2, r1, ror #16
+  ite	ne
+  sxtab16ne	r0, r1, r4
+  sxtab16eq	r1, r2, r3, ror #24
+  sxtah	r1, r3, r9
+  sxtah	r3, r8, r3, ror #8
+  sxtah	r9, r3, r3, ror #24
+  ite	hi
+  sxtahhi	r6, r1, r6
+  sxtahls	r2, r2, r4, ror #16
+  sxtb	r5, r6
+  sxtb.w	r6, r9, ror #8
+  sxtb.w	r8, r3, ror #24
+  ite	ge
+  sxtbge	r2, r4
+  sxtblt.w	r5, r1, ror #16
+  sxtb16	r1, r4
+  sxtb16	r6, r7
+  sxtb16	r3, r1, ror #16
+  ite	hs
+  sxtb16hs	r3, r5, ror #8
+  sxtb16lo	r2, r3, ror #24
+  sxth	r1, r6
+  sxth.w	r3, r8, ror #8
+  sxth.w	r9, r3, ror #24
+  itt	ne
+  sxthne.w	r3, r9
+  sxthne.w	r2, r2, ror #16
+  sxtb	r5, r6
+  sxtb.w	r6, r9, ror #8
+  sxtb.w	r8, r3, ror #24
+  ite	ge
+  sxtbge	r2, r4
+  sxtblt.w	r5, r1, ror #16
+  sxtb16	r1, r4
+  sxtb16	r6, r7
+  sxtb16	r3, r1, ror #16
+  ite	hs
+  sxtb16hs	r3, r5, ror #8
+  sxtb16lo	r2, r3, ror #24
+  sxth	r1, r6
+  sxth.w	r3, r8, ror #8
+  sxth.w	r9, r3, ror #24
+  itt	ne
+  sxthne.w	r3, r9
+  sxthne.w	r2, r2, ror #16
+  tbb	[r3, r8]
+  tbh	[r3, r8, lsl #1]
+  it	eq
+  tbbeq	[r3, r8]
+  it	hs
+  tbhhs	[r3, r8, lsl #1]
+  teq.w	r5, #61440
+  teq.w	r4, r5
+  teq.w	r4, r5, lsl #5
+  teq.w	r4, r5, lsr #5
+  teq.w	r4, r5, lsr #5
+  teq.w	r4, r5, asr #5
+  teq.w	r4, r5, ror #5
+  tst.w	r5, #61440
+  tst	r2, r5
+  tst.w	r3, r12, lsl #5
+  tst.w	r4, r11, lsr #4
+  tst.w	r5, r10, lsr #12
+  tst.w	r6, r9, asr #30
+  tst.w	r7, r8, ror #2
+  uadd16	r1, r2, r3
+  uadd8	r1, r2, r3
+  ite	gt
+  uadd16gt	r1, r2, r3
+  uadd8le	r1, r2, r3
+  uasx	r9, r12, r0
+  it	eq
+  uasxeq	r9, r12, r0
+  uasx	r9, r12, r0
+  it	eq
+  uasxeq	r9, r12, r0
+  ubfx	r4, r5, #16, #1
+  it	gt
+  ubfxgt	r4, r5, #16, #16
+  uhadd16	r4, r8, r2
+  uhadd8	r4, r8, r2
+  itt	gt
+  uhadd16gt	r4, r8, r2
+  uhadd8gt	r4, r8, r2
+  uhasx	r4, r1, r5
+  uhsax	r5, r6, r6
+  itt	gt
+  uhasxgt	r6, r9, r8
+  uhsaxgt	r7, r8, r12
+  uhsub16	r5, r8, r3
+  uhsub8	r1, r7, r6
+  itt	lt
+  uhsub16lt	r4, r9, r12
+  uhsub8lt	r3, r1, r5
+  umaal	r3, r4, r5, r6
+  it	lt
+  umaallt	r3, r4, r5, r6
+  umlal	r2, r4, r6, r8
+  it	gt
+  umlalgt	r6, r1, r2, r6
+  umull	r2, r4, r6, r8
+  it	gt
+  umullgt	r6, r1, r2, r6
+  uqadd16	r1, r2, r3
+  uqadd8	r3, r4, r8
+  ite	gt
+  uqadd16gt	r4, r7, r9
+  uqadd8le	r8, r1, r2
+  uqasx	r1, r2, r3
+  uqsax	r3, r4, r8
+  ite	gt
+  uqasxgt	r4, r7, r9
+  uqsaxle	r8, r1, r2
+  uqsub8	r8, r2, r9
+  uqsub16	r1, r9, r7
+  ite	gt
+  uqsub8gt	r3, r1, r6
+  uqsub16le	r4, r6, r4
+  usad8	r1, r9, r7
+  usada8	r8, r2, r9, r12
+  ite	gt
+  usada8gt	r3, r1, r6, r9
+  usad8le	r4, r6, r4
+  usat	r8, #1, r10
+  usat	r8, #4, r10
+  usat	r8, #5, r10, lsl #31
+  usat	r8, #16, r10, asr #1
+  usat16	r2, #2, r7
+  usat16	r3, #15, r5
+  usax	r2, r3, r4
+  it	ne
+  usaxne	r6, r1, r9
+  usax	r2, r3, r4
+  it	ne
+  usaxne	r6, r1, r9
+  usub16	r4, r2, r7
+  usub8	r1, r8, r5
+  ite	hi
+  usub16hi	r1, r1, r3
+  usub8ls	r9, r2, r3
+  uxtab	r2, r3, r4
+  uxtab	r4, r5, r6
+  it	lt
+  uxtablt	r6, r2, r9, ror #8
+  uxtab	r5, r1, r4, ror #16
+  uxtab	r7, r8, r3, ror #24
+  it	ge
+  uxtab16ge	r0, r1, r4
+  uxtab16	r6, r2, r7
+  uxtab16	r3, r5, r8, ror #8
+  uxtab16	r3, r2, r1, ror #16
+  it	eq
+  uxtab16eq	r1, r2, r3, ror #24
+  uxtah	r1, r3, r9
+  it	hi
+  uxtahhi	r6, r1, r6
+  uxtah	r3, r8, r3, ror #8
+  it	lo
+  uxtahlo	r2, r2, r4, ror #16
+  uxtah	r9, r3, r3, ror #24
+  it	ge
+  uxtbge	r2, r4
+  uxtb	r5, r6
+  uxtb.w	r6, r9, ror #8
+  it	lo
+  uxtblo.w	r5, r1, ror #16
+  uxtb.w	r8, r3, ror #24
+  uxtb16	r1, r4
+  uxtb16	r6, r7
+  it	hs
+  uxtb16hs	r3, r5, ror #8
+  uxtb16	r3, r1, ror #16
+  it	ge
+  uxtb16ge	r2, r3, ror #24
+  it	ne
+  uxthne.w	r3, r9
+  uxth	r1, r6
+  uxth.w	r3, r8, ror #8
+  it	le
+  uxthle.w	r2, r2, ror #16
+  uxth.w	r9, r3, ror #24
+  wfe
+  wfi
+  yield
+  itet	lt
+  wfelt
+  wfige
+  yieldlt
+  hint	#6
+  hint.w	#6
+  hint.w	#102
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.50                        adc	r0, r1, #4
+# CHECK-NEXT:  1      1     0.50                        adcs	r0, r1, #0
+# CHECK-NEXT:  1      1     0.50                        adc	r1, r2, #255
+# CHECK-NEXT:  1      1     0.50                        adc	r3, r7, #5570645
+# CHECK-NEXT:  1      1     0.50                        adc	r8, r12, #2852170240
+# CHECK-NEXT:  1      1     0.50                        adc	r9, r7, #2779096485
+# CHECK-NEXT:  1      1     0.50                        adc	r5, r3, #2264924160
+# CHECK-NEXT:  1      1     0.50                        adc	r4, r2, #2139095040
+# CHECK-NEXT:  1      1     0.50                        adc	r4, r2, #1664
+# CHECK-NEXT:  1      1     0.50                        adc.w	r4, r5, r6
+# CHECK-NEXT:  1      1     0.50                        adcs.w	r4, r5, r6
+# CHECK-NEXT:  1      1     0.50                        adc.w	r9, r1, r3
+# CHECK-NEXT:  1      1     0.50                        adcs.w	r9, r1, r3
+# CHECK-NEXT:  1      2     1.00                        adc.w	r0, r1, r3, ror #4
+# CHECK-NEXT:  1      2     1.00                        adcs.w	r0, r1, r3, lsl #7
+# CHECK-NEXT:  1      2     1.00                        adc.w	r0, r1, r3, lsr #31
+# CHECK-NEXT:  1      2     1.00                        adcs.w	r0, r1, r3, asr #32
+# CHECK-NEXT:  0      0     0.00                  U     itet	eq
+# CHECK-NEXT:  1      1     0.50                        addeq	r1, r2, #4
+# CHECK-NEXT:  1      1     0.50                        addwne	r5, r3, #1023
+# CHECK-NEXT:  1      1     0.50                        addweq	r4, r5, #293
+# CHECK-NEXT:  1      1     0.50                        add.w	r2, sp, #1024
+# CHECK-NEXT:  1      1     0.50                        add.w	r2, r8, #65280
+# CHECK-NEXT:  1      1     0.50                        addw	r2, r3, #257
+# CHECK-NEXT:  1      1     0.50                        add.w	r12, r6, #256
+# CHECK-NEXT:  1      1     0.50                        addw	r12, r6, #256
+# CHECK-NEXT:  1      1     0.50                        adds.w	r1, r2, #496
+# CHECK-NEXT:  1      1     0.50                        add.w	r1, r2, r8
+# CHECK-NEXT:  1      2     1.00                        add.w	r5, r9, r2, asr #32
+# CHECK-NEXT:  1      2     1.00                        adds.w	r7, r3, r1, lsl #31
+# CHECK-NEXT:  1      2     1.00                        adds.w	r0, r3, r6, lsr #25
+# CHECK-NEXT:  1      2     1.00                        add.w	r4, r8, r1, ror #12
+# CHECK-NEXT:  1      1     0.50                  U     adr.w	r11, #-3270
+# CHECK-NEXT:  1      1     0.50                  U     adr.w	r11, #-826
+# CHECK-NEXT:  1      1     0.50                        subw	r1, pc, #0
+# CHECK-NEXT:  1      1     0.50                  U     adr.w	r0, #1024
+# CHECK-NEXT:  1      1     0.50                        and	r2, r5, #1044480
+# CHECK-NEXT:  1      1     0.50                        ands	r3, r12, #15
+# CHECK-NEXT:  1      1     0.50                        and	r1, r1, #255
+# CHECK-NEXT:  1      1     0.50                        and.w	r4, r9, r8
+# CHECK-NEXT:  1      2     1.00                        and.w	r1, r4, r8, asr #3
+# CHECK-NEXT:  1      2     1.00                        ands.w	r2, r1, r7, lsl #1
+# CHECK-NEXT:  1      2     1.00                        ands.w	r4, r5, r2, lsr #20
+# CHECK-NEXT:  1      2     1.00                        and.w	r9, r12, r1, ror #17
+# CHECK-NEXT:  1      1     0.50                        asr.w	r2, r3, #12
+# CHECK-NEXT:  1      2     1.00                        asrs.w	r8, r3, #32
+# CHECK-NEXT:  1      2     1.00                        asrs.w	r2, r3, #1
+# CHECK-NEXT:  1      1     0.50                        asr.w	r2, r3, #4
+# CHECK-NEXT:  1      2     1.00                        asrs.w	r2, r12, #15
+# CHECK-NEXT:  1      1     0.50                        asr.w	r3, r3, #19
+# CHECK-NEXT:  1      2     1.00                        asrs.w	r8, r8, #2
+# CHECK-NEXT:  1      2     1.00                        asrs.w	r7, r7, #5
+# CHECK-NEXT:  1      1     0.50                        asr.w	r12, r12, #21
+# CHECK-NEXT:  1      1     0.50                        asr.w	r3, r4, r2
+# CHECK-NEXT:  1      1     0.50                        asr.w	r1, r1, r2
+# CHECK-NEXT:  1      2     1.00                        asrs.w	r3, r4, r8
+# CHECK-NEXT:  1      1     1.00                  U     bmi.w	#-183396
+# CHECK-NEXT:  1      1     1.00                        b.w	#208962
+# CHECK-NEXT:  1      1     1.00                        b.w	#-16777216
+# CHECK-NEXT:  1      2     1.00                        bfc	r5, #3, #17
+# CHECK-NEXT:  0      0     0.00                  U     it	lo
+# CHECK-NEXT:  1      2     1.00                        bfclo	r5, #3, #17
+# CHECK-NEXT:  1      2     1.00                        bfi	r5, r2, #3, #17
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  1      2     1.00                        bfine	r5, r2, #3, #17
+# CHECK-NEXT:  1      2     1.00                        bfi	r6, r0, #0, #32
+# CHECK-NEXT:  1      2     1.00                        bfi	r6, r0, #31, #1
+# CHECK-NEXT:  1      1     0.50                        bic	r10, r1, #15
+# CHECK-NEXT:  1      1     0.50                        bic.w	r12, r3, r6
+# CHECK-NEXT:  1      2     1.00                        bic.w	r11, r2, r6, lsl #12
+# CHECK-NEXT:  1      2     1.00                        bic.w	r8, r4, r1, lsr #11
+# CHECK-NEXT:  1      2     1.00                        bic.w	r7, r5, r7, lsr #15
+# CHECK-NEXT:  1      2     1.00                        bic.w	r6, r7, r9, asr #32
+# CHECK-NEXT:  1      2     1.00                        bic.w	r5, r6, r8, ror #1
+# CHECK-NEXT:  1      1     0.50                        bic	r1, r1, #15
+# CHECK-NEXT:  1      1     0.50                        bic.w	r1, r1, r1
+# CHECK-NEXT:  1      2     1.00                        bic.w	r4, r4, r2, lsl #31
+# CHECK-NEXT:  1      2     1.00                        bic.w	r6, r6, r3, lsr #12
+# CHECK-NEXT:  1      2     1.00                        bic.w	r7, r7, r4, lsr #7
+# CHECK-NEXT:  1      2     1.00                        bic.w	r8, r8, r5, asr #15
+# CHECK-NEXT:  1      2     1.00                        bic.w	r12, r12, r6, ror #29
+# CHECK-NEXT:  2      3     1.00                  U     bxj	r5
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  2      3     1.00                  U     bxjne	r7
+# CHECK-NEXT:  1      1     1.00                  U     cbnz	r7, #6
+# CHECK-NEXT:  1      1     1.00                  U     cbnz	r7, #12
+# CHECK-NEXT:  1      1     1.00                  U     cbz	r4, #64
+# CHECK-NEXT:  1      1     1.00           *            strh	r6, [r5, #14]
+# CHECK-NEXT:  1      2     1.00                        asrs	r7, r2, #4
+# CHECK-NEXT:  1      1     1.00           *            strh	r6, [r7, #14]
+# CHECK-NEXT:  0      0     0.00                  U     itett	ne
+# CHECK-NEXT:  1      1     0.50                        cmpne	r7, #243
+# CHECK-NEXT:  1      1     0.50                        addeq	r7, r1, r2
+# CHECK-NEXT:  1      1     1.00           *            strh	r2, [r7, #22]
+# CHECK-NEXT:  1      2     1.00                        asrs	r1, r6, #7
+# CHECK-NEXT:  1      2     1.00                        lsrs	r1, r6, #31
+# CHECK-NEXT:  1      1     0.50                        adds	r7, r1, r0
+# CHECK-NEXT:  1      2     1.00                        lsls	r3, r5, #27
+# CHECK-NEXT:  1      2     1.00                        asrs	r7, r1, #4
+# CHECK-NEXT:  1      1     1.00           *            strh	r3, [r5, #54]
+# CHECK-NEXT:  1      2     1.00                        asrs	r7, r5, #4
+# CHECK-NEXT:  1      1     1.00           *            str	r6, [sp, #940]
+# CHECK-NEXT:  1      1     0.50                        adds	r7, r5, #4
+# CHECK-NEXT:  1      1     1.00           *            str	r6, [sp, #940]
+# CHECK-NEXT:  1      2     1.00                        asrs	r7, r5, #4
+# CHECK-NEXT:  1      1     0.50                  U     adr	r6, #940
+# CHECK-NEXT:  1      2     1.00                        asrs	r7, r5, #4
+# CHECK-NEXT:  1      1     0.50                        cmp	r7, #182
+# CHECK-NEXT:  1      1     0.50                        cmp.w	r5, #65280
+# CHECK-NEXT:  1      1     0.50                        cmp.w	r4, r12
+# CHECK-NEXT:  1      2     1.00                        cmp.w	r9, r6, lsl #12
+# CHECK-NEXT:  1      2     1.00                        cmp.w	r3, r7, lsr #31
+# CHECK-NEXT:  1      2     1.00                        cmp.w	sp, r6, lsr #1
+# CHECK-NEXT:  1      2     1.00                        cmp.w	r2, r5, asr #24
+# CHECK-NEXT:  1      2     1.00                        cmp.w	r1, r4, ror #15
+# CHECK-NEXT:  0      0     0.00    *      *      U     dbg	#5
+# CHECK-NEXT:  0      0     0.00    *      *      U     dbg	#0
+# CHECK-NEXT:  0      0     0.00    *      *      U     dbg	#15
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	sy
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	st
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	ld
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	#0xc
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	ish
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	ishst
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	ishld
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	#0x8
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	nsh
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	nshst
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	nshld
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	#0x4
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	osh
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	oshst
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	oshld
+# CHECK-NEXT:  0      0     0.00    *      *      U     dmb	#0x0
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	sy
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	st
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	ld
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	#0xc
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	ish
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	ishst
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	ishld
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	#0x8
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	nsh
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	nshst
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	nshld
+# CHECK-NEXT:  0      0     0.00    *      *      U     pssbb
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	osh
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	oshst
+# CHECK-NEXT:  0      0     0.00    *      *      U     dsb	oshld
+# CHECK-NEXT:  0      0     0.00    *      *      U     ssbb
+# CHECK-NEXT:  1      1     0.50                        eor	r4, r5, #61440
+# CHECK-NEXT:  1      1     0.50                        eor.w	r4, r5, r6
+# CHECK-NEXT:  1      2     1.00                        eor.w	r4, r5, r6, lsl #5
+# CHECK-NEXT:  1      2     1.00                        eor.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        eor.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        eor.w	r4, r5, r6, asr #5
+# CHECK-NEXT:  1      2     1.00                        eor.w	r4, r5, r6, ror #5
+# CHECK-NEXT:  0      0     0.00    *      *      U     isb	sy
+# CHECK-NEXT:  0      0     0.00    *      *      U     isb	#0xa
+# CHECK-NEXT:  0      0     0.00                  U     iteet	eq
+# CHECK-NEXT:  1      1     0.50                        addeq	r0, r1, r2
+# CHECK-NEXT:  0      0     0.00    *      *      U     nopne
+# CHECK-NEXT:  1      1     0.50                        subne	r5, r6, r7
+# CHECK-NEXT:  1      1     0.50                        addeq	r1, r2, #4
+# CHECK-NEXT:  0      0     0.00                  U     ittee	ls
+# CHECK-NEXT:  1      1     0.50                        addls	r0, r1, r2
+# CHECK-NEXT:  0      0     0.00    *      *      U     nopls
+# CHECK-NEXT:  1      1     0.50                        subhi	r5, r6, r7
+# CHECK-NEXT:  1      1     0.50                        addhi	r1, r2, #4
+# CHECK-NEXT:  8      5     4.00    *                   ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  2      3     2.00    *                   ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  4      3     2.00    *                   ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  8      5     4.00    *                   ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  2      3     2.00    *                   ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  4      3     2.00    *                   ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  4      3     2.00    *                   ldm.w	r5!, {r1, r2}
+# CHECK-NEXT:  4      4     2.00    *                   ldm.w	r2, {r1, r2}
+# CHECK-NEXT:  8      5     4.00    *                   ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  2      3     2.00    *                   ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  4      3     2.00    *                   ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  8      5     4.00    *                   ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  2      3     2.00    *                   ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  4      3     2.00    *                   ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  4      3     2.00    *                   ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  8      5     4.00    *                   ldmdb	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  2      3     2.00    *                   ldmdb	r4, {r5, r6}
+# CHECK-NEXT:  4      3     2.00    *                   ldmdb	r5!, {r3, r8}
+# CHECK-NEXT:  4      3     2.00    *                   ldmdb	r5!, {r3, r8}
+# CHECK-NEXT:  1      4     1.00    *                   ldr	r5, [r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *                   ldr	r5, [r6, #32]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r5, [r6, #33]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r5, [r6, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	pc, [r7, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r4, [pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r2, [pc, #-40]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r1, [pc, #1024]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r1, [r8, r1]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r4, [r5, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *                   ldr.w	r7, [sp, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldr	pc, [sp], #12
+# CHECK-NEXT:  1      4     1.00    *                   ldr	r2, [r4, #255]!
+# CHECK-NEXT:  1      4     1.00    *                   ldr	r8, [sp, #4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldr	lr, [sp, #-4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldr	lr, [sp, #0]!
+# CHECK-NEXT:  1      4     1.00    *                   ldr	r2, [r4], #255
+# CHECK-NEXT:  1      4     1.00    *                   ldr	r8, [sp], #4
+# CHECK-NEXT:  1      4     1.00    *                   ldr	lr, [sp], #-4
+# CHECK-NEXT:  1      4     1.00    *                   ldrb	r5, [r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r5, [r6, #32]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r5, [r6, #33]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r5, [r6, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	lr, [r7, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r1, [r8, r1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r4, [r5, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r7, [sp, r2]
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	r5, [r8, #255]!
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	r2, [r5, #4]!
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	r1, [r4, #-4]!
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	r1, [r4, #0]!
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	lr, [r3], #255
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	r9, [r2], #4
+# CHECK-NEXT:  2      4     1.00    *                   ldrb	r3, [sp], #-4
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r6, [pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r10, [pc, #227]
+# CHECK-NEXT:  1      4     1.00    *                   ldrb.w	r5, [pc]
+# CHECK-NEXT:  1      4     1.00                  U     ldrbt	r1, [r2]
+# CHECK-NEXT:  1      4     1.00                  U     ldrbt	r1, [r8]
+# CHECK-NEXT:  1      4     1.00                  U     ldrbt	r1, [r8, #3]
+# CHECK-NEXT:  1      4     1.00                  U     ldrbt	r1, [r8, #255]
+# CHECK-NEXT:  2      4     2.00    *                   ldrd	r3, r5, [r6, #24]
+# CHECK-NEXT:  4      4     2.00    *                   ldrd	r3, r5, [r6, #24]!
+# CHECK-NEXT:  4      4     2.00    *                   ldrd	r3, r5, [r6], #4
+# CHECK-NEXT:  4      4     2.00    *                   ldrd	r3, r5, [r6], #-8
+# CHECK-NEXT:  2      4     2.00    *                   ldrd	r3, r5, [r6]
+# CHECK-NEXT:  2      4     2.00    *                   ldrd	r8, r1, [r3]
+# CHECK-NEXT:  4      4     2.00    *                   ldrd	r0, r1, [r2], #-0
+# CHECK-NEXT:  4      4     2.00    *                   ldrd	r0, r1, [r2, #-0]!
+# CHECK-NEXT:  4      4     2.00    *                   ldrd	r0, r1, [r2, #0]!
+# CHECK-NEXT:  2      4     2.00    *                   ldrd	r0, r1, [r2, #-0]
+# CHECK-NEXT:  0      0     0.00    *      *      U     ldrex	r1, [r4]
+# CHECK-NEXT:  0      0     0.00    *      *      U     ldrex	r8, [r4]
+# CHECK-NEXT:  0      0     0.00    *      *      U     ldrex	r2, [sp, #128]
+# CHECK-NEXT:  0      0     0.00    *      *      U     ldrexb	r5, [r7]
+# CHECK-NEXT:  0      0     0.00    *      *      U     ldrexh	r9, [r12]
+# CHECK-NEXT:  0      0     0.00    *             U     ldrexd	r9, r3, [r4]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r5, [r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r5, [r6, #32]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r5, [r6, #33]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r5, [r6, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	lr, [r7, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r1, [r8, r1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r4, [r5, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r7, [sp, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r5, [r8, #255]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r2, [r5, #4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r1, [r4, #-4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r1, [r4, #0]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	lr, [r3], #255
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r9, [r2], #4
+# CHECK-NEXT:  1      4     1.00    *                   ldrh	r3, [sp], #-4
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r7, [pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r5, [pc, #121]
+# CHECK-NEXT:  1      4     1.00    *                   ldrh.w	r4, [pc]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r5, [r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r5, [r6, #32]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r5, [r6, #33]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r5, [r6, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	lr, [r7, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r1, [r8, r1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r4, [r5, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r7, [sp, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r5, [r8, #255]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r2, [r5, #4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r1, [r4, #-4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r1, [r4, #0]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	lr, [r3], #255
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r9, [r2], #4
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r3, [sp], #-4
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r0, [pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r12, [pc, #80]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb.w	r3, [pc]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsbt	r1, [r2]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsbt	r1, [r8]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsbt	r1, [r8, #3]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsbt	r1, [r8, #255]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r5, [r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r5, [r6, #32]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r5, [r6, #33]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r5, [r6, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	lr, [r7, #257]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r10, [r5, #-0]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r1, [r8, r1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r4, [r5, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r7, [sp, r2]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r5, [r8, #255]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r2, [r5, #4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r1, [r4, #-4]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r1, [r4, #0]!
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	lr, [r3], #255
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r9, [r2], #4
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh	r3, [sp], #-4
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r0, [pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r10, [pc, #-231]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsh.w	r6, [pc]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsht	r1, [r2]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsht	r1, [r8]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsht	r1, [r8, #3]
+# CHECK-NEXT:  1      4     1.00                  U     ldrsht	r1, [r8, #255]
+# CHECK-NEXT:  1      4     1.00                  U     ldrt	r1, [r2]
+# CHECK-NEXT:  1      4     1.00                  U     ldrt	r2, [r6]
+# CHECK-NEXT:  1      4     1.00                  U     ldrt	r3, [r7, #3]
+# CHECK-NEXT:  1      4     1.00                  U     ldrt	r4, [r9, #255]
+# CHECK-NEXT:  1      1     0.50                        lsl.w	r2, r3, #12
+# CHECK-NEXT:  1      2     1.00                        lsls.w	r8, r3, #31
+# CHECK-NEXT:  1      2     1.00                        lsls.w	r2, r3, #1
+# CHECK-NEXT:  1      1     0.50                        lsl.w	r2, r3, #4
+# CHECK-NEXT:  1      2     1.00                        lsls.w	r2, r12, #15
+# CHECK-NEXT:  1      1     0.50                        lsl.w	r3, r3, #19
+# CHECK-NEXT:  1      2     1.00                        lsls.w	r8, r8, #2
+# CHECK-NEXT:  1      2     1.00                        lsls.w	r7, r7, #5
+# CHECK-NEXT:  1      1     0.50                        lsl.w	r12, r12, #21
+# CHECK-NEXT:  1      1     0.50                        lsl.w	r3, r4, r2
+# CHECK-NEXT:  1      1     0.50                        lsl.w	r1, r1, r2
+# CHECK-NEXT:  1      2     1.00                        lsls.w	r3, r4, r8
+# CHECK-NEXT:  1      1     0.50                        lsr.w	r2, r3, #12
+# CHECK-NEXT:  1      2     1.00                        lsrs.w	r8, r3, #32
+# CHECK-NEXT:  1      2     1.00                        lsrs.w	r2, r3, #1
+# CHECK-NEXT:  1      1     0.50                        lsr.w	r2, r3, #4
+# CHECK-NEXT:  1      2     1.00                        lsrs.w	r2, r12, #15
+# CHECK-NEXT:  1      1     0.50                        lsr.w	r3, r3, #19
+# CHECK-NEXT:  1      2     1.00                        lsrs.w	r8, r8, #2
+# CHECK-NEXT:  1      2     1.00                        lsrs.w	r7, r7, #5
+# CHECK-NEXT:  1      1     0.50                        lsr.w	r12, r12, #21
+# CHECK-NEXT:  1      1     0.50                        lsr.w	r3, r4, r2
+# CHECK-NEXT:  1      1     0.50                        lsr.w	r1, r1, r2
+# CHECK-NEXT:  1      2     1.00                        lsrs.w	r3, r4, r8
+# CHECK-NEXT:  1      1     1.00           *            str	r1, [sp, #952]
+# CHECK-NEXT:  1      1     0.50                        movs	r1, #87
+# CHECK-NEXT:  1      1     1.00           *            str	r1, [sp, #1016]
+# CHECK-NEXT:  1      1     0.50                        add	r7, r10
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r1, [r6, r7]
+# CHECK-NEXT:  1      4     1.00    *                   ldrsb	r1, [r6, r7]
+# CHECK-NEXT:  1      3     1.00                        mla	r1, r2, r3, r4
+# CHECK-NEXT:  1      3     1.00                        mls	r1, r2, r3, r4
+# CHECK-NEXT:  1      1     0.50                        movs	r1, #21
+# CHECK-NEXT:  1      2     1.00                        movs.w	r1, #21
+# CHECK-NEXT:  1      2     1.00                        movs.w	r8, #21
+# CHECK-NEXT:  1      1     0.50                        movw	r0, #65535
+# CHECK-NEXT:  1      1     0.50                        movw	r1, #43777
+# CHECK-NEXT:  1      1     0.50                        movw	r1, #43792
+# CHECK-NEXT:  1      1     0.50                        mov.w	r0, #66846720
+# CHECK-NEXT:  1      1     0.50                        mov.w	r0, #66846720
+# CHECK-NEXT:  1      2     1.00                        movs.w	r0, #66846720
+# CHECK-NEXT:  1      1     0.50                        movt	r3, #7
+# CHECK-NEXT:  1      1     0.50                        movt	r6, #65535
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  1      1     0.50                        movteq	r4, #4080
+# CHECK-NEXT:  0      0     0.00    *      *      U     mrc	p14, #0, r1, c1, c2, #4
+# CHECK-NEXT:  1      1     1.00           *            str	r2, [sp, #1016]
+# CHECK-NEXT:  1      1     1.00           *            strb	r6, [r3, r0]
+# CHECK-NEXT:  1      2     1.00                        asrs	r4, r5, #7
+# CHECK-NEXT:  1      1     1.00           *            strb	r7, [r2, r1]
+# CHECK-NEXT:  1      2     1.00                        asrs	r4, r7, #7
+# CHECK-NEXT:  0      0     0.00                  U     mrs	r8, apsr
+# CHECK-NEXT:  0      0     0.00                  U     mrs	r8, spsr
+# CHECK-NEXT:  0      0     0.00                  U     msr	APSR_nzcvq, r1
+# CHECK-NEXT:  0      0     0.00                  U     msr	APSR_g, r2
+# CHECK-NEXT:  0      0     0.00                  U     msr	APSR_nzcvq, r3
+# CHECK-NEXT:  0      0     0.00                  U     msr	APSR_nzcvq, r4
+# CHECK-NEXT:  0      0     0.00                  U     msr	APSR_nzcvqg, r5
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_fc, r6
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_c, r7
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_x, r8
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_fc, r9
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_fc, r11
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_fsx, r12
+# CHECK-NEXT:  0      0     0.00                  U     msr	SPSR_fc, r0
+# CHECK-NEXT:  0      0     0.00                  U     msr	SPSR_fsxc, r5
+# CHECK-NEXT:  0      0     0.00                  U     msr	CPSR_fsxc, r8
+# CHECK-NEXT:  1      3     1.00                        muls	r3, r4, r3
+# CHECK-NEXT:  1      3     1.00                        mul	r3, r4, r3
+# CHECK-NEXT:  1      3     1.00                        mul	r3, r4, r6
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  1      3     1.00                        muleq	r3, r4, r5
+# CHECK-NEXT:  1      1     0.50                        mvns	r8, #21
+# CHECK-NEXT:  1      1     0.50                        mvn	r0, #66846720
+# CHECK-NEXT:  1      1     0.50                        mvns	r0, #66846720
+# CHECK-NEXT:  0      0     0.00                  U     itte	eq
+# CHECK-NEXT:  1      1     0.50                        mvnseq	r1, #12
+# CHECK-NEXT:  1      1     0.50                        mvneq	r1, #12
+# CHECK-NEXT:  1      1     0.50                        mvnne	r1, #12
+# CHECK-NEXT:  1      1     0.50                        mvn.w	r2, r3
+# CHECK-NEXT:  1      1     0.50                        mvns	r2, r3
+# CHECK-NEXT:  1      1     0.50                        mvn.w	r5, r6, lsl #19
+# CHECK-NEXT:  1      1     0.50                        mvn.w	r5, r6, lsr #9
+# CHECK-NEXT:  1      1     0.50                        mvn.w	r5, r6, asr #4
+# CHECK-NEXT:  1      1     0.50                        mvn.w	r5, r6, ror #6
+# CHECK-NEXT:  1      1     0.50                        mvn.w	r5, r6, rrx
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  1      1     0.50                        mvneq	r2, r3
+# CHECK-NEXT:  0      0     0.00    *      *      U     nop.w
+# CHECK-NEXT:  1      1     0.50                        orn	r4, r5, #61440
+# CHECK-NEXT:  1      1     0.50                        orn	r4, r5, r6
+# CHECK-NEXT:  1      1     0.50                        orns	r4, r5, r6
+# CHECK-NEXT:  1      2     1.00                        orn	r4, r5, r6, lsl #5
+# CHECK-NEXT:  1      2     1.00                        orns	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        orn	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        orns	r4, r5, r6, asr #5
+# CHECK-NEXT:  1      2     1.00                        orn	r4, r5, r6, ror #5
+# CHECK-NEXT:  1      1     0.50                        orr	r4, r5, #61440
+# CHECK-NEXT:  1      1     0.50                        orr.w	r4, r5, r6
+# CHECK-NEXT:  1      2     1.00                        orr.w	r4, r5, r6, lsl #5
+# CHECK-NEXT:  1      2     1.00                        orrs.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        orr.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        orrs.w	r4, r5, r6, asr #5
+# CHECK-NEXT:  1      2     1.00                        orr.w	r4, r5, r6, ror #5
+# CHECK-NEXT:  1      2     1.00                        pkhbt	r2, r2, r3
+# CHECK-NEXT:  1      2     1.00                        pkhbt	r2, r2, r3, lsl #31
+# CHECK-NEXT:  1      2     1.00                        pkhbt	r2, r2, r3, lsl #15
+# CHECK-NEXT:  1      2     1.00                        pkhtb	r2, r2, r3, asr #31
+# CHECK-NEXT:  1      2     1.00                        pkhtb	r2, r2, r3, asr #15
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r6, #32]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r6, #33]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r6, #257]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r7, #257]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r8, r1]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r5, r2]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[sp, r2]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[pc, #455]
+# CHECK-NEXT:  1      4     1.00    *      *            pld	[pc]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r5, #-4]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r6, #32]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r6, #33]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r6, #257]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r7, #257]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r8, r1]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r5, r2]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r0, r2, lsl #3]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[r8, r2, lsl #2]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[sp, r2, lsl #1]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[sp, r2]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[pc, #-0]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[pc, #-328]
+# CHECK-NEXT:  1      4     1.00    *      *            pli	[pc]
+# CHECK-NEXT:  1      2     1.00                        qadd	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qadd16	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qadd8	r1, r2, r3
+# CHECK-NEXT:  0      0     0.00                  U     itte	gt
+# CHECK-NEXT:  1      2     1.00                        qaddgt	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qadd16gt	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qadd8le	r1, r2, r3
+# CHECK-NEXT:  2      3     1.00                        qdadd	r6, r7, r8
+# CHECK-NEXT:  2      3     1.00                        qdsub	r6, r7, r8
+# CHECK-NEXT:  0      0     0.00                  U     itt	hi
+# CHECK-NEXT:  2      3     1.00                        qdaddhi	r6, r7, r8
+# CHECK-NEXT:  2      3     1.00                        qdsubhi	r6, r7, r8
+# CHECK-NEXT:  2      3     1.00                        qsax	r9, r12, r0
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  2      3     1.00                        qsaxeq	r9, r12, r0
+# CHECK-NEXT:  1      2     1.00                        qsub	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qsub16	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qsub8	r1, r2, r3
+# CHECK-NEXT:  0      0     0.00                  U     itet	le
+# CHECK-NEXT:  1      2     1.00                        qsuble	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qsub16gt	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        qsub8le	r1, r2, r3
+# CHECK-NEXT:  1      1     0.50                        rbit	r1, r2
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  1      1     0.50                        rbitne	r1, r2
+# CHECK-NEXT:  1      1     0.50                        rev.w	r1, r2
+# CHECK-NEXT:  1      1     0.50                        rev.w	r2, r8
+# CHECK-NEXT:  0      0     0.00                  U     itt	ne
+# CHECK-NEXT:  1      1     0.50                        revne	r1, r2
+# CHECK-NEXT:  1      1     0.50                        revne.w	r1, r8
+# CHECK-NEXT:  1      1     0.50                        rev16.w	r1, r2
+# CHECK-NEXT:  1      1     0.50                        rev16.w	r2, r8
+# CHECK-NEXT:  0      0     0.00                  U     itt	ne
+# CHECK-NEXT:  1      1     0.50                        rev16ne	r1, r2
+# CHECK-NEXT:  1      1     0.50                        rev16ne.w	r1, r8
+# CHECK-NEXT:  1      1     0.50                        revsh.w	r1, r2
+# CHECK-NEXT:  1      1     0.50                        revsh.w	r2, r8
+# CHECK-NEXT:  0      0     0.00                  U     itt	ne
+# CHECK-NEXT:  1      1     0.50                        revshne	r1, r2
+# CHECK-NEXT:  1      1     0.50                        revshne.w	r1, r8
+# CHECK-NEXT:  1      1     0.50                        ror.w	r2, r3, #12
+# CHECK-NEXT:  1      2     1.00                        rors.w	r8, r3, #31
+# CHECK-NEXT:  1      2     1.00                        rors.w	r2, r3, #1
+# CHECK-NEXT:  1      1     0.50                        ror.w	r2, r3, #4
+# CHECK-NEXT:  1      2     1.00                        rors.w	r2, r12, #15
+# CHECK-NEXT:  1      1     0.50                        ror.w	r3, r3, #19
+# CHECK-NEXT:  1      2     1.00                        rors.w	r8, r8, #2
+# CHECK-NEXT:  1      2     1.00                        rors.w	r7, r7, #5
+# CHECK-NEXT:  1      1     0.50                        ror.w	r12, r12, #21
+# CHECK-NEXT:  1      1     0.50                        ror.w	r3, r4, r2
+# CHECK-NEXT:  1      1     0.50                        ror.w	r1, r1, r2
+# CHECK-NEXT:  1      2     1.00                        rors.w	r3, r4, r8
+# CHECK-NEXT:  1      1     0.50                        rrx	r1, r2
+# CHECK-NEXT:  1      2     1.00                        rrxs	r1, r2
+# CHECK-NEXT:  0      0     0.00                  U     ite	lt
+# CHECK-NEXT:  1      1     0.50                        rrxlt	r9, r12
+# CHECK-NEXT:  1      2     1.00                        rrxsge	r8, r3
+# CHECK-NEXT:  1      1     0.50                        rsb.w	r2, r5, #1044480
+# CHECK-NEXT:  1      1     0.50                        rsbs.w	r3, r12, #15
+# CHECK-NEXT:  1      1     0.50                        rsb.w	r1, r1, #255
+# CHECK-NEXT:  1      1     0.50                  U     rsb	r4, r4, r8
+# CHECK-NEXT:  1      1     0.50                  U     rsb	r4, r9, r8
+# CHECK-NEXT:  1      2     1.00                        rsb	r1, r4, r8, asr #3
+# CHECK-NEXT:  1      2     1.00                        rsbs	r2, r1, r7, lsl #1
+# CHECK-NEXT:  2      2     1.00    *      *      U     sadd16	r3, r4, r8
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  2      4     1.00    *      *      U     sadd16ne	r3, r4, r8
+# CHECK-NEXT:  2      2     1.00    *      *      U     sadd8	r3, r4, r8
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  2      4     1.00    *      *      U     sadd8ne	r3, r4, r8
+# CHECK-NEXT:  2      3     1.00    *      *      U     sasx	r9, r2, r7
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  2      5     1.00    *      *      U     sasxne	r2, r5, r6
+# CHECK-NEXT:  1      1     0.50                        sbc	r0, r1, #4
+# CHECK-NEXT:  1      1     0.50                        sbcs	r0, r1, #0
+# CHECK-NEXT:  1      1     0.50                        sbc	r1, r2, #255
+# CHECK-NEXT:  1      1     0.50                        sbc	r3, r7, #5570645
+# CHECK-NEXT:  1      1     0.50                        sbc	r8, r12, #2852170240
+# CHECK-NEXT:  1      1     0.50                        sbc	r9, r7, #2779096485
+# CHECK-NEXT:  1      1     0.50                        sbc	r5, r3, #2264924160
+# CHECK-NEXT:  1      1     0.50                        sbc	r4, r2, #2139095040
+# CHECK-NEXT:  1      1     0.50                        sbc	r4, r2, #1664
+# CHECK-NEXT:  1      1     0.50                        sbc.w	r4, r5, r6
+# CHECK-NEXT:  1      1     0.50                        sbcs.w	r4, r5, r6
+# CHECK-NEXT:  1      1     0.50                        sbc.w	r9, r1, r3
+# CHECK-NEXT:  1      1     0.50                        sbcs.w	r9, r1, r3
+# CHECK-NEXT:  1      2     1.00                        sbc.w	r0, r1, r3, ror #4
+# CHECK-NEXT:  1      2     1.00                        sbcs.w	r0, r1, r3, lsl #7
+# CHECK-NEXT:  1      2     1.00                        sbc.w	r0, r1, r3, lsr #31
+# CHECK-NEXT:  1      2     1.00                        sbcs.w	r0, r1, r3, asr #32
+# CHECK-NEXT:  1      1     0.50                        sbfx	r4, r5, #16, #1
+# CHECK-NEXT:  0      0     0.00                  U     it	gt
+# CHECK-NEXT:  1      1     0.50                        sbfxgt	r4, r5, #16, #16
+# CHECK-NEXT:  1      1     0.50    *                   sel	r5, r9, r2
+# CHECK-NEXT:  0      0     0.00                  U     it	le
+# CHECK-NEXT:  1      2     0.50    *                   selle	r5, r9, r2
+# CHECK-NEXT:  0      0     0.00    *      *      U     sev.w
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  0      0     0.00    *      *      U     seveq.w
+# CHECK-NEXT:  2      2     1.00    *      *      U     sadd16	r1, r2, r3
+# CHECK-NEXT:  2      2     1.00    *      *      U     sadd8	r1, r2, r3
+# CHECK-NEXT:  0      0     0.00                  U     ite	gt
+# CHECK-NEXT:  2      4     1.00    *      *      U     sadd16gt	r1, r2, r3
+# CHECK-NEXT:  2      4     1.00    *      *      U     sadd8le	r1, r2, r3
+# CHECK-NEXT:  2      3     1.00                        shasx	r4, r8, r2
+# CHECK-NEXT:  0      0     0.00                  U     it	gt
+# CHECK-NEXT:  2      3     1.00                        shasxgt	r4, r8, r2
+# CHECK-NEXT:  2      3     1.00                        shsax	r4, r8, r2
+# CHECK-NEXT:  0      0     0.00                  U     it	gt
+# CHECK-NEXT:  2      3     1.00                        shsaxgt	r4, r8, r2
+# CHECK-NEXT:  1      2     1.00                        shsub16	r4, r8, r2
+# CHECK-NEXT:  1      2     1.00                        shsub8	r4, r8, r2
+# CHECK-NEXT:  0      0     0.00                  U     itt	gt
+# CHECK-NEXT:  1      2     1.00                        shsub16gt	r4, r8, r2
+# CHECK-NEXT:  1      2     1.00                        shsub8gt	r4, r8, r2
+# CHECK-NEXT:  1      3     1.00                        smlabb	r3, r1, r9, r0
+# CHECK-NEXT:  1      3     1.00                        smlabt	r5, r6, r4, r1
+# CHECK-NEXT:  1      3     1.00                        smlatb	r4, r2, r3, r2
+# CHECK-NEXT:  1      3     1.00                        smlatt	r8, r3, r8, r4
+# CHECK-NEXT:  0      0     0.00                  U     itete	gt
+# CHECK-NEXT:  1      3     1.00                        smlabbgt	r3, r1, r9, r0
+# CHECK-NEXT:  1      3     1.00                        smlabtle	r5, r6, r4, r1
+# CHECK-NEXT:  1      3     1.00                        smlatbgt	r4, r2, r3, r2
+# CHECK-NEXT:  1      3     1.00                        smlattle	r8, r3, r8, r4
+# CHECK-NEXT:  1      3     1.00                        smlad	r2, r3, r5, r8
+# CHECK-NEXT:  1      3     1.00                        smladx	r2, r3, r5, r8
+# CHECK-NEXT:  0      0     0.00                  U     itt	hi
+# CHECK-NEXT:  1      3     1.00                        smladhi	r2, r3, r5, r8
+# CHECK-NEXT:  1      3     1.00                        smladxhi	r2, r3, r5, r8
+# CHECK-NEXT:  2      4     2.00                        smlal	r2, r3, r5, r8
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  2      4     2.00                        smlaleq	r2, r3, r5, r8
+# CHECK-NEXT:  2      4     2.00                        smlalbb	r3, r1, r9, r0
+# CHECK-NEXT:  2      4     2.00                        smlalbt	r5, r6, r4, r1
+# CHECK-NEXT:  2      4     2.00                        smlaltb	r4, r2, r3, r2
+# CHECK-NEXT:  2      4     2.00                        smlaltt	r8, r3, r8, r4
+# CHECK-NEXT:  0      0     0.00                  U     iteet	ge
+# CHECK-NEXT:  2      4     2.00                        smlalbbge	r3, r1, r9, r0
+# CHECK-NEXT:  2      4     2.00                        smlalbtlt	r5, r6, r4, r1
+# CHECK-NEXT:  2      4     2.00                        smlaltblt	r4, r2, r3, r2
+# CHECK-NEXT:  2      4     2.00                        smlalttge	r8, r3, r8, r4
+# CHECK-NEXT:  2      4     2.00                        smlald	r2, r3, r5, r8
+# CHECK-NEXT:  2      4     2.00                        smlaldx	r2, r3, r5, r8
+# CHECK-NEXT:  0      0     0.00                  U     ite	eq
+# CHECK-NEXT:  2      4     2.00                        smlaldeq	r2, r3, r5, r8
+# CHECK-NEXT:  2      4     2.00                        smlaldxne	r2, r3, r5, r8
+# CHECK-NEXT:  1      3     1.00                        smlawb	r2, r3, r10, r8
+# CHECK-NEXT:  1      3     1.00                        smlawt	r8, r3, r5, r9
+# CHECK-NEXT:  0      0     0.00                  U     ite	eq
+# CHECK-NEXT:  1      3     1.00                        smlawbeq	r2, r7, r5, r8
+# CHECK-NEXT:  1      3     1.00                        smlawtne	r1, r3, r0, r8
+# CHECK-NEXT:  1      3     1.00                        smlsd	r2, r3, r5, r8
+# CHECK-NEXT:  1      3     1.00                        smlsdx	r2, r3, r5, r8
+# CHECK-NEXT:  0      0     0.00                  U     ite	le
+# CHECK-NEXT:  1      3     1.00                        smlsdle	r2, r3, r5, r8
+# CHECK-NEXT:  1      3     1.00                        smlsdxgt	r2, r3, r5, r8
+# CHECK-NEXT:  2      4     2.00                        smlsld	r2, r9, r5, r1
+# CHECK-NEXT:  2      4     2.00                        smlsldx	r4, r11, r2, r8
+# CHECK-NEXT:  0      0     0.00                  U     ite	ge
+# CHECK-NEXT:  2      4     2.00                        smlsldge	r8, r2, r5, r6
+# CHECK-NEXT:  2      4     2.00                        smlsldxlt	r1, r0, r3, r8
+# CHECK-NEXT:  1      3     1.00                        smmla	r1, r2, r3, r4
+# CHECK-NEXT:  1      3     1.00                        smmlar	r4, r3, r2, r1
+# CHECK-NEXT:  0      0     0.00                  U     ite	lo
+# CHECK-NEXT:  1      3     1.00                        smmlalo	r1, r2, r3, r4
+# CHECK-NEXT:  1      3     1.00                        smmlarhs	r4, r3, r2, r1
+# CHECK-NEXT:  1      3     1.00                  U     smmls	r1, r2, r3, r4
+# CHECK-NEXT:  1      3     1.00                        smmlsr	r4, r3, r2, r1
+# CHECK-NEXT:  0      0     0.00                  U     ite	lo
+# CHECK-NEXT:  1      3     1.00                  U     smmlslo	r1, r2, r3, r4
+# CHECK-NEXT:  1      3     1.00                        smmlsrhs	r4, r3, r2, r1
+# CHECK-NEXT:  1      2     1.00                        ssat	r9, #30, r0, asr #2
+# CHECK-NEXT:  2      1     1.00           *            str	r10, [r11], #0
+# CHECK-NEXT:  2      1     1.00           *            strd	r1, r1, [r0], #0
+# CHECK-NEXT:  2      1     1.00           *            strd	r6, r3, [r5], #-8
+# CHECK-NEXT:  2      1     1.00           *            strd	r7, r4, [r5], #-4
+# CHECK-NEXT:  2      1     1.00           *            strd	r0, r1, [r2, #-0]!
+# CHECK-NEXT:  2      1     1.00           *            strd	r0, r1, [r2, #0]!
+# CHECK-NEXT:  1      1     1.00           *            strd	r0, r1, [r2, #-0]
+# CHECK-NEXT:  0      0     0.00    *      *      U     strex	r1, r8, [r4]
+# CHECK-NEXT:  0      0     0.00    *      *      U     strex	r8, r2, [r4]
+# CHECK-NEXT:  0      0     0.00    *      *      U     strex	r2, r12, [sp, #128]
+# CHECK-NEXT:  0      0     0.00    *      *      U     strexb	r5, r1, [r7]
+# CHECK-NEXT:  0      0     0.00    *      *      U     strexh	r9, r7, [r12]
+# CHECK-NEXT:  0      0     0.00           *      U     strexd	r9, r3, r6, [r4]
+# CHECK-NEXT:  1      1     1.00           *            strh	r5, [r5, #-4]
+# CHECK-NEXT:  1      1     1.00           *            strh	r5, [r6, #32]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r5, [r6, #33]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r5, [r6, #257]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	lr, [r7, #257]
+# CHECK-NEXT:  2      1     1.00           *            strh	r5, [r8, #255]!
+# CHECK-NEXT:  2      1     1.00           *            strh	r2, [r5, #4]!
+# CHECK-NEXT:  2      1     1.00           *            strh	r1, [r4, #-4]!
+# CHECK-NEXT:  2      1     1.00           *            strh	r1, [r4, #0]!
+# CHECK-NEXT:  2      1     1.00           *            strh	lr, [r3], #255
+# CHECK-NEXT:  2      1     1.00           *            strh	r9, [r2], #4
+# CHECK-NEXT:  2      1     1.00           *            strh	r3, [sp], #-4
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r1, [r8, r1]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r4, [r5, r2]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  1      1     1.00           *            strh.w	r7, [sp, r2]
+# CHECK-NEXT:  2      1     1.00                  U     strht	r1, [r2]
+# CHECK-NEXT:  2      1     1.00                  U     strht	r1, [r8]
+# CHECK-NEXT:  2      1     1.00                  U     strht	r1, [r8, #3]
+# CHECK-NEXT:  2      1     1.00                  U     strht	r1, [r8, #255]
+# CHECK-NEXT:  1      1     1.00                  U     strt	r1, [r2]
+# CHECK-NEXT:  1      1     1.00                  U     strt	r1, [r8]
+# CHECK-NEXT:  1      1     1.00                  U     strt	r1, [r8, #3]
+# CHECK-NEXT:  1      1     1.00                  U     strt	r1, [r8, #255]
+# CHECK-NEXT:  0      0     0.00                  U     itet	eq
+# CHECK-NEXT:  1      1     0.50                        subeq	r1, r2, #4
+# CHECK-NEXT:  1      1     0.50                        subwne	r5, r3, #1023
+# CHECK-NEXT:  1      1     0.50                        subweq	r4, r5, #293
+# CHECK-NEXT:  1      1     0.50                        sub.w	r2, sp, #1024
+# CHECK-NEXT:  1      1     0.50                        sub.w	r2, r8, #65280
+# CHECK-NEXT:  1      1     0.50                        subw	r2, r3, #257
+# CHECK-NEXT:  1      1     0.50                        sub.w	r12, r6, #256
+# CHECK-NEXT:  1      1     0.50                        subw	r12, r6, #256
+# CHECK-NEXT:  1      1     0.50                        subs.w	r1, r2, #496
+# CHECK-NEXT:  0      0     0.00                        subs	pc, lr, #4
+# CHECK-NEXT:  1      1     0.50                        sub.w	r4, r5, r6
+# CHECK-NEXT:  1      2     1.00                        sub.w	r4, r5, r6, lsl #5
+# CHECK-NEXT:  1      2     1.00                        sub.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        sub.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  1      2     1.00                        sub.w	r4, r5, r6, asr #5
+# CHECK-NEXT:  1      2     1.00                        sub.w	r4, r5, r6, ror #5
+# CHECK-NEXT:  1      2     1.00                        sub.w	r5, r2, r12, rrx
+# CHECK-NEXT:  0      0     0.00                  U     svc	#0
+# CHECK-NEXT:  0      0     0.00                  U     ite	eq
+# CHECK-NEXT:  0      0     0.00                  U     svceq	#255
+# CHECK-NEXT:  0      0     0.00                  U     svcne	#33
+# CHECK-NEXT:  1      2     1.00                        sxtab	r2, r3, r4
+# CHECK-NEXT:  1      2     1.00                        sxtab	r4, r5, r6
+# CHECK-NEXT:  0      0     0.00                  U     it	lt
+# CHECK-NEXT:  1      2     1.00                        sxtablt	r6, r2, r9, ror #8
+# CHECK-NEXT:  1      2     1.00                        sxtab	r5, r1, r4, ror #16
+# CHECK-NEXT:  1      2     1.00                        sxtab	r7, r8, r3, ror #24
+# CHECK-NEXT:  1      4     1.00                        sxtab16	r6, r2, r7
+# CHECK-NEXT:  1      4     1.00                        sxtab16	r3, r5, r8, ror #8
+# CHECK-NEXT:  1      4     1.00                        sxtab16	r3, r2, r1, ror #16
+# CHECK-NEXT:  0      0     0.00                  U     ite	ne
+# CHECK-NEXT:  1      4     1.00                        sxtab16ne	r0, r1, r4
+# CHECK-NEXT:  1      4     1.00                        sxtab16eq	r1, r2, r3, ror #24
+# CHECK-NEXT:  1      2     1.00                        sxtah	r1, r3, r9
+# CHECK-NEXT:  1      2     1.00                        sxtah	r3, r8, r3, ror #8
+# CHECK-NEXT:  1      2     1.00                        sxtah	r9, r3, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     ite	hi
+# CHECK-NEXT:  1      2     1.00                        sxtahhi	r6, r1, r6
+# CHECK-NEXT:  1      2     1.00                        sxtahls	r2, r2, r4, ror #16
+# CHECK-NEXT:  1      1     0.50                        sxtb	r5, r6
+# CHECK-NEXT:  1      1     0.50                        sxtb.w	r6, r9, ror #8
+# CHECK-NEXT:  1      1     0.50                        sxtb.w	r8, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     ite	ge
+# CHECK-NEXT:  1      1     0.50                        sxtbge	r2, r4
+# CHECK-NEXT:  1      1     0.50                        sxtblt.w	r5, r1, ror #16
+# CHECK-NEXT:  1      1     0.50                        sxtb16	r1, r4
+# CHECK-NEXT:  1      1     0.50                        sxtb16	r6, r7
+# CHECK-NEXT:  1      1     0.50                        sxtb16	r3, r1, ror #16
+# CHECK-NEXT:  0      0     0.00                  U     ite	hs
+# CHECK-NEXT:  1      1     0.50                        sxtb16hs	r3, r5, ror #8
+# CHECK-NEXT:  1      1     0.50                        sxtb16lo	r2, r3, ror #24
+# CHECK-NEXT:  1      1     0.50                        sxth	r1, r6
+# CHECK-NEXT:  1      1     0.50                        sxth.w	r3, r8, ror #8
+# CHECK-NEXT:  1      1     0.50                        sxth.w	r9, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     itt	ne
+# CHECK-NEXT:  1      1     0.50                        sxthne.w	r3, r9
+# CHECK-NEXT:  1      1     0.50                        sxthne.w	r2, r2, ror #16
+# CHECK-NEXT:  1      1     0.50                        sxtb	r5, r6
+# CHECK-NEXT:  1      1     0.50                        sxtb.w	r6, r9, ror #8
+# CHECK-NEXT:  1      1     0.50                        sxtb.w	r8, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     ite	ge
+# CHECK-NEXT:  1      1     0.50                        sxtbge	r2, r4
+# CHECK-NEXT:  1      1     0.50                        sxtblt.w	r5, r1, ror #16
+# CHECK-NEXT:  1      1     0.50                        sxtb16	r1, r4
+# CHECK-NEXT:  1      1     0.50                        sxtb16	r6, r7
+# CHECK-NEXT:  1      1     0.50                        sxtb16	r3, r1, ror #16
+# CHECK-NEXT:  0      0     0.00                  U     ite	hs
+# CHECK-NEXT:  1      1     0.50                        sxtb16hs	r3, r5, ror #8
+# CHECK-NEXT:  1      1     0.50                        sxtb16lo	r2, r3, ror #24
+# CHECK-NEXT:  1      1     0.50                        sxth	r1, r6
+# CHECK-NEXT:  1      1     0.50                        sxth.w	r3, r8, ror #8
+# CHECK-NEXT:  1      1     0.50                        sxth.w	r9, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     itt	ne
+# CHECK-NEXT:  1      1     0.50                        sxthne.w	r3, r9
+# CHECK-NEXT:  1      1     0.50                        sxthne.w	r2, r2, ror #16
+# CHECK-NEXT:  2      3     1.00                  U     tbb	[r3, r8]
+# CHECK-NEXT:  2      3     1.00                  U     tbh	[r3, r8, lsl #1]
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  2      3     1.00                  U     tbbeq	[r3, r8]
+# CHECK-NEXT:  0      0     0.00                  U     it	hs
+# CHECK-NEXT:  2      3     1.00                  U     tbhhs	[r3, r8, lsl #1]
+# CHECK-NEXT:  1      1     0.50                        teq.w	r5, #61440
+# CHECK-NEXT:  1      1     0.50                        teq.w	r4, r5
+# CHECK-NEXT:  1      2     1.00                        teq.w	r4, r5, lsl #5
+# CHECK-NEXT:  1      2     1.00                        teq.w	r4, r5, lsr #5
+# CHECK-NEXT:  1      2     1.00                        teq.w	r4, r5, lsr #5
+# CHECK-NEXT:  1      2     1.00                        teq.w	r4, r5, asr #5
+# CHECK-NEXT:  1      2     1.00                        teq.w	r4, r5, ror #5
+# CHECK-NEXT:  1      1     0.50                        tst.w	r5, #61440
+# CHECK-NEXT:  1      1     0.50                        tst	r2, r5
+# CHECK-NEXT:  1      2     1.00                        tst.w	r3, r12, lsl #5
+# CHECK-NEXT:  1      2     1.00                        tst.w	r4, r11, lsr #4
+# CHECK-NEXT:  1      2     1.00                        tst.w	r5, r10, lsr #12
+# CHECK-NEXT:  1      2     1.00                        tst.w	r6, r9, asr #30
+# CHECK-NEXT:  1      2     1.00                        tst.w	r7, r8, ror #2
+# CHECK-NEXT:  2      2     1.00    *      *      U     uadd16	r1, r2, r3
+# CHECK-NEXT:  2      2     1.00    *      *      U     uadd8	r1, r2, r3
+# CHECK-NEXT:  0      0     0.00                  U     ite	gt
+# CHECK-NEXT:  2      4     1.00    *      *      U     uadd16gt	r1, r2, r3
+# CHECK-NEXT:  2      4     1.00    *      *      U     uadd8le	r1, r2, r3
+# CHECK-NEXT:  2      3     1.00    *      *      U     uasx	r9, r12, r0
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  2      5     1.00    *      *      U     uasxeq	r9, r12, r0
+# CHECK-NEXT:  2      3     1.00    *      *      U     uasx	r9, r12, r0
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  2      5     1.00    *      *      U     uasxeq	r9, r12, r0
+# CHECK-NEXT:  1      1     0.50                        ubfx	r4, r5, #16, #1
+# CHECK-NEXT:  0      0     0.00                  U     it	gt
+# CHECK-NEXT:  1      1     0.50                        ubfxgt	r4, r5, #16, #16
+# CHECK-NEXT:  1      2     1.00                        uhadd16	r4, r8, r2
+# CHECK-NEXT:  1      2     1.00                        uhadd8	r4, r8, r2
+# CHECK-NEXT:  0      0     0.00                  U     itt	gt
+# CHECK-NEXT:  1      2     1.00                        uhadd16gt	r4, r8, r2
+# CHECK-NEXT:  1      2     1.00                        uhadd8gt	r4, r8, r2
+# CHECK-NEXT:  2      3     1.00                        uhasx	r4, r1, r5
+# CHECK-NEXT:  2      3     1.00                        uhsax	r5, r6, r6
+# CHECK-NEXT:  0      0     0.00                  U     itt	gt
+# CHECK-NEXT:  2      3     1.00                        uhasxgt	r6, r9, r8
+# CHECK-NEXT:  2      3     1.00                        uhsaxgt	r7, r8, r12
+# CHECK-NEXT:  1      2     1.00                        uhsub16	r5, r8, r3
+# CHECK-NEXT:  1      2     1.00                        uhsub8	r1, r7, r6
+# CHECK-NEXT:  0      0     0.00                  U     itt	lt
+# CHECK-NEXT:  1      2     1.00                        uhsub16lt	r4, r9, r12
+# CHECK-NEXT:  1      2     1.00                        uhsub8lt	r3, r1, r5
+# CHECK-NEXT:  2      4     2.00                        umaal	r3, r4, r5, r6
+# CHECK-NEXT:  0      0     0.00                  U     it	lt
+# CHECK-NEXT:  2      4     2.00                        umaallt	r3, r4, r5, r6
+# CHECK-NEXT:  2      4     2.00                        umlal	r2, r4, r6, r8
+# CHECK-NEXT:  0      0     0.00                  U     it	gt
+# CHECK-NEXT:  2      4     2.00                        umlalgt	r6, r1, r2, r6
+# CHECK-NEXT:  2      4     2.00                        umull	r2, r4, r6, r8
+# CHECK-NEXT:  0      0     0.00                  U     it	gt
+# CHECK-NEXT:  2      4     2.00                        umullgt	r6, r1, r2, r6
+# CHECK-NEXT:  1      2     1.00                        uqadd16	r1, r2, r3
+# CHECK-NEXT:  1      2     1.00                        uqadd8	r3, r4, r8
+# CHECK-NEXT:  0      0     0.00                  U     ite	gt
+# CHECK-NEXT:  1      2     1.00                        uqadd16gt	r4, r7, r9
+# CHECK-NEXT:  1      2     1.00                        uqadd8le	r8, r1, r2
+# CHECK-NEXT:  2      3     1.00                        uqasx	r1, r2, r3
+# CHECK-NEXT:  2      3     1.00                        uqsax	r3, r4, r8
+# CHECK-NEXT:  0      0     0.00                  U     ite	gt
+# CHECK-NEXT:  2      3     1.00                        uqasxgt	r4, r7, r9
+# CHECK-NEXT:  2      3     1.00                        uqsaxle	r8, r1, r2
+# CHECK-NEXT:  1      2     1.00                        uqsub8	r8, r2, r9
+# CHECK-NEXT:  1      2     1.00                        uqsub16	r1, r9, r7
+# CHECK-NEXT:  0      0     0.00                  U     ite	gt
+# CHECK-NEXT:  1      2     1.00                        uqsub8gt	r3, r1, r6
+# CHECK-NEXT:  1      2     1.00                        uqsub16le	r4, r6, r4
+# CHECK-NEXT:  1      3     1.00                        usad8	r1, r9, r7
+# CHECK-NEXT:  1      3     1.00                        usada8	r8, r2, r9, r12
+# CHECK-NEXT:  0      0     0.00                  U     ite	gt
+# CHECK-NEXT:  1      3     1.00                        usada8gt	r3, r1, r6, r9
+# CHECK-NEXT:  1      3     1.00                        usad8le	r4, r6, r4
+# CHECK-NEXT:  1      2     1.00                        usat	r8, #1, r10
+# CHECK-NEXT:  1      2     1.00                        usat	r8, #4, r10
+# CHECK-NEXT:  1      2     1.00                        usat	r8, #5, r10, lsl #31
+# CHECK-NEXT:  1      2     1.00                        usat	r8, #16, r10, asr #1
+# CHECK-NEXT:  1      2     1.00                        usat16	r2, #2, r7
+# CHECK-NEXT:  1      2     1.00                        usat16	r3, #15, r5
+# CHECK-NEXT:  2      3     1.00    *      *      U     usax	r2, r3, r4
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  2      5     1.00    *      *      U     usaxne	r6, r1, r9
+# CHECK-NEXT:  2      3     1.00    *      *      U     usax	r2, r3, r4
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  2      5     1.00    *      *      U     usaxne	r6, r1, r9
+# CHECK-NEXT:  2      2     1.00    *      *      U     usub16	r4, r2, r7
+# CHECK-NEXT:  2      2     1.00    *      *      U     usub8	r1, r8, r5
+# CHECK-NEXT:  0      0     0.00                  U     ite	hi
+# CHECK-NEXT:  2      4     1.00    *      *      U     usub16hi	r1, r1, r3
+# CHECK-NEXT:  2      4     1.00    *      *      U     usub8ls	r9, r2, r3
+# CHECK-NEXT:  1      2     1.00                        uxtab	r2, r3, r4
+# CHECK-NEXT:  1      2     1.00                        uxtab	r4, r5, r6
+# CHECK-NEXT:  0      0     0.00                  U     it	lt
+# CHECK-NEXT:  1      2     1.00                        uxtablt	r6, r2, r9, ror #8
+# CHECK-NEXT:  1      2     1.00                        uxtab	r5, r1, r4, ror #16
+# CHECK-NEXT:  1      2     1.00                        uxtab	r7, r8, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     it	ge
+# CHECK-NEXT:  1      4     1.00                        uxtab16ge	r0, r1, r4
+# CHECK-NEXT:  1      4     1.00                        uxtab16	r6, r2, r7
+# CHECK-NEXT:  1      4     1.00                        uxtab16	r3, r5, r8, ror #8
+# CHECK-NEXT:  1      4     1.00                        uxtab16	r3, r2, r1, ror #16
+# CHECK-NEXT:  0      0     0.00                  U     it	eq
+# CHECK-NEXT:  1      4     1.00                        uxtab16eq	r1, r2, r3, ror #24
+# CHECK-NEXT:  1      2     1.00                        uxtah	r1, r3, r9
+# CHECK-NEXT:  0      0     0.00                  U     it	hi
+# CHECK-NEXT:  1      2     1.00                        uxtahhi	r6, r1, r6
+# CHECK-NEXT:  1      2     1.00                        uxtah	r3, r8, r3, ror #8
+# CHECK-NEXT:  0      0     0.00                  U     it	lo
+# CHECK-NEXT:  1      2     1.00                        uxtahlo	r2, r2, r4, ror #16
+# CHECK-NEXT:  1      2     1.00                        uxtah	r9, r3, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     it	ge
+# CHECK-NEXT:  1      1     0.50                        uxtbge	r2, r4
+# CHECK-NEXT:  1      1     0.50                        uxtb	r5, r6
+# CHECK-NEXT:  1      1     0.50                        uxtb.w	r6, r9, ror #8
+# CHECK-NEXT:  0      0     0.00                  U     it	lo
+# CHECK-NEXT:  1      1     0.50                        uxtblo.w	r5, r1, ror #16
+# CHECK-NEXT:  1      1     0.50                        uxtb.w	r8, r3, ror #24
+# CHECK-NEXT:  1      1     0.50                        uxtb16	r1, r4
+# CHECK-NEXT:  1      1     0.50                        uxtb16	r6, r7
+# CHECK-NEXT:  0      0     0.00                  U     it	hs
+# CHECK-NEXT:  1      1     0.50                        uxtb16hs	r3, r5, ror #8
+# CHECK-NEXT:  1      1     0.50                        uxtb16	r3, r1, ror #16
+# CHECK-NEXT:  0      0     0.00                  U     it	ge
+# CHECK-NEXT:  1      1     0.50                        uxtb16ge	r2, r3, ror #24
+# CHECK-NEXT:  0      0     0.00                  U     it	ne
+# CHECK-NEXT:  1      1     0.50                        uxthne.w	r3, r9
+# CHECK-NEXT:  1      1     0.50                        uxth	r1, r6
+# CHECK-NEXT:  1      1     0.50                        uxth.w	r3, r8, ror #8
+# CHECK-NEXT:  0      0     0.00                  U     it	le
+# CHECK-NEXT:  1      1     0.50                        uxthle.w	r2, r2, ror #16
+# CHECK-NEXT:  1      1     0.50                        uxth.w	r9, r3, ror #24
+# CHECK-NEXT:  0      0     0.00    *      *      U     wfe
+# CHECK-NEXT:  0      0     0.00    *      *      U     wfi
+# CHECK-NEXT:  0      0     0.00    *      *      U     yield
+# CHECK-NEXT:  0      0     0.00                  U     itet	lt
+# CHECK-NEXT:  0      0     0.00    *      *      U     wfelt
+# CHECK-NEXT:  0      0     0.00    *      *      U     wfige
+# CHECK-NEXT:  0      0     0.00    *      *      U     yieldlt
+# CHECK-NEXT:  0      0     0.00    *      *      U     hint	#6
+# CHECK-NEXT:  0      0     0.00    *      *      U     hint.w	#6
+# CHECK-NEXT:  0      0     0.00    *      *      U     hint.w	#102
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0]   - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2]   - A57UnitL
+# CHECK-NEXT: [3]   - A57UnitM
+# CHECK-NEXT: [4]   - A57UnitS
+# CHECK-NEXT: [5]   - A57UnitW
+# CHECK-NEXT: [6]   - A57UnitX
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1.0]  [1.1]  [2]    [3]    [4]    [5]    [6]
+# CHECK-NEXT: 12.00  164.00 164.00 221.00 313.00 44.00   -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1.0]  [1.1]  [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r0, r1, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adcs	r0, r1, #0
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r1, r2, #255
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r3, r7, #5570645
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r8, r12, #2852170240
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r9, r7, #2779096485
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r5, r3, #2264924160
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r4, r2, #2139095040
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc	r4, r2, #1664
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc.w	r4, r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adcs.w	r4, r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adc.w	r9, r1, r3
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adcs.w	r9, r1, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     adc.w	r0, r1, r3, ror #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     adcs.w	r0, r1, r3, lsl #7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     adc.w	r0, r1, r3, lsr #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     adcs.w	r0, r1, r3, asr #32
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itet	eq
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addeq	r1, r2, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addwne	r5, r3, #1023
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addweq	r4, r5, #293
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     add.w	r2, sp, #1024
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     add.w	r2, r8, #65280
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addw	r2, r3, #257
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     add.w	r12, r6, #256
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addw	r12, r6, #256
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adds.w	r1, r2, #496
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     add.w	r1, r2, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     add.w	r5, r9, r2, asr #32
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     adds.w	r7, r3, r1, lsl #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     adds.w	r0, r3, r6, lsr #25
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     add.w	r4, r8, r1, ror #12
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adr.w	r11, #-3270
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adr.w	r11, #-826
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subw	r1, pc, #0
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adr.w	r0, #1024
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     and	r2, r5, #1044480
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ands	r3, r12, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     and	r1, r1, #255
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     and.w	r4, r9, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     and.w	r1, r4, r8, asr #3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     ands.w	r2, r1, r7, lsl #1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     ands.w	r4, r5, r2, lsr #20
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     and.w	r9, r12, r1, ror #17
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     asr.w	r2, r3, #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs.w	r8, r3, #32
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs.w	r2, r3, #1
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     asr.w	r2, r3, #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs.w	r2, r12, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     asr.w	r3, r3, #19
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs.w	r8, r8, #2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs.w	r7, r7, #5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     asr.w	r12, r12, #21
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     asr.w	r3, r4, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     asr.w	r1, r1, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs.w	r3, r4, r8
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -     bmi.w	#-183396
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -     b.w	#208962
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -     b.w	#-16777216
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bfc	r5, #3, #17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	lo
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bfclo	r5, #3, #17
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bfi	r5, r2, #3, #17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bfine	r5, r2, #3, #17
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bfi	r6, r0, #0, #32
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bfi	r6, r0, #31, #1
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     bic	r10, r1, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     bic.w	r12, r3, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r11, r2, r6, lsl #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r8, r4, r1, lsr #11
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r7, r5, r7, lsr #15
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r6, r7, r9, asr #32
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r5, r6, r8, ror #1
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     bic	r1, r1, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     bic.w	r1, r1, r1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r4, r4, r2, lsl #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r6, r6, r3, lsr #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r7, r7, r4, lsr #7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r8, r8, r5, asr #15
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     bic.w	r12, r12, r6, ror #29
+# CHECK-NEXT: 1.00   0.50   0.50    -      -      -      -      -     bxj	r5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT: 1.00   0.50   0.50    -      -      -      -      -     bxjne	r7
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -     cbnz	r7, #6
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -     cbnz	r7, #12
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -     cbz	r4, #64
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh	r6, [r5, #14]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r7, r2, #4
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh	r6, [r7, #14]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itett	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     cmpne	r7, #243
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addeq	r7, r1, r2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh	r2, [r7, #22]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r1, r6, #7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs	r1, r6, #31
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adds	r7, r1, r0
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls	r3, r5, #27
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r7, r1, #4
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh	r3, [r5, #54]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r7, r5, #4
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     str	r6, [sp, #940]
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adds	r7, r5, #4
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     str	r6, [sp, #940]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r7, r5, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     adr	r6, #940
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r7, r5, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     cmp	r7, #182
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     cmp.w	r5, #65280
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     cmp.w	r4, r12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     cmp.w	r9, r6, lsl #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     cmp.w	r3, r7, lsr #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     cmp.w	sp, r6, lsr #1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     cmp.w	r2, r5, asr #24
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     cmp.w	r1, r4, ror #15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dbg	#5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dbg	#0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dbg	#15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	sy
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	st
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	ld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	#0xc
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	ish
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	ishst
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	ishld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	#0x8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	nsh
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	nshst
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	nshld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	#0x4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	osh
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	oshst
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	oshld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dmb	#0x0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	sy
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	st
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	ld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	#0xc
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	ish
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	ishst
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	ishld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	#0x8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	nsh
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	nshst
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	nshld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     pssbb
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	osh
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	oshst
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     dsb	oshld
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ssbb
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     eor	r4, r5, #61440
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     eor.w	r4, r5, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     eor.w	r4, r5, r6, lsl #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     eor.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     eor.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     eor.w	r4, r5, r6, asr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     eor.w	r4, r5, r6, ror #5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     isb	sy
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     isb	#0xa
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     iteet	eq
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addeq	r0, r1, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     nopne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subne	r5, r6, r7
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addeq	r1, r2, #4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ittee	ls
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addls	r0, r1, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     nopls
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subhi	r5, r6, r7
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     addhi	r1, r2, #4
+# CHECK-NEXT:  -     2.00   2.00   4.00    -      -      -      -     ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  -     2.00   2.00   4.00    -      -      -      -     ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r5!, {r1, r2}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r2, {r1, r2}
+# CHECK-NEXT:  -     2.00   2.00   4.00    -      -      -      -     ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  -     2.00   2.00   4.00    -      -      -      -     ldm.w	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldm.w	r4, {r5, r6}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldm.w	r5!, {r3, r8}
+# CHECK-NEXT:  -     2.00   2.00   4.00    -      -      -      -     ldmdb	r4, {r4, r5, r8, r9}
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldmdb	r4, {r5, r6}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldmdb	r5!, {r3, r8}
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldmdb	r5!, {r3, r8}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	r5, [r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	r5, [r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r5, [r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r5, [r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	pc, [r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r4, [pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r2, [pc, #-40]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r1, [pc, #1024]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r1, [r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r4, [r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr.w	r7, [sp, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	pc, [sp], #12
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	r2, [r4, #255]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	r8, [sp, #4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	lr, [sp, #-4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	lr, [sp, #0]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	r2, [r4], #255
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	r8, [sp], #4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldr	lr, [sp], #-4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb	r5, [r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r5, [r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r5, [r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r5, [r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	lr, [r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r1, [r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r4, [r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r7, [sp, r2]
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	r5, [r8, #255]!
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	r2, [r5, #4]!
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	r1, [r4, #-4]!
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	r1, [r4, #0]!
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	lr, [r3], #255
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	r9, [r2], #4
+# CHECK-NEXT:  -     0.50   0.50   1.00    -      -      -      -     ldrb	r3, [sp], #-4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r6, [pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r10, [pc, #227]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrb.w	r5, [pc]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrbt	r1, [r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrbt	r1, [r8]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrbt	r1, [r8, #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrbt	r1, [r8, #255]
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldrd	r3, r5, [r6, #24]
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldrd	r3, r5, [r6, #24]!
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldrd	r3, r5, [r6], #4
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldrd	r3, r5, [r6], #-8
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldrd	r3, r5, [r6]
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldrd	r8, r1, [r3]
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldrd	r0, r1, [r2], #-0
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldrd	r0, r1, [r2, #-0]!
+# CHECK-NEXT:  -     1.00   1.00   2.00    -      -      -      -     ldrd	r0, r1, [r2, #0]!
+# CHECK-NEXT:  -      -      -     2.00    -      -      -      -     ldrd	r0, r1, [r2, #-0]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ldrex	r1, [r4]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ldrex	r8, [r4]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ldrex	r2, [sp, #128]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ldrexb	r5, [r7]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ldrexh	r9, [r12]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ldrexd	r9, r3, [r4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r5, [r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r5, [r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r5, [r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r5, [r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	lr, [r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r1, [r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r4, [r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r7, [sp, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r5, [r8, #255]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r2, [r5, #4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r1, [r4, #-4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r1, [r4, #0]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	lr, [r3], #255
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r9, [r2], #4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh	r3, [sp], #-4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r7, [pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r5, [pc, #121]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrh.w	r4, [pc]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r5, [r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r5, [r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r5, [r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r5, [r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	lr, [r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r1, [r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r4, [r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r7, [sp, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r5, [r8, #255]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r2, [r5, #4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r1, [r4, #-4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r1, [r4, #0]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	lr, [r3], #255
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r9, [r2], #4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r3, [sp], #-4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r0, [pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r12, [pc, #80]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb.w	r3, [pc]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsbt	r1, [r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsbt	r1, [r8]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsbt	r1, [r8, #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsbt	r1, [r8, #255]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r5, [r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r5, [r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r5, [r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r5, [r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	lr, [r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r10, [r5, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r1, [r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r4, [r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r7, [sp, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r5, [r8, #255]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r2, [r5, #4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r1, [r4, #-4]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r1, [r4, #0]!
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	lr, [r3], #255
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r9, [r2], #4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh	r3, [sp], #-4
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r0, [pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r10, [pc, #-231]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsh.w	r6, [pc]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsht	r1, [r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsht	r1, [r8]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsht	r1, [r8, #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsht	r1, [r8, #255]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrt	r1, [r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrt	r2, [r6]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrt	r3, [r7, #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrt	r4, [r9, #255]
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsl.w	r2, r3, #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls.w	r8, r3, #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls.w	r2, r3, #1
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsl.w	r2, r3, #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls.w	r2, r12, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsl.w	r3, r3, #19
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls.w	r8, r8, #2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls.w	r7, r7, #5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsl.w	r12, r12, #21
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsl.w	r3, r4, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsl.w	r1, r1, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsls.w	r3, r4, r8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsr.w	r2, r3, #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs.w	r8, r3, #32
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs.w	r2, r3, #1
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsr.w	r2, r3, #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs.w	r2, r12, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsr.w	r3, r3, #19
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs.w	r8, r8, #2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs.w	r7, r7, #5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsr.w	r12, r12, #21
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsr.w	r3, r4, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     lsr.w	r1, r1, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     lsrs.w	r3, r4, r8
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     str	r1, [sp, #952]
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movs	r1, #87
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     str	r1, [sp, #1016]
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     add	r7, r10
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r1, [r6, r7]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ldrsb	r1, [r6, r7]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     mla	r1, r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     mls	r1, r2, r3, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movs	r1, #21
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     movs.w	r1, #21
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     movs.w	r8, #21
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movw	r0, #65535
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movw	r1, #43777
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movw	r1, #43792
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mov.w	r0, #66846720
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mov.w	r0, #66846720
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     movs.w	r0, #66846720
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movt	r3, #7
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movt	r6, #65535
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     movteq	r4, #4080
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     mrc	p14, #0, r1, c1, c2, #4
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     str	r2, [sp, #1016]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strb	r6, [r3, r0]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r4, r5, #7
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strb	r7, [r2, r1]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     asrs	r4, r7, #7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     mrs	r8, apsr
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     mrs	r8, spsr
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	APSR_nzcvq, r1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	APSR_g, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	APSR_nzcvq, r3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	APSR_nzcvq, r4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	APSR_nzcvqg, r5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_fc, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_c, r7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_x, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_fc, r9
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_fc, r11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_fsx, r12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	SPSR_fc, r0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	SPSR_fsxc, r5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     msr	CPSR_fsxc, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     muls	r3, r4, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     mul	r3, r4, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     mul	r3, r4, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     muleq	r3, r4, r5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvns	r8, #21
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn	r0, #66846720
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvns	r0, #66846720
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itte	eq
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvnseq	r1, #12
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvneq	r1, #12
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvnne	r1, #12
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn.w	r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvns	r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn.w	r5, r6, lsl #19
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn.w	r5, r6, lsr #9
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn.w	r5, r6, asr #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn.w	r5, r6, ror #6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvn.w	r5, r6, rrx
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     mvneq	r2, r3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     nop.w
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     orn	r4, r5, #61440
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     orn	r4, r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     orns	r4, r5, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orn	r4, r5, r6, lsl #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orns	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orn	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orns	r4, r5, r6, asr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orn	r4, r5, r6, ror #5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     orr	r4, r5, #61440
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     orr.w	r4, r5, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orr.w	r4, r5, r6, lsl #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orrs.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orr.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orrs.w	r4, r5, r6, asr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     orr.w	r4, r5, r6, ror #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     pkhbt	r2, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     pkhbt	r2, r2, r3, lsl #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     pkhbt	r2, r2, r3, lsl #15
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     pkhtb	r2, r2, r3, asr #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     pkhtb	r2, r2, r3, asr #15
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[sp, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[pc, #455]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pld	[pc]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r5, #-4]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r6, #32]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r6, #33]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r6, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r7, #257]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r8, r1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r5, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[sp, r2]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[pc, #-0]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[pc, #-328]
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     pli	[pc]
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qadd	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qadd16	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qadd8	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itte	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qaddgt	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qadd16gt	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qadd8le	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     qdadd	r6, r7, r8
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     qdsub	r6, r7, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	hi
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     qdaddhi	r6, r7, r8
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     qdsubhi	r6, r7, r8
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     qsax	r9, r12, r0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     qsaxeq	r9, r12, r0
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qsub	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qsub16	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qsub8	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itet	le
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qsuble	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qsub16gt	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     qsub8le	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rbit	r1, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rbitne	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rev.w	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rev.w	r2, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     revne	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     revne.w	r1, r8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rev16.w	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rev16.w	r2, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rev16ne	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rev16ne.w	r1, r8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     revsh.w	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     revsh.w	r2, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     revshne	r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     revshne.w	r1, r8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ror.w	r2, r3, #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rors.w	r8, r3, #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rors.w	r2, r3, #1
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ror.w	r2, r3, #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rors.w	r2, r12, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ror.w	r3, r3, #19
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rors.w	r8, r8, #2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rors.w	r7, r7, #5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ror.w	r12, r12, #21
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ror.w	r3, r4, r2
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ror.w	r1, r1, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rors.w	r3, r4, r8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rrx	r1, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rrxs	r1, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	lt
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rrxlt	r9, r12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rrxsge	r8, r3
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rsb.w	r2, r5, #1044480
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rsbs.w	r3, r12, #15
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rsb.w	r1, r1, #255
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rsb	r4, r4, r8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     rsb	r4, r9, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rsb	r1, r4, r8, asr #3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     rsbs	r2, r1, r7, lsl #1
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd16	r3, r4, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd16ne	r3, r4, r8
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd8	r3, r4, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd8ne	r3, r4, r8
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sasx	r9, r2, r7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sasxne	r2, r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r0, r1, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbcs	r0, r1, #0
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r1, r2, #255
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r3, r7, #5570645
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r8, r12, #2852170240
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r9, r7, #2779096485
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r5, r3, #2264924160
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r4, r2, #2139095040
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc	r4, r2, #1664
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc.w	r4, r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbcs.w	r4, r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbc.w	r9, r1, r3
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbcs.w	r9, r1, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sbc.w	r0, r1, r3, ror #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sbcs.w	r0, r1, r3, lsl #7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sbc.w	r0, r1, r3, lsr #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sbcs.w	r0, r1, r3, asr #32
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbfx	r4, r5, #16, #1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	gt
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sbfxgt	r4, r5, #16, #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sel	r5, r9, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	le
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     selle	r5, r9, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     sev.w
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     seveq.w
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd16	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd8	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	gt
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd16gt	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     sadd8le	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     shasx	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	gt
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     shasxgt	r4, r8, r2
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     shsax	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	gt
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     shsaxgt	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     shsub16	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     shsub8	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     shsub16gt	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     shsub8gt	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlabb	r3, r1, r9, r0
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlabt	r5, r6, r4, r1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlatb	r4, r2, r3, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlatt	r8, r3, r8, r4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itete	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlabbgt	r3, r1, r9, r0
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlabtle	r5, r6, r4, r1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlatbgt	r4, r2, r3, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlattle	r8, r3, r8, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlad	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smladx	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	hi
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smladhi	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smladxhi	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlal	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaleq	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlalbb	r3, r1, r9, r0
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlalbt	r5, r6, r4, r1
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaltb	r4, r2, r3, r2
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaltt	r8, r3, r8, r4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     iteet	ge
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlalbbge	r3, r1, r9, r0
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlalbtlt	r5, r6, r4, r1
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaltblt	r4, r2, r3, r2
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlalttge	r8, r3, r8, r4
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlald	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaldx	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	eq
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaldeq	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlaldxne	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlawb	r2, r3, r10, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlawt	r8, r3, r5, r9
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	eq
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlawbeq	r2, r7, r5, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlawtne	r1, r3, r0, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlsd	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlsdx	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	le
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlsdle	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smlsdxgt	r2, r3, r5, r8
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlsld	r2, r9, r5, r1
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlsldx	r4, r11, r2, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	ge
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlsldge	r8, r2, r5, r6
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     smlsldxlt	r1, r0, r3, r8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmla	r1, r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmlar	r4, r3, r2, r1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	lo
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmlalo	r1, r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmlarhs	r4, r3, r2, r1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmls	r1, r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmlsr	r4, r3, r2, r1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	lo
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmlslo	r1, r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     smmlsrhs	r4, r3, r2, r1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     ssat	r9, #30, r0, asr #2
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     str	r10, [r11], #0
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strd	r1, r1, [r0], #0
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strd	r6, r3, [r5], #-8
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strd	r7, r4, [r5], #-4
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strd	r0, r1, [r2, #-0]!
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strd	r0, r1, [r2, #0]!
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strd	r0, r1, [r2, #-0]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     strex	r1, r8, [r4]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     strex	r8, r2, [r4]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     strex	r2, r12, [sp, #128]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     strexb	r5, r1, [r7]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     strexh	r9, r7, [r12]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     strexd	r9, r3, r6, [r4]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh	r5, [r5, #-4]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh	r5, [r6, #32]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r5, [r6, #33]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r5, [r6, #257]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	lr, [r7, #257]
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	r5, [r8, #255]!
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	r2, [r5, #4]!
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	r1, [r4, #-4]!
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	r1, [r4, #0]!
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	lr, [r3], #255
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	r9, [r2], #4
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strh	r3, [sp], #-4
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r1, [r8, r1]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r4, [r5, r2]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r6, [r0, r2, lsl #3]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r8, [r8, r2, lsl #2]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r7, [sp, r2, lsl #1]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strh.w	r7, [sp, r2]
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strht	r1, [r2]
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strht	r1, [r8]
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strht	r1, [r8, #3]
+# CHECK-NEXT:  -     0.50   0.50    -      -     1.00    -      -     strht	r1, [r8, #255]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strt	r1, [r2]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strt	r1, [r8]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strt	r1, [r8, #3]
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     strt	r1, [r8, #255]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itet	eq
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subeq	r1, r2, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subwne	r5, r3, #1023
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subweq	r4, r5, #293
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sub.w	r2, sp, #1024
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sub.w	r2, r8, #65280
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subw	r2, r3, #257
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sub.w	r12, r6, #256
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subw	r12, r6, #256
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     subs.w	r1, r2, #496
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     subs	pc, lr, #4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sub.w	r4, r5, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sub.w	r4, r5, r6, lsl #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sub.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sub.w	r4, r5, r6, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sub.w	r4, r5, r6, asr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sub.w	r4, r5, r6, ror #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sub.w	r5, r2, r12, rrx
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     svc	#0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	eq
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     svceq	#255
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     svcne	#33
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab	r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab	r4, r5, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	lt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtablt	r6, r2, r9, ror #8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab	r5, r1, r4, ror #16
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab	r7, r8, r3, ror #24
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab16	r6, r2, r7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab16	r3, r5, r8, ror #8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab16	r3, r2, r1, ror #16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	ne
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab16ne	r0, r1, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtab16eq	r1, r2, r3, ror #24
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtah	r1, r3, r9
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtah	r3, r8, r3, ror #8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtah	r9, r3, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	hi
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtahhi	r6, r1, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     sxtahls	r2, r2, r4, ror #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb	r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb.w	r6, r9, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb.w	r8, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	ge
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtbge	r2, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtblt.w	r5, r1, ror #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16	r1, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16	r6, r7
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16	r3, r1, ror #16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	hs
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16hs	r3, r5, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16lo	r2, r3, ror #24
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxth	r1, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxth.w	r3, r8, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxth.w	r9, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxthne.w	r3, r9
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxthne.w	r2, r2, ror #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb	r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb.w	r6, r9, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb.w	r8, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	ge
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtbge	r2, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtblt.w	r5, r1, ror #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16	r1, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16	r6, r7
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16	r3, r1, ror #16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	hs
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16hs	r3, r5, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxtb16lo	r2, r3, ror #24
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxth	r1, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxth.w	r3, r8, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxth.w	r9, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxthne.w	r3, r9
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     sxthne.w	r2, r2, ror #16
+# CHECK-NEXT: 1.00   0.50   0.50    -      -      -      -      -     tbb	[r3, r8]
+# CHECK-NEXT: 1.00   0.50   0.50    -      -      -      -      -     tbh	[r3, r8, lsl #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT: 1.00   0.50   0.50    -      -      -      -      -     tbbeq	[r3, r8]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	hs
+# CHECK-NEXT: 1.00   0.50   0.50    -      -      -      -      -     tbhhs	[r3, r8, lsl #1]
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     teq.w	r5, #61440
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     teq.w	r4, r5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     teq.w	r4, r5, lsl #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     teq.w	r4, r5, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     teq.w	r4, r5, lsr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     teq.w	r4, r5, asr #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     teq.w	r4, r5, ror #5
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     tst.w	r5, #61440
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     tst	r2, r5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     tst.w	r3, r12, lsl #5
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     tst.w	r4, r11, lsr #4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     tst.w	r5, r10, lsr #12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     tst.w	r6, r9, asr #30
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     tst.w	r7, r8, ror #2
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uadd16	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uadd8	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	gt
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uadd16gt	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uadd8le	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uasx	r9, r12, r0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uasxeq	r9, r12, r0
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uasx	r9, r12, r0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uasxeq	r9, r12, r0
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ubfx	r4, r5, #16, #1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	gt
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     ubfxgt	r4, r5, #16, #16
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhadd16	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhadd8	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhadd16gt	r4, r8, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhadd8gt	r4, r8, r2
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uhasx	r4, r1, r5
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uhsax	r5, r6, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	gt
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uhasxgt	r6, r9, r8
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uhsaxgt	r7, r8, r12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhsub16	r5, r8, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhsub8	r1, r7, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itt	lt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhsub16lt	r4, r9, r12
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uhsub8lt	r3, r1, r5
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     umaal	r3, r4, r5, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	lt
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     umaallt	r3, r4, r5, r6
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     umlal	r2, r4, r6, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	gt
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     umlalgt	r6, r1, r2, r6
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     umull	r2, r4, r6, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	gt
+# CHECK-NEXT:  -      -      -      -     2.00    -      -      -     umullgt	r6, r1, r2, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqadd16	r1, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqadd8	r3, r4, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqadd16gt	r4, r7, r9
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqadd8le	r8, r1, r2
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uqasx	r1, r2, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uqsax	r3, r4, r8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	gt
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uqasxgt	r4, r7, r9
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     uqsaxle	r8, r1, r2
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqsub8	r8, r2, r9
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqsub16	r1, r9, r7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqsub8gt	r3, r1, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uqsub16le	r4, r6, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usad8	r1, r9, r7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usada8	r8, r2, r9, r12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	gt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usada8gt	r3, r1, r6, r9
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usad8le	r4, r6, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usat	r8, #1, r10
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usat	r8, #4, r10
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usat	r8, #5, r10, lsl #31
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usat	r8, #16, r10, asr #1
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usat16	r2, #2, r7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     usat16	r3, #15, r5
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usax	r2, r3, r4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usaxne	r6, r1, r9
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usax	r2, r3, r4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usaxne	r6, r1, r9
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usub16	r4, r2, r7
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usub8	r1, r8, r5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     ite	hi
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usub16hi	r1, r1, r3
+# CHECK-NEXT:  -     0.50   0.50    -     1.00    -      -      -     usub8ls	r9, r2, r3
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab	r2, r3, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab	r4, r5, r6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	lt
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtablt	r6, r2, r9, ror #8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab	r5, r1, r4, ror #16
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab	r7, r8, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ge
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab16ge	r0, r1, r4
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab16	r6, r2, r7
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab16	r3, r5, r8, ror #8
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab16	r3, r2, r1, ror #16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	eq
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtab16eq	r1, r2, r3, ror #24
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtah	r1, r3, r9
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	hi
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtahhi	r6, r1, r6
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtah	r3, r8, r3, ror #8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	lo
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtahlo	r2, r2, r4, ror #16
+# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     uxtah	r9, r3, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ge
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtbge	r2, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb	r5, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb.w	r6, r9, ror #8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	lo
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtblo.w	r5, r1, ror #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb.w	r8, r3, ror #24
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb16	r1, r4
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb16	r6, r7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	hs
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb16hs	r3, r5, ror #8
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb16	r3, r1, ror #16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ge
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxtb16ge	r2, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	ne
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxthne.w	r3, r9
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxth	r1, r6
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxth.w	r3, r8, ror #8
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     it	le
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxthle.w	r2, r2, ror #16
+# CHECK-NEXT:  -     0.50   0.50    -      -      -      -      -     uxth.w	r9, r3, ror #24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     wfe
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     wfi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     yield
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     itet	lt
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     wfelt
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     wfige
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     yieldlt
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     hint	#6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     hint.w	#6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     hint.w	#102


        


More information about the llvm-commits mailing list