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