1300 lines
89 KiB
ArmAsm
1300 lines
89 KiB
ArmAsm
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
|
# RUN: llvm-mca -mtriple=thumbv7-m.main-none-none-eabi -mcpu=cortex-m7 -instruction-tables < %s | FileCheck %s
|
|
|
|
adc r0, r1, #0
|
|
adcs r0, r1, #0
|
|
adcs r0, r1
|
|
adc.w r0, r1, r2
|
|
adcs.w r0, r1, r2
|
|
adc.w r0, r1, r2, LSL #1
|
|
adcs.w r0, r1, r2, LSL #1
|
|
adds r0, r1, #1
|
|
adds r0, #42
|
|
add.w r0, r1, #1
|
|
adds.w r0, r1, #1
|
|
addw r0, r1, #1
|
|
adds r0, r1, r2
|
|
add r0, r1
|
|
add.w r0, r1, r2
|
|
adds.w r0, r1, r2
|
|
add.w r0, r1, r2, LSL #1
|
|
adds.w r0, r1, r2, LSL #1
|
|
add r0, sp, #1
|
|
add sp, sp, #1
|
|
add.w r0, sp, #1
|
|
adds.w r0, sp, #1
|
|
addw r0, sp, #1
|
|
add r0, sp, r0
|
|
add sp, r1
|
|
add.w r0, sp, r1
|
|
adds.w r0, sp, r1
|
|
add.w r0, sp, r1, LSL #1
|
|
adds.w r0, sp, r1, LSL #1
|
|
adr r0, #-6
|
|
and r0, r1, #1
|
|
ands r0, r1, #1
|
|
ands r1, r0
|
|
and.w r0, r1, r2
|
|
ands.w r0, r1, r2
|
|
and.w r0, r1, r2, LSL #1
|
|
ands.w r0, r1, r2, LSL #1
|
|
asrs r0, r1, #1
|
|
asr.w r0, r1, #1
|
|
asrs.w r0, r1, #1
|
|
asrs r0, r1
|
|
asr.w r0, r1, r2
|
|
asrs.w r0, r1, r2
|
|
bfc r0, #1, #2
|
|
bfi r0, r1, #1, #2
|
|
bic r0, r1, #1
|
|
bics r0, r1, #1
|
|
bics r0, r1
|
|
bic.w r0, r1, r2
|
|
bics.w r0, r1, r2
|
|
bic.w r0, r1, r2, LSL #1
|
|
bics.w r0, r1, r2, LSL #1
|
|
bkpt #1
|
|
clrex
|
|
clz r0, r1
|
|
cmn r0, #1
|
|
cmn r0, r1
|
|
cmn.w r0, r1
|
|
cmn.w r0, r1, LSL #1
|
|
cmp r0, #1
|
|
cmp.w r0, #1
|
|
cmp r0, r1
|
|
cmp r0, r10
|
|
cmp.w r0, r1
|
|
cmp.w r0, r1, LSL #1
|
|
#cpsie if
|
|
#dbg #1
|
|
dmb
|
|
dsb
|
|
eor r0, r1, #1
|
|
eors r0, r1, #1
|
|
eors r0, r1
|
|
eor.w r0, r1, r2
|
|
eors.w r0, r1, r2
|
|
eor.w r0, r1, r2, LSL #1
|
|
eors.w r0, r1, r2, LSL #1
|
|
isb
|
|
#it eq
|
|
#adceq r0, r1, #1
|
|
ldm r0!, {r1}
|
|
ldm r0, {r1}
|
|
ldm.w r0, {r1}
|
|
ldm.w r0!, {r1}
|
|
ldmdb r0, {r1}
|
|
ldmdb r0!, {r1}
|
|
ldr r0, [r1, #4]
|
|
ldr r0, [sp, #4]
|
|
ldr.w r0, [r1, #4]
|
|
ldr r0, [r1, #-1]
|
|
ldr r0, [r1], #1
|
|
ldr r0, [r1, #1]!
|
|
ldr r0, #4
|
|
ldr.w r0, #4
|
|
ldr r0, [r1, r2]
|
|
ldr.w r0, [r1, r2]
|
|
ldr.w r0, [r1, r2, LSL #1]
|
|
ldrb r0, [r1, #1]
|
|
ldrb.w r0, [r1, #1]
|
|
ldrb r0, [r1, #-1]
|
|
ldrb r0, [r1], #1
|
|
ldrb r0, [r1, #1]!
|
|
ldrb r0, #4
|
|
ldrb r0, [r1, r2]
|
|
ldrb.w r0, [r1, r2]
|
|
ldrb.w r0, [r1, r2, LSL #1]
|
|
ldrbt r0, [r1, #1]
|
|
ldrd r0, r2, [r1]
|
|
ldrd r0, r2, [r1, #-4]
|
|
ldrd r0, r2, [r1], #4
|
|
ldrd r0, r2, [r1, #4]!
|
|
ldrd r0, r2, next
|
|
next:
|
|
ldrex r0, [r1]
|
|
ldrex r0, [r1, #4]
|
|
ldrexb r0, [r1]
|
|
ldrexh r0, [r1]
|
|
ldrh r0, [r1, #2]
|
|
ldrh.w r0, [r1, #1]
|
|
ldrh r0, [r1, #-1]
|
|
ldrh r0, [r1], #1
|
|
ldrh r0, [r1, #1]!
|
|
ldrh r0, #4
|
|
ldrh r0, [r1, r2]
|
|
ldrh.w r0, [r1, r2]
|
|
ldrh.w r0, [r1, r2, LSL #1]
|
|
ldrht r0, [r1, #1]
|
|
ldrsb r0, [r1, #1]
|
|
ldrsb r0, [r1, #-1]
|
|
ldrsb r0, [r1], #1
|
|
ldrsb r0, [r1, #1]!
|
|
ldrsb r0, #4
|
|
ldrsb r0, [r1, r2]
|
|
ldrsb.w r0, [r1, r2]
|
|
ldrsb.w r0, [r1, r2, LSL #1]
|
|
ldrsbt r0, [r1, #1]
|
|
ldrsh r0, [r1, #2]
|
|
ldrsh r0, [r1, #-1]
|
|
ldrsh r0, [r1], #1
|
|
ldrsh r0, [r1, #1]!
|
|
ldrsh r0, #4
|
|
ldrsh r0, [r1, r2]
|
|
ldrsh.w r0, [r1, r2]
|
|
ldrsh.w r0, [r1, r2, LSL #1]
|
|
ldrsht r0, [r1, #1]
|
|
ldrt r0, [r1, #1]
|
|
lsls r0, r1, #1
|
|
lsl.w r0, r1, #1
|
|
lsls.w r0, r1, #1
|
|
lsls r0, r1
|
|
lsl.w r0, r1, r2
|
|
lsls.w r0, r1, r2
|
|
lsrs r0, r1, #1
|
|
lsr.w r0, r1, #1
|
|
lsrs.w r0, r1, #1
|
|
lsrs r0, r1
|
|
lsr.w r0, r1, r2
|
|
lsrs.w r0, r1, r2
|
|
mla r0, r1, r2, r3
|
|
mls r0, r1, r2, r3
|
|
movs r0, #1
|
|
mov.w r0, #1
|
|
movs.w r0, #1
|
|
movw r0, #1
|
|
mov r0, r1
|
|
#movs r0, r1
|
|
mov.w r0, r1
|
|
movs.w r0, r1
|
|
movt r0, #1
|
|
mrs r0, apsr
|
|
msr apsr, r0
|
|
muls r1, r2, r1
|
|
mul r0, r1, r2
|
|
mvn r0, #1
|
|
mvns r0, #1
|
|
mvns r0, r1
|
|
mvn.w r0, r1
|
|
mvns.w r0, r1
|
|
mvn.w r0, r1, LSL #1
|
|
mvns.w r0, r1, LSL #1
|
|
nop
|
|
nop.w
|
|
orn r0, r1, #1
|
|
orns r0, r1, #1
|
|
orn r0, r1, r2
|
|
orns r0, r1, r2
|
|
orn r0, r1, r2, LSL #1
|
|
orns r0, r1, r2, LSL #1
|
|
orr r0, r1, #1
|
|
orrs r0, r1, #1
|
|
orrs r0, r1
|
|
orr r0, r1, r2
|
|
orrs r0, r1, r2
|
|
orr r0, r1, r2, LSL #1
|
|
orrs r0, r1, r2, LSL #1
|
|
pkhbt r0, r1, r2
|
|
pkhbt r0, r1, r2, LSL #1
|
|
pkhtb r0, r1, r2
|
|
pkhtb r0, r1, r2, ASR #1
|
|
pop { r0 }
|
|
pop.w { r0, r1 }
|
|
pop.w { r0 }
|
|
push { r0 }
|
|
push.w { r0, r1 }
|
|
push.w { r0 }
|
|
qadd r0, r1, r2
|
|
qadd16 r0, r1, r2
|
|
qadd8 r0, r1, r2
|
|
qasx r0, r1, r2
|
|
qdadd r0, r1, r2
|
|
qdsub r0, r1, r2
|
|
qsax r0, r1, r2
|
|
qsub r0, r1, r2
|
|
qsub16 r0, r1, r2
|
|
qsub8 r0, r1, r2
|
|
rbit r0, r1
|
|
rev r0, r1
|
|
rev.w r0, r1
|
|
rev16 r0, r1
|
|
rev16.w r0, r1
|
|
revsh r0, r1
|
|
revsh.w r0, r1
|
|
ror r0, r1, #1
|
|
rors r0, r1, #1
|
|
rors r0, r1
|
|
ror.w r0, r1, r2
|
|
rors.w r0, r1, r2
|
|
rrx r0, r1
|
|
rrxs r0, r1
|
|
rsbs r0, r1, #0
|
|
rsb.w r0, r1, #1
|
|
rsbs.w r0, r1, #1
|
|
rsb r0, r1, r2
|
|
rsbs r0, r1, r2
|
|
rsb r0, r1, r2, LSL #1
|
|
rsbs r0, r1, r2, LSL #1
|
|
sadd16 r0, r1, r2
|
|
sadd8 r0, r1, r2
|
|
sasx r0, r1, r2
|
|
sbc r0, r1, #1
|
|
sbcs r0, r1, #1
|
|
sbcs r0, r1
|
|
sbc r0, r1, r2
|
|
sbcs r0, r1, r2
|
|
sbc r0, r1, r2, LSL #1
|
|
sbcs r0, r1, r2, LSL #1
|
|
sbfx r0, r1, #1, #2
|
|
sdiv r0, r1, r2
|
|
sel r0, r1, r2
|
|
#sev
|
|
shadd16 r0, r1, r2
|
|
shadd8 r0, r1, r2
|
|
shasx r0, r1, r2
|
|
shsax r0, r1, r2
|
|
shsub16 r0, r1, r2
|
|
shsub8 r0, r1, r2
|
|
smlabb r0, r1, r2, r3
|
|
smlabt r0, r1, r2, r3
|
|
smlatb r0, r1, r2, r3
|
|
smlatt r0, r1, r2, r3
|
|
smlad r0, r1, r2, r3
|
|
smladx r0, r1, r2, r3
|
|
smlal r0, r1, r2, r3
|
|
smlalbb r0, r1, r2, r3
|
|
smlalbt r0, r1, r2, r3
|
|
smlaltb r0, r1, r2, r3
|
|
smlaltt r0, r1, r2, r3
|
|
smlald r0, r1, r2, r3
|
|
smlaldx r0, r1, r2, r3
|
|
smlawb r0, r1, r2, r3
|
|
smlawt r0, r1, r2, r3
|
|
smlsd r0, r1, r2, r3
|
|
smlsdx r0, r1, r2, r3
|
|
smlsld r0, r1, r2, r3
|
|
smlsldx r0, r1, r2, r3
|
|
smmla r0, r1, r2, r3
|
|
smmlar r0, r1, r2, r3
|
|
smmls r0, r1, r2, r3
|
|
smmlsr r0, r1, r2, r3
|
|
smmul r0, r1, r2
|
|
smmulr r0, r1, r2
|
|
smuad r0, r1, r2
|
|
smuadx r0, r1, r2
|
|
smulbb r0, r1, r2
|
|
smulbt r0, r1, r2
|
|
smultb r0, r1, r2
|
|
smultt r0, r1, r2
|
|
smull r0, r1, r2, r3
|
|
smulwb r0, r1, r2
|
|
smulwt r0, r1, r2
|
|
smusd r0, r1, r2
|
|
smusdx r0, r1, r2
|
|
ssat r0, #1, r2
|
|
ssat r0, #1, r2, LSL #1
|
|
ssat16 r0, #1, r1
|
|
ssax r0, r1, r2
|
|
ssub16 r0, r1, r2
|
|
ssub8 r0, r1, r2
|
|
stm r0!, { r1 }
|
|
stm.w r0, { r1 }
|
|
stm.w r0!, { r1 }
|
|
stmdb r0, { r1 }
|
|
stmdb r0!, { r1 }
|
|
str r0, [ r1 ]
|
|
str r0, [ r1, #4 ]
|
|
str r0, [ sp, #4 ]
|
|
str.w r0, [ r1, #1 ]
|
|
str r0, [ r1, #-1 ]
|
|
str r0, [ r1 ], #1
|
|
#str r0, [ r1, #1 ]!
|
|
str r0, [ r1, r2 ]
|
|
str.w r0, [ r1, r2 ]
|
|
str.w r0, [ r1, r2, LSL #1 ]
|
|
strb r0, [ r1 ]
|
|
strb r0, [ r1, #1 ]
|
|
strb.w r0, [ r1, #1 ]
|
|
strb r0, [ r1, #-1 ]
|
|
strb r0, [ r1 ], #1
|
|
strb r0, [ r1, #1 ]!
|
|
strb r0, [ r1, r2 ]
|
|
strb.w r0, [ r1, r2 ]
|
|
strb.w r0, [ r1, r2, LSL #1 ]
|
|
strbt r0, [ r1, #1 ]
|
|
strd r0, r1, [ r2, #4 ]
|
|
strd r0, r1, [ r2 ], #4
|
|
strd r0, r1, [ r2, #4 ]!
|
|
strex r0, r1, [ r2 ]
|
|
strex r0, r1, [ r2, #4 ]
|
|
strexb r0, r1, [ r2 ]
|
|
strexh r0, r1, [ r2 ]
|
|
strh r0, [ r1 ]
|
|
strh r0, [ r1, #2 ]
|
|
strh.w r0, [ r1, #2 ]
|
|
strh r0, [ r1, #-1 ]
|
|
strh r0, [ r1 ], #1
|
|
strh r0, [ r1, #1 ]!
|
|
strh r0, [ r1, r2 ]
|
|
strh.w r0, [ r1, r2 ]
|
|
strh.w r0, [ r1, r2, LSL #1 ]
|
|
strht r0, [r1, #1 ]
|
|
strt r0, [r1, #1 ]
|
|
subs r0, r1, #1
|
|
subs r0, #1
|
|
sub.w r0, r1, #1
|
|
subs.w r0, r1, #1
|
|
subw r0, r1, #1
|
|
subs r0, r1, r2
|
|
sub.w r0, r1, r2
|
|
subs.w r0, r1, r2
|
|
sub.w r0, r1, r2, LSL #1
|
|
subs.w r0, r1, r2, LSL #1
|
|
sub sp, sp, #4
|
|
sub.w r0, sp, #1
|
|
subs.w r0, sp, #1
|
|
subw r0, sp, #1
|
|
sub r0, sp, r1
|
|
subs r0, sp, r1
|
|
sub r0, sp, r1, LSL #1
|
|
subs r0, sp, r1, LSL #1
|
|
#svc #1 ; treated as a call
|
|
sxtab r0, r1, r2
|
|
sxtab r0, r1, r2, ROR #8
|
|
sxtab16 r0, r1, r2
|
|
sxtab16 r0, r1, r2, ROR #8
|
|
sxtah r0, r1, r2
|
|
sxtah r0, r1, r2, ROR #8
|
|
sxtb r0, r1
|
|
sxtb.w r0, r1
|
|
sxtb.w r0, r1, ROR #8
|
|
sxtb16 r0, r1
|
|
sxtb16 r0, r1, ROR #8
|
|
sxth r0, r1
|
|
sxth.w r0, r1
|
|
sxth.w r0, r1, ROR #8
|
|
tbb [r0, r1]
|
|
tbh [r0, r1, LSL #1]
|
|
teq r0, #1
|
|
teq r0, r1
|
|
teq r0, r1, LSL #1
|
|
tst r0, #1
|
|
tst r0, r1
|
|
tst.w r0, r1
|
|
tst.w r0, r1, LSL #1
|
|
uadd16 r0, r1, r2
|
|
uadd8 r0, r1, r2
|
|
uasx r0, r1, r2
|
|
ubfx r0, r1, #1, #2
|
|
#udf #1
|
|
udiv r0, r1, r2
|
|
uhadd16 r0, r1, r2
|
|
uhadd8 r0, r1, r2
|
|
uhasx r0, r1, r2
|
|
uhsax r0, r1, r2
|
|
uhsub16 r0, r1, r2
|
|
uhsub8 r0, r1, r2
|
|
umaal r0, r1, r2, r3
|
|
umlal r0, r1, r2, r3
|
|
umull r0, r1, r2, r3
|
|
uqadd16 r0, r1, r2
|
|
uqadd8 r0, r1, r2
|
|
uqasx r0, r1, r2
|
|
uqsax r0, r1, r2
|
|
uqsub16 r0, r1, r2
|
|
uqsub8 r0, r1, r2
|
|
usad8 r0, r1, r2
|
|
usada8 r0, r1, r2, r3
|
|
usat r0, #1, r1
|
|
usat r0, #1, r1, LSL #1
|
|
usat16 r0, #1, r1
|
|
usax r0, r1, r2
|
|
usub16 r0, r1, r2
|
|
usub8 r0, r1, r2
|
|
uxtab r0, r1, r2
|
|
uxtab r0, r1, r2, ROR #8
|
|
uxtab16 r0, r1, r2
|
|
uxtab16 r0, r1, r2, ROR #8
|
|
uxtah r0, r1, r2
|
|
uxtah r0, r1, r2, ROR #8
|
|
uxtb r0, r1
|
|
uxtb.w r0, r1
|
|
uxtb.w r0, r1, ROR #8
|
|
uxtb16 r0, r1
|
|
uxtb16 r0, r1, ROR #8
|
|
uxth r0, r1
|
|
uxth.w r0, r1
|
|
uxth.w r0, r1, ROR #8
|
|
wfe
|
|
wfi
|
|
yield
|
|
|
|
# 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, #0
|
|
# CHECK-NEXT: 1 1 0.50 adcs r0, r1, #0
|
|
# CHECK-NEXT: 1 1 0.50 U adcs r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 adc.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 adcs.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 adc.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 adcs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 adds r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 adds r0, #42
|
|
# CHECK-NEXT: 1 1 0.50 add.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 adds.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 addw r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 adds r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 add r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 add.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 adds.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 add.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 adds.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 add.w r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 U add.w sp, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 add.w r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 adds.w r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 addw r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 U add r0, sp, r0
|
|
# CHECK-NEXT: 1 1 0.50 U add sp, r1
|
|
# CHECK-NEXT: 1 1 0.50 add.w r0, sp, r1
|
|
# CHECK-NEXT: 1 1 0.50 adds.w r0, sp, r1
|
|
# CHECK-NEXT: 1 2 1.00 add.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 adds.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 U adr.w r0, #-6
|
|
# CHECK-NEXT: 1 1 0.50 and r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 ands r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 ands r1, r0
|
|
# CHECK-NEXT: 1 1 0.50 and.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 ands.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 and.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 1.00 ands.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 1.00 asrs r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 asr.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 asrs.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 asrs r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 asr.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 asrs.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 bfc r0, #1, #2
|
|
# CHECK-NEXT: 1 1 1.00 bfi r0, r1, #1, #2
|
|
# CHECK-NEXT: 1 1 0.50 bic r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 bics r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 bics r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 bic.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 bics.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 bic.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 bics.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 3 0.50 U bkpt #1
|
|
# CHECK-NEXT: 1 3 0.50 * * U clrex
|
|
# CHECK-NEXT: 1 1 0.50 clz r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 cmn.w r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 cmn r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 cmn.w r0, r1
|
|
# CHECK-NEXT: 1 2 1.00 cmn.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 cmp r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 cmp.w r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 cmp r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 U cmp r0, r10
|
|
# CHECK-NEXT: 1 1 0.50 cmp.w r0, r1
|
|
# CHECK-NEXT: 1 2 1.00 cmp.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 1 3 0.50 * * U dmb sy
|
|
# CHECK-NEXT: 1 3 0.50 * * U dsb sy
|
|
# CHECK-NEXT: 1 1 0.50 eor r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 eors r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 eors r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 eor.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 eors.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 eor.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 eors.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 3 0.50 * * U isb sy
|
|
# CHECK-NEXT: 1 2 0.50 * ldm r0!, {r1}
|
|
# CHECK-NEXT: 1 2 0.50 * ldm.w r0, {r1}
|
|
# CHECK-NEXT: 1 2 0.50 * ldm.w r0, {r1}
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r1, [r0], #4
|
|
# CHECK-NEXT: 1 2 0.50 * ldmdb r0, {r1}
|
|
# CHECK-NEXT: 1 2 0.50 * ldmdb r0!, {r1}
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [r1, #4]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [sp, #4]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr.w r0, [r1, #4]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [r1], #1
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 1 0.50 * ldr r0, [pc, #4]
|
|
# CHECK-NEXT: 1 1 0.50 * ldr.w r0, [pc, #4]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [r1, r2]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 2 0.50 * ldr.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb.w r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 2 0.50 * ldrb.w r0, [pc, #4]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrb.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 0.50 U ldrbt r0, [r1, #1]
|
|
# CHECK-NEXT: 1 2 0.50 * ldrd r0, r2, [r1]
|
|
# CHECK-NEXT: 1 2 0.50 * ldrd r0, r2, [r1, #-4]
|
|
# CHECK-NEXT: 1 2 0.50 * ldrd r0, r2, [r1], #4
|
|
# CHECK-NEXT: 1 2 0.50 * ldrd r0, r2, [r1, #4]!
|
|
# CHECK-NEXT: 1 2 0.50 * ldrd r0, r2, next
|
|
# CHECK-NEXT: 1 2 0.50 * * U ldrex r0, [r1]
|
|
# CHECK-NEXT: 1 2 0.50 * * U ldrex r0, [r1, #4]
|
|
# CHECK-NEXT: 1 3 0.50 * * U ldrexb r0, [r1]
|
|
# CHECK-NEXT: 1 3 0.50 * * U ldrexh r0, [r1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh r0, [r1, #2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh.w r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 2 0.50 * ldrh.w r0, [pc, #4]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrh.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 0.50 U ldrht r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb.w r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 2 0.50 * ldrsb.w r0, [pc, #4]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsb.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 0.50 U ldrsbt r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh.w r0, [r1, #2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 2 0.50 * ldrsh.w r0, [pc, #4]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 0.50 * ldrsh.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 0.50 U ldrsht r0, [r1, #1]
|
|
# CHECK-NEXT: 1 2 0.50 U ldrt r0, [r1, #1]
|
|
# CHECK-NEXT: 1 1 1.00 lsls r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 lsl.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 lsls.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 lsls r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 lsl.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 lsls.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 lsrs r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 lsr.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 lsrs.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 lsrs r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 lsr.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 lsrs.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 mla r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 mls r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 1 0.50 movs r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 mov.w r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 movs.w r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 movw r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 mov r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 mov.w r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 movs.w r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 movt r0, #1
|
|
# CHECK-NEXT: 1 3 0.50 U mrs r0, apsr
|
|
# CHECK-NEXT: 1 3 0.50 U msr apsr_nzcvq, r0
|
|
# CHECK-NEXT: 1 2 1.00 muls r1, r2, r1
|
|
# CHECK-NEXT: 1 2 1.00 mul r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 mvn r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 mvns r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 mvns r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 mvn.w r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 mvns.w r0, r1
|
|
# CHECK-NEXT: 1 2 1.00 mvn.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 mvns.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 1 3 0.50 * * U nop
|
|
# CHECK-NEXT: 1 3 0.50 * * U nop.w
|
|
# CHECK-NEXT: 1 1 0.50 orn r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 orns r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 orn r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 orns r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 orn r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 orns r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 orr r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 orrs r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 orrs r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 orr.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 orrs.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 orr.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 orrs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 pkhbt r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 pkhbt r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 pkhbt r0, r2, r1
|
|
# CHECK-NEXT: 1 2 1.00 pkhtb r0, r1, r2, asr #1
|
|
# CHECK-NEXT: 1 2 0.50 * U pop {r0}
|
|
# CHECK-NEXT: 1 2 0.50 * pop.w {r0, r1}
|
|
# CHECK-NEXT: 1 2 0.50 * ldr r0, [sp], #4
|
|
# CHECK-NEXT: 1 3 1.00 * U push {r0}
|
|
# CHECK-NEXT: 1 3 1.00 * push.w {r0, r1}
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [sp, #-4]!
|
|
# CHECK-NEXT: 1 2 1.00 qadd r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qadd16 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qadd8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qasx r0, r1, r2
|
|
# CHECK-NEXT: 1 3 1.00 qdadd r0, r1, r2
|
|
# CHECK-NEXT: 1 3 1.00 qdsub r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qsax r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qsub r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qsub16 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 qsub8 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 rbit r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 rev r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 rev.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 rev16 r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 rev16.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 revsh r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 revsh.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 ror.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 rors.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 1.00 rors r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 ror.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 rors.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 rrx r0, r1
|
|
# CHECK-NEXT: 1 2 1.00 rrxs r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 rsbs r0, r1, #0
|
|
# CHECK-NEXT: 1 1 0.50 rsb.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 rsbs.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 U rsb r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 U rsbs r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 rsb r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 rsbs r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 1.00 * * U sadd16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U sadd8 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U sasx r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 sbc r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 sbcs r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 U sbcs r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 sbc.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 sbcs.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 sbc.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 sbcs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 sbfx r0, r1, #1, #2
|
|
# CHECK-NEXT: 2 7 1.00 sdiv r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * sel r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 shadd16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 shadd8 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 shasx r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 shsax r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 shsub16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 shsub8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smlabb r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlabt r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlatb r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlatt r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlad r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smladx r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlal r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlalbb r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlalbt r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlaltb r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlaltt r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlald r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlaldx r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlawb r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlawt r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlsd r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlsdx r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlsld r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smlsldx r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smmla r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smmlar r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 U smmls r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smmlsr r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smmul r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smmulr r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smuad r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smuadx r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smulbb r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smulbt r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smultb r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smultt r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smull r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 smulwb r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smulwt r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smusd r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 smusdx r0, r1, r2
|
|
# CHECK-NEXT: 1 3 1.00 ssat r0, #1, r2
|
|
# CHECK-NEXT: 1 3 1.00 ssat r0, #1, r2, lsl #1
|
|
# CHECK-NEXT: 1 3 1.00 ssat16 r0, #1, r1
|
|
# CHECK-NEXT: 1 1 1.00 * * U ssax r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U ssub16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U ssub8 r0, r1, r2
|
|
# CHECK-NEXT: 1 3 1.00 * stm r0!, {r1}
|
|
# CHECK-NEXT: 1 3 1.00 * stm.w r0, {r1}
|
|
# CHECK-NEXT: 1 3 1.00 * stm.w r0!, {r1}
|
|
# CHECK-NEXT: 1 3 1.00 * stmdb r0, {r1}
|
|
# CHECK-NEXT: 1 3 1.00 * str r1, [r0, #-4]!
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [r1]
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [r1, #4]
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [sp, #4]
|
|
# CHECK-NEXT: 1 3 1.00 * str.w r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 1.00 * str r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 1.00 * str.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 1.00 * str.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 1.00 * strb r0, [r1]
|
|
# CHECK-NEXT: 1 3 1.00 * strb r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 1.00 * strb.w r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 1.00 * strb r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 1.00 * strb r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 1.00 * strb r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 3 1.00 * strb r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 1.00 * strb.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 1.00 * strb.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 1.00 U strbt r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 1.00 * strd r0, r1, [r2, #4]
|
|
# CHECK-NEXT: 1 3 1.00 * strd r0, r1, [r2], #4
|
|
# CHECK-NEXT: 1 3 1.00 * strd r0, r1, [r2, #4]!
|
|
# CHECK-NEXT: 1 3 1.00 * * U strex r0, r1, [r2]
|
|
# CHECK-NEXT: 1 3 1.00 * * U strex r0, r1, [r2, #4]
|
|
# CHECK-NEXT: 1 3 1.00 * * U strexb r0, r1, [r2]
|
|
# CHECK-NEXT: 1 3 1.00 * * U strexh r0, r1, [r2]
|
|
# CHECK-NEXT: 1 3 1.00 * strh r0, [r1]
|
|
# CHECK-NEXT: 1 3 1.00 * strh r0, [r1, #2]
|
|
# CHECK-NEXT: 1 3 1.00 * strh.w r0, [r1, #2]
|
|
# CHECK-NEXT: 1 3 1.00 * strh r0, [r1, #-1]
|
|
# CHECK-NEXT: 1 3 1.00 * strh r0, [r1], #1
|
|
# CHECK-NEXT: 1 3 1.00 * strh r0, [r1, #1]!
|
|
# CHECK-NEXT: 1 3 1.00 * strh r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 1.00 * strh.w r0, [r1, r2]
|
|
# CHECK-NEXT: 1 3 1.00 * strh.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: 1 3 1.00 U strht r0, [r1, #1]
|
|
# CHECK-NEXT: 1 3 1.00 U strt r0, [r1, #1]
|
|
# CHECK-NEXT: 1 1 0.50 subs r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 subs r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 sub.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 subs.w r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 subw r0, r1, #1
|
|
# CHECK-NEXT: 1 1 0.50 subs r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 sub.w r0, r1, r2
|
|
# CHECK-NEXT: 1 1 0.50 subs.w r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 sub.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 subs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 U sub sp, #4
|
|
# CHECK-NEXT: 1 1 0.50 sub.w r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 subs.w r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 subw r0, sp, #1
|
|
# CHECK-NEXT: 1 1 0.50 sub.w r0, sp, r1
|
|
# CHECK-NEXT: 1 1 0.50 subs.w r0, sp, r1
|
|
# CHECK-NEXT: 1 2 1.00 sub.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 subs.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 1 2 1.00 sxtab r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 sxtab r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 1 2 1.00 sxtab16 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 sxtab16 r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 1 2 1.00 sxtah r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 sxtah r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 1 1 1.00 sxtb r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 sxtb.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 sxtb.w r0, r1, ror #8
|
|
# CHECK-NEXT: 1 1 1.00 sxtb16 r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 sxtb16 r0, r1, ror #8
|
|
# CHECK-NEXT: 1 1 1.00 sxth r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 sxth.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 sxth.w r0, r1, ror #8
|
|
# CHECK-NEXT: 2 2 0.50 U tbb [r0, r1]
|
|
# CHECK-NEXT: 2 2 0.50 U tbh [r0, r1, lsl #1]
|
|
# CHECK-NEXT: 1 1 0.50 teq.w r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 teq.w r0, r1
|
|
# CHECK-NEXT: 1 2 1.00 teq.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 1 1 0.50 tst.w r0, #1
|
|
# CHECK-NEXT: 1 1 0.50 tst r0, r1
|
|
# CHECK-NEXT: 1 1 0.50 tst.w r0, r1
|
|
# CHECK-NEXT: 1 2 1.00 tst.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 1 1 1.00 * * U uadd16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U uadd8 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U uasx r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 ubfx r0, r1, #1, #2
|
|
# CHECK-NEXT: 2 7 1.00 udiv r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 uhadd16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 uhadd8 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 uhasx r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 uhsax r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 uhsub16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 uhsub8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 umaal r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 umlal r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 umull r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 2 1.00 uqadd16 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uqadd8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uqasx r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uqsax r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uqsub16 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uqsub8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 usad8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 usada8 r0, r1, r2, r3
|
|
# CHECK-NEXT: 1 3 1.00 usat r0, #1, r1
|
|
# CHECK-NEXT: 1 3 1.00 usat r0, #1, r1, lsl #1
|
|
# CHECK-NEXT: 1 3 1.00 usat16 r0, #1, r1
|
|
# CHECK-NEXT: 1 1 1.00 * * U usax r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U usub16 r0, r1, r2
|
|
# CHECK-NEXT: 1 1 1.00 * * U usub8 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uxtab r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uxtab r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 1 2 1.00 uxtab16 r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uxtab16 r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 1 2 1.00 uxtah r0, r1, r2
|
|
# CHECK-NEXT: 1 2 1.00 uxtah r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 1 1 1.00 uxtb r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 uxtb.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 uxtb.w r0, r1, ror #8
|
|
# CHECK-NEXT: 1 1 1.00 uxtb16 r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 uxtb16 r0, r1, ror #8
|
|
# CHECK-NEXT: 1 1 1.00 uxth r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 uxth.w r0, r1
|
|
# CHECK-NEXT: 1 1 1.00 uxth.w r0, r1, ror #8
|
|
# CHECK-NEXT: 1 3 0.50 * * U wfe
|
|
# CHECK-NEXT: 1 3 0.50 * * U wfi
|
|
# CHECK-NEXT: 1 3 0.50 * * U yield
|
|
|
|
# CHECK: Resources:
|
|
# CHECK-NEXT: [0.0] - M7UnitALU
|
|
# CHECK-NEXT: [0.1] - M7UnitALU
|
|
# CHECK-NEXT: [1] - M7UnitBranch
|
|
# CHECK-NEXT: [2.0] - M7UnitLoad
|
|
# CHECK-NEXT: [2.1] - M7UnitLoad
|
|
# CHECK-NEXT: [3] - M7UnitMAC
|
|
# CHECK-NEXT: [4] - M7UnitSIMD
|
|
# CHECK-NEXT: [5] - M7UnitShift1
|
|
# CHECK-NEXT: [6] - M7UnitShift2
|
|
# CHECK-NEXT: [7] - M7UnitStore
|
|
# CHECK-NEXT: [8] - M7UnitVFP
|
|
# CHECK-NEXT: [9.0] - M7UnitVPort
|
|
# CHECK-NEXT: [9.1] - M7UnitVPort
|
|
|
|
# CHECK: Resource pressure per iteration:
|
|
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [3] [4] [5] [6] [7] [8] [9.0] [9.1]
|
|
# CHECK-NEXT: 125.00 125.00 - 35.00 35.00 43.00 90.00 88.00 2.00 45.00 - - -
|
|
|
|
# CHECK: Resource pressure by instruction:
|
|
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [3] [4] [5] [6] [7] [8] [9.0] [9.1] Instructions:
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adc r0, r1, #0
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adcs r0, r1, #0
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adcs r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adc.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adcs.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - adc.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - adcs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds r0, #42
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - addw r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - add.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - adds.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add.w r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add.w sp, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add.w r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds.w r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - addw r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add r0, sp, r0
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add sp, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - add.w r0, sp, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adds.w r0, sp, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - add.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - adds.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - adr.w r0, #-6
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - and r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - ands r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - ands r1, r0
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - and.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - ands.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - and.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - ands.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - asrs r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - asr.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - asrs.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - asrs r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - asr.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - asrs.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - bfc r0, #1, #2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - bfi r0, r1, #1, #2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - bic r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - bics r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - bics r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - bic.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - bics.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - bic.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - bics.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: - - - - - - - - - - - - - bkpt #1
|
|
# CHECK-NEXT: - - - - - - - - - - - - - clrex
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - clz r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmn.w r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmn r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmn.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - cmn.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmp r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmp.w r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmp r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmp r0, r10
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - cmp.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - cmp.w r0, r1, lsl #1
|
|
# CHECK-NEXT: - - - - - - - - - - - - - dmb sy
|
|
# CHECK-NEXT: - - - - - - - - - - - - - dsb sy
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - eor r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - eors r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - eors r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - eor.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - eors.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - eor.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - eors.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: - - - - - - - - - - - - - isb sy
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldm r0!, {r1}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldm.w r0, {r1}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldm.w r0, {r1}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r1, [r0], #4
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldmdb r0, {r1}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldmdb r0!, {r1}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [r1, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [sp, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr.w r0, [r1, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [r1], #1
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [pc, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr.w r0, [pc, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb.w r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb r0, [r1], #1
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb.w r0, [pc, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrb.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrbt r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrd r0, r2, [r1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrd r0, r2, [r1, #-4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrd r0, r2, [r1], #4
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrd r0, r2, [r1, #4]!
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrd r0, r2, next
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrex r0, [r1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrex r0, [r1, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrexb r0, [r1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrexh r0, [r1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh r0, [r1, #2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh.w r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh r0, [r1], #1
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh.w r0, [pc, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrh.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrht r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb.w r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb r0, [r1], #1
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb.w r0, [pc, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsb.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsbt r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh.w r0, [r1, #2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh r0, [r1], #1
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh.w r0, [pc, #4]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsh.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrsht r0, [r1, #1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldrt r0, [r1, #1]
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsls r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsl.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsls.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsls r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsl.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsls.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsrs r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsr.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsrs.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsrs r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsr.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - lsrs.w r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - mla r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - mls r0, r1, r2, r3
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - movs r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mov.w r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - movs.w r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - movw r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mov r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mov.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - movs.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - movt r0, #1
|
|
# CHECK-NEXT: - - - - - - - - - - - - - mrs r0, apsr
|
|
# CHECK-NEXT: - - - - - - - - - - - - - msr apsr_nzcvq, r0
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - muls r1, r2, r1
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - mul r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mvn r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mvns r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mvns r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mvn.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - mvns.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - mvn.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - mvns.w r0, r1, lsl #1
|
|
# CHECK-NEXT: - - - - - - - - - - - - - nop
|
|
# CHECK-NEXT: - - - - - - - - - - - - - nop.w
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orn r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orns r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orn r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orns r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - orn r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - orns r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orr r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orrs r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orrs r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orr.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - orrs.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - orr.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - orrs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - pkhbt r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - pkhbt r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - pkhbt r0, r2, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - pkhtb r0, r1, r2, asr #1
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - pop {r0}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - pop.w {r0, r1}
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - ldr r0, [sp], #4
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - push {r0}
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - push.w {r0, r1}
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [sp, #-4]!
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qadd r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qadd16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qadd8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qasx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - qdadd r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - qdsub r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qsax r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qsub r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qsub16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - qsub8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - rbit r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - rev r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - rev.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - rev16 r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - rev16.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - revsh r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - revsh.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - ror.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - rors.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - rors r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - ror.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - rors.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - 1.00 - - - - rrx r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - 1.00 - - - - rrxs r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - rsbs r0, r1, #0
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - rsb.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - rsbs.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - rsb r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - rsbs r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - rsb r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - rsbs r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sadd16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sadd8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sasx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sbc r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sbcs r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sbcs r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sbc.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sbcs.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - sbc.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - sbcs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sbfx r0, r1, #1, #2
|
|
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - sdiv r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sel r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - shadd16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - shadd8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - shasx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - shsax r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - shsub16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - shsub8 r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlabb r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlabt r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlatb r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlatt r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlad r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smladx r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlal r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlalbb r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlalbt r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlaltb r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlaltt r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlald r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlaldx r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlawb r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlawt r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlsd r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlsdx r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlsld r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smlsldx r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smmla r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smmlar r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smmls r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smmlsr r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smmul r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smmulr r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smuad r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smuadx r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smulbb r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smulbt r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smultb r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smultt r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smull r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smulwb r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smulwt r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smusd r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - smusdx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - ssat r0, #1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - ssat r0, #1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - ssat16 r0, #1, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - ssax r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - ssub16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - ssub8 r0, r1, r2
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - stm r0!, {r1}
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - stm.w r0, {r1}
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - stm.w r0!, {r1}
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - stmdb r0, {r1}
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r1, [r0, #-4]!
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [r1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [r1, #4]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [sp, #4]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str.w r0, [r1, #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [r1], #1
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str r0, [r1, r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - str.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb r0, [r1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb r0, [r1, #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb.w r0, [r1, #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb r0, [r1], #1
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb r0, [r1, r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strb.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strbt r0, [r1, #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strd r0, r1, [r2, #4]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strd r0, r1, [r2], #4
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strd r0, r1, [r2, #4]!
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strex r0, r1, [r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strex r0, r1, [r2, #4]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strexb r0, r1, [r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strexh r0, r1, [r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh r0, [r1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh r0, [r1, #2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh.w r0, [r1, #2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh r0, [r1, #-1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh r0, [r1], #1
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh r0, [r1, #1]!
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh r0, [r1, r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh.w r0, [r1, r2]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strh.w r0, [r1, r2, lsl #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strht r0, [r1, #1]
|
|
# CHECK-NEXT: - - - - - - - - - 1.00 - - - strt r0, [r1, #1]
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sub.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs.w r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subw r0, r1, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sub.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs.w r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - sub.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - subs.w r0, r1, r2, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sub sp, #4
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sub.w r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs.w r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subw r0, sp, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - sub.w r0, sp, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - subs.w r0, sp, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - sub.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - subs.w r0, sp, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sxtab r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sxtab r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sxtab16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sxtab16 r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sxtah r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - sxtah r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxtb r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxtb.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxtb.w r0, r1, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxtb16 r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxtb16 r0, r1, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxth r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxth.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - sxth.w r0, r1, ror #8
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - tbb [r0, r1]
|
|
# CHECK-NEXT: - - - 0.50 0.50 - - - - - - - - tbh [r0, r1, lsl #1]
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - teq.w r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - teq.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - teq.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - tst.w r0, #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - tst r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - tst.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - tst.w r0, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uadd16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uadd8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uasx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - ubfx r0, r1, #1, #2
|
|
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - udiv r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uhadd16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uhadd8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uhasx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uhsax r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uhsub16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uhsub8 r0, r1, r2
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - umaal r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - umlal r0, r1, r2, r3
|
|
# CHECK-NEXT: - - - - - 1.00 - - - - - - - umull r0, r1, r2, r3
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uqadd16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uqadd8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uqasx r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uqsax r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uqsub16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uqsub8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - usad8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - usada8 r0, r1, r2, r3
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - usat r0, #1, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - usat r0, #1, r1, lsl #1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - usat16 r0, #1, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - usax r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - usub16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - usub8 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - uxtab r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - uxtab r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - uxtab16 r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - uxtab16 r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - uxtah r0, r1, r2
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 1.00 - - - - - uxtah r0, r1, r2, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxtb r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxtb.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxtb.w r0, r1, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxtb16 r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxtb16 r0, r1, ror #8
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxth r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxth.w r0, r1
|
|
# CHECK-NEXT: 0.50 0.50 - - - - 1.00 - - - - - - uxth.w r0, r1, ror #8
|
|
# CHECK-NEXT: - - - - - - - - - - - - - wfe
|
|
# CHECK-NEXT: - - - - - - - - - - - - - wfi
|
|
# CHECK-NEXT: - - - - - - - - - - - - - yield
|