brintos

brintos / llvm-project-archived public Read only

0
0
Text · 28.5 KiB · 18a47f7 Raw
760 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -run-pass=arm-ldst-opt %s -o - | FileCheck %s3 4--- |5  target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64"6  target triple = "thumbv7m-none-unknown-eabi"7 8  define ptr @STR_pre4(ptr %p, i32 %v) { unreachable }9  define ptr @STR_pre8(ptr %p, i32 %v) { unreachable }10  define ptr @STR_pre255(ptr %p, i32 %v) { unreachable }11  define ptr @STR_pre256(ptr %p, i32 %v) { unreachable }12 13  define ptr @STRD_pre4(ptr %p, i32 %v) { unreachable }14  define ptr @STRD_pre8(ptr %p, i32 %v) { unreachable }15  define ptr @STRD_pre255(ptr %p, i32 %v) { unreachable }16  define ptr @STRD_pre256(ptr %p, i32 %v) { unreachable }17  define ptr @STRD_pre1020(ptr %p, i32 %v) { unreachable }18  define ptr @STRD_pre1024(ptr %p, i32 %v) { unreachable }19  define ptr @STRD_prem4(ptr %p, i32 %v) { unreachable }20  define ptr @STRD_prem8(ptr %p, i32 %v) { unreachable }21  define ptr @STRD_prem255(ptr %p, i32 %v) { unreachable }22  define ptr @STRD_prem256(ptr %p, i32 %v) { unreachable }23  define ptr @STRD_prem1020(ptr %p, i32 %v) { unreachable }24  define ptr @STRD_prem1024(ptr %p, i32 %v) { unreachable }25 26  define ptr @STR_post4(ptr %p, i32 %v) { unreachable }27  define ptr @STR_post8(ptr %p, i32 %v) { unreachable }28  define ptr @STR_post255(ptr %p, i32 %v) { unreachable }29  define ptr @STR_post256(ptr %p, i32 %v) { unreachable }30 31  define ptr @STRD_post4(ptr %p, i32 %v) { unreachable }32  define ptr @STRD_post8(ptr %p, i32 %v) { unreachable }33  define ptr @STRD_post255(ptr %p, i32 %v) { unreachable }34  define ptr @STRD_post256(ptr %p, i32 %v) { unreachable }35  define ptr @STRD_post1020(ptr %p, i32 %v) { unreachable }36  define ptr @STRD_post1024(ptr %p, i32 %v) { unreachable }37  define ptr @STRD_postm4(ptr %p, i32 %v) { unreachable }38  define ptr @STRD_postm8(ptr %p, i32 %v) { unreachable }39  define ptr @STRD_postm255(ptr %p, i32 %v) { unreachable }40  define ptr @STRD_postm256(ptr %p, i32 %v) { unreachable }41  define ptr @STRD_postm1020(ptr %p, i32 %v) { unreachable }42  define ptr @STRD_postm1024(ptr %p, i32 %v) { unreachable }43 44...45---46name:            STR_pre447alignment:       248tracksRegLiveness: true49liveins:50  - { reg: '$r0', virtual-reg: '' }51  - { reg: '$r1', virtual-reg: '' }52body:             |53  bb.0 (%ir-block.0):54    liveins: $r0, $r155 56    ; CHECK-LABEL: name: STR_pre457    ; CHECK: liveins: $r0, $r158    ; CHECK-NEXT: {{  $}}59    ; CHECK-NEXT: early-clobber $r0 = t2STR_PRE killed $r1, $r0, 4, 14 /* CC::al */, $noreg :: (store (s32))60    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r061    renamable $r0 = nuw t2ADDri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg62    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))63    tBX_RET 14 /* CC::al */, $noreg, implicit $r064 65...66---67name:            STR_pre868alignment:       269tracksRegLiveness: true70liveins:71  - { reg: '$r0', virtual-reg: '' }72  - { reg: '$r1', virtual-reg: '' }73body:             |74  bb.0 (%ir-block.0):75    liveins: $r0, $r176 77    ; CHECK-LABEL: name: STR_pre878    ; CHECK: liveins: $r0, $r179    ; CHECK-NEXT: {{  $}}80    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg81    ; CHECK-NEXT: t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))82    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r083    renamable $r0 = nuw t2ADDri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg84    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))85    tBX_RET 14 /* CC::al */, $noreg, implicit $r086 87...88---89name:            STR_pre25590alignment:       291tracksRegLiveness: true92liveins:93  - { reg: '$r0', virtual-reg: '' }94  - { reg: '$r1', virtual-reg: '' }95body:             |96  bb.0 (%ir-block.0):97    liveins: $r0, $r198 99    ; CHECK-LABEL: name: STR_pre255100    ; CHECK: liveins: $r0, $r1101    ; CHECK-NEXT: {{  $}}102    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg103    ; CHECK-NEXT: t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))104    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0105    renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg106    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))107    tBX_RET 14 /* CC::al */, $noreg, implicit $r0108 109...110---111name:            STR_pre256112alignment:       2113tracksRegLiveness: true114liveins:115  - { reg: '$r0', virtual-reg: '' }116  - { reg: '$r1', virtual-reg: '' }117body:             |118  bb.0 (%ir-block.0):119    liveins: $r0, $r1120 121    ; CHECK-LABEL: name: STR_pre256122    ; CHECK: liveins: $r0, $r1123    ; CHECK-NEXT: {{  $}}124    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg125    ; CHECK-NEXT: t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))126    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0127    renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg128    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))129    tBX_RET 14 /* CC::al */, $noreg, implicit $r0130 131...132---133name:            STRD_pre4134alignment:       2135tracksRegLiveness: true136liveins:137  - { reg: '$r0', virtual-reg: '' }138  - { reg: '$r1', virtual-reg: '' }139  - { reg: '$r2', virtual-reg: '' }140body:             |141  bb.0 (%ir-block.0):142    liveins: $r0, $r1, $r2143 144    ; CHECK-LABEL: name: STRD_pre4145    ; CHECK: liveins: $r0, $r1, $r2146    ; CHECK-NEXT: {{  $}}147    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg148    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))149    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0150    renamable $r0 = nuw t2ADDri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg151    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))152    tBX_RET 14 /* CC::al */, $noreg, implicit $r0153 154...155---156name:            STRD_pre8157alignment:       2158tracksRegLiveness: true159liveins:160  - { reg: '$r0', virtual-reg: '' }161  - { reg: '$r1', virtual-reg: '' }162  - { reg: '$r2', virtual-reg: '' }163body:             |164  bb.0 (%ir-block.0):165    liveins: $r0, $r1, $r2166 167    ; CHECK-LABEL: name: STRD_pre8168    ; CHECK: liveins: $r0, $r1, $r2169    ; CHECK-NEXT: {{  $}}170    ; CHECK-NEXT: $r0 = t2STRD_PRE killed renamable $r1, killed renamable $r2, killed $r0, 8, 14 /* CC::al */, $noreg :: (store (s64))171    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0172    renamable $r0 = nuw t2ADDri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg173    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))174    tBX_RET 14 /* CC::al */, $noreg, implicit $r0175 176...177---178name:            STRD_pre255179alignment:       2180tracksRegLiveness: true181liveins:182  - { reg: '$r0', virtual-reg: '' }183  - { reg: '$r1', virtual-reg: '' }184  - { reg: '$r2', virtual-reg: '' }185body:             |186  bb.0 (%ir-block.0):187    liveins: $r0, $r1, $r2188 189    ; CHECK-LABEL: name: STRD_pre255190    ; CHECK: liveins: $r0, $r1, $r2191    ; CHECK-NEXT: {{  $}}192    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg193    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))194    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0195    renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg196    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))197    tBX_RET 14 /* CC::al */, $noreg, implicit $r0198 199...200---201name:            STRD_pre256202alignment:       2203tracksRegLiveness: true204liveins:205  - { reg: '$r0', virtual-reg: '' }206  - { reg: '$r1', virtual-reg: '' }207  - { reg: '$r2', virtual-reg: '' }208body:             |209  bb.0 (%ir-block.0):210    liveins: $r0, $r1, $r2211 212    ; CHECK-LABEL: name: STRD_pre256213    ; CHECK: liveins: $r0, $r1, $r2214    ; CHECK-NEXT: {{  $}}215    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg216    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))217    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0218    renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg219    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))220    tBX_RET 14 /* CC::al */, $noreg, implicit $r0221 222...223---224name:            STRD_pre1020225alignment:       2226tracksRegLiveness: true227liveins:228  - { reg: '$r0', virtual-reg: '' }229  - { reg: '$r1', virtual-reg: '' }230  - { reg: '$r2', virtual-reg: '' }231body:             |232  bb.0 (%ir-block.0):233    liveins: $r0, $r1, $r2234 235    ; CHECK-LABEL: name: STRD_pre1020236    ; CHECK: liveins: $r0, $r1, $r2237    ; CHECK-NEXT: {{  $}}238    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 1020, 14 /* CC::al */, $noreg, $noreg239    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))240    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0241    renamable $r0 = nuw t2ADDri killed renamable $r0, 1020, 14 /* CC::al */, $noreg, $noreg242    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))243    tBX_RET 14 /* CC::al */, $noreg, implicit $r0244 245...246---247name:            STRD_pre1024248alignment:       2249tracksRegLiveness: true250liveins:251  - { reg: '$r0', virtual-reg: '' }252  - { reg: '$r1', virtual-reg: '' }253  - { reg: '$r2', virtual-reg: '' }254body:             |255  bb.0 (%ir-block.0):256    liveins: $r0, $r1, $r2257 258    ; CHECK-LABEL: name: STRD_pre1024259    ; CHECK: liveins: $r0, $r1, $r2260    ; CHECK-NEXT: {{  $}}261    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg262    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))263    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0264    renamable $r0 = nuw t2ADDri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg265    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))266    tBX_RET 14 /* CC::al */, $noreg, implicit $r0267 268...269---270name:            STRD_prem4271alignment:       2272tracksRegLiveness: true273liveins:274  - { reg: '$r0', virtual-reg: '' }275  - { reg: '$r1', virtual-reg: '' }276  - { reg: '$r2', virtual-reg: '' }277body:             |278  bb.0 (%ir-block.0):279    liveins: $r0, $r1, $r2280 281    ; CHECK-LABEL: name: STRD_prem4282    ; CHECK: liveins: $r0, $r1, $r2283    ; CHECK-NEXT: {{  $}}284    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg285    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))286    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0287    renamable $r0 = nuw t2SUBri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg288    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))289    tBX_RET 14 /* CC::al */, $noreg, implicit $r0290 291...292---293name:            STRD_prem8294alignment:       2295tracksRegLiveness: true296liveins:297  - { reg: '$r0', virtual-reg: '' }298  - { reg: '$r1', virtual-reg: '' }299  - { reg: '$r2', virtual-reg: '' }300body:             |301  bb.0 (%ir-block.0):302    liveins: $r0, $r1, $r2303 304    ; CHECK-LABEL: name: STRD_prem8305    ; CHECK: liveins: $r0, $r1, $r2306    ; CHECK-NEXT: {{  $}}307    ; CHECK-NEXT: $r0 = t2STRD_PRE killed renamable $r1, killed renamable $r2, killed $r0, -8, 14 /* CC::al */, $noreg :: (store (s64))308    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0309    renamable $r0 = nuw t2SUBri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg310    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))311    tBX_RET 14 /* CC::al */, $noreg, implicit $r0312 313...314---315name:            STRD_prem255316alignment:       2317tracksRegLiveness: true318liveins:319  - { reg: '$r0', virtual-reg: '' }320  - { reg: '$r1', virtual-reg: '' }321  - { reg: '$r2', virtual-reg: '' }322body:             |323  bb.0 (%ir-block.0):324    liveins: $r0, $r1, $r2325 326    ; CHECK-LABEL: name: STRD_prem255327    ; CHECK: liveins: $r0, $r1, $r2328    ; CHECK-NEXT: {{  $}}329    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg330    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))331    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0332    renamable $r0 = nuw t2SUBri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg333    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))334    tBX_RET 14 /* CC::al */, $noreg, implicit $r0335 336...337---338name:            STRD_prem256339alignment:       2340tracksRegLiveness: true341liveins:342  - { reg: '$r0', virtual-reg: '' }343  - { reg: '$r1', virtual-reg: '' }344  - { reg: '$r2', virtual-reg: '' }345body:             |346  bb.0 (%ir-block.0):347    liveins: $r0, $r1, $r2348 349    ; CHECK-LABEL: name: STRD_prem256350    ; CHECK: liveins: $r0, $r1, $r2351    ; CHECK-NEXT: {{  $}}352    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg353    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))354    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0355    renamable $r0 = nuw t2SUBri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg356    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))357    tBX_RET 14 /* CC::al */, $noreg, implicit $r0358 359...360---361name:            STRD_prem1020362alignment:       2363tracksRegLiveness: true364liveins:365  - { reg: '$r0', virtual-reg: '' }366  - { reg: '$r1', virtual-reg: '' }367  - { reg: '$r2', virtual-reg: '' }368body:             |369  bb.0 (%ir-block.0):370    liveins: $r0, $r1, $r2371 372    ; CHECK-LABEL: name: STRD_prem1020373    ; CHECK: liveins: $r0, $r1, $r2374    ; CHECK-NEXT: {{  $}}375    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 1020, 14 /* CC::al */, $noreg, $noreg376    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))377    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0378    renamable $r0 = nuw t2SUBri killed renamable $r0, 1020, 14 /* CC::al */, $noreg, $noreg379    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))380    tBX_RET 14 /* CC::al */, $noreg, implicit $r0381 382...383---384name:            STRD_prem1024385alignment:       2386tracksRegLiveness: true387liveins:388  - { reg: '$r0', virtual-reg: '' }389  - { reg: '$r1', virtual-reg: '' }390  - { reg: '$r2', virtual-reg: '' }391body:             |392  bb.0 (%ir-block.0):393    liveins: $r0, $r1, $r2394 395    ; CHECK-LABEL: name: STRD_prem1024396    ; CHECK: liveins: $r0, $r1, $r2397    ; CHECK-NEXT: {{  $}}398    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg399    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))400    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0401    renamable $r0 = nuw t2SUBri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg402    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))403    tBX_RET 14 /* CC::al */, $noreg, implicit $r0404 405...406 407---408name:            STR_post4409alignment:       2410tracksRegLiveness: true411liveins:412  - { reg: '$r0', virtual-reg: '' }413  - { reg: '$r1', virtual-reg: '' }414body:             |415  bb.0 (%ir-block.0):416    liveins: $r0, $r1417 418    ; CHECK-LABEL: name: STR_post4419    ; CHECK: liveins: $r0, $r1420    ; CHECK-NEXT: {{  $}}421    ; CHECK-NEXT: early-clobber $r0 = t2STR_POST killed $r1, $r0, 4, 14 /* CC::al */, $noreg :: (store (s32))422    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0423    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))424    renamable $r0 = nuw t2ADDri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg425    tBX_RET 14 /* CC::al */, $noreg, implicit $r0426 427...428---429name:            STR_post8430alignment:       2431tracksRegLiveness: true432liveins:433  - { reg: '$r0', virtual-reg: '' }434  - { reg: '$r1', virtual-reg: '' }435body:             |436  bb.0 (%ir-block.0):437    liveins: $r0, $r1438 439    ; CHECK-LABEL: name: STR_post8440    ; CHECK: liveins: $r0, $r1441    ; CHECK-NEXT: {{  $}}442    ; CHECK-NEXT: early-clobber $r0 = t2STR_POST killed $r1, $r0, 8, 14 /* CC::al */, $noreg :: (store (s32))443    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0444    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))445    renamable $r0 = nuw t2ADDri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg446    tBX_RET 14 /* CC::al */, $noreg, implicit $r0447 448...449---450name:            STR_post255451alignment:       2452tracksRegLiveness: true453liveins:454  - { reg: '$r0', virtual-reg: '' }455  - { reg: '$r1', virtual-reg: '' }456body:             |457  bb.0 (%ir-block.0):458    liveins: $r0, $r1459 460    ; CHECK-LABEL: name: STR_post255461    ; CHECK: liveins: $r0, $r1462    ; CHECK-NEXT: {{  $}}463    ; CHECK-NEXT: early-clobber $r0 = t2STR_POST killed $r1, $r0, 255, 14 /* CC::al */, $noreg :: (store (s32))464    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0465    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))466    renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg467    tBX_RET 14 /* CC::al */, $noreg, implicit $r0468 469...470---471name:            STR_post256472alignment:       2473tracksRegLiveness: true474liveins:475  - { reg: '$r0', virtual-reg: '' }476  - { reg: '$r1', virtual-reg: '' }477body:             |478  bb.0 (%ir-block.0):479    liveins: $r0, $r1480 481    ; CHECK-LABEL: name: STR_post256482    ; CHECK: liveins: $r0, $r1483    ; CHECK-NEXT: {{  $}}484    ; CHECK-NEXT: t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))485    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg486    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0487    t2STRi12 killed renamable $r1, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s32))488    renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg489    tBX_RET 14 /* CC::al */, $noreg, implicit $r0490 491...492---493name:            STRD_post4494alignment:       2495tracksRegLiveness: true496liveins:497  - { reg: '$r0', virtual-reg: '' }498  - { reg: '$r1', virtual-reg: '' }499  - { reg: '$r2', virtual-reg: '' }500body:             |501  bb.0 (%ir-block.0):502    liveins: $r0, $r1, $r2503 504    ; CHECK-LABEL: name: STRD_post4505    ; CHECK: liveins: $r0, $r1, $r2506    ; CHECK-NEXT: {{  $}}507    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, 4, 14 /* CC::al */, $noreg :: (store (s64))508    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0509    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))510    renamable $r0 = nuw t2ADDri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg511    tBX_RET 14 /* CC::al */, $noreg, implicit $r0512 513...514---515name:            STRD_post8516alignment:       2517tracksRegLiveness: true518liveins:519  - { reg: '$r0', virtual-reg: '' }520  - { reg: '$r1', virtual-reg: '' }521  - { reg: '$r2', virtual-reg: '' }522body:             |523  bb.0 (%ir-block.0):524    liveins: $r0, $r1, $r2525 526    ; CHECK-LABEL: name: STRD_post8527    ; CHECK: liveins: $r0, $r1, $r2528    ; CHECK-NEXT: {{  $}}529    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, 8, 14 /* CC::al */, $noreg :: (store (s64))530    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0531    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))532    renamable $r0 = nuw t2ADDri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg533    tBX_RET 14 /* CC::al */, $noreg, implicit $r0534 535...536---537name:            STRD_post255538alignment:       2539tracksRegLiveness: true540liveins:541  - { reg: '$r0', virtual-reg: '' }542  - { reg: '$r1', virtual-reg: '' }543  - { reg: '$r2', virtual-reg: '' }544body:             |545  bb.0 (%ir-block.0):546    liveins: $r0, $r1, $r2547 548    ; CHECK-LABEL: name: STRD_post255549    ; CHECK: liveins: $r0, $r1, $r2550    ; CHECK-NEXT: {{  $}}551    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))552    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg553    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0554    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))555    renamable $r0 = nuw t2ADDri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg556    tBX_RET 14 /* CC::al */, $noreg, implicit $r0557 558...559---560name:            STRD_post256561alignment:       2562tracksRegLiveness: true563liveins:564  - { reg: '$r0', virtual-reg: '' }565  - { reg: '$r1', virtual-reg: '' }566  - { reg: '$r2', virtual-reg: '' }567body:             |568  bb.0 (%ir-block.0):569    liveins: $r0, $r1, $r2570 571    ; CHECK-LABEL: name: STRD_post256572    ; CHECK: liveins: $r0, $r1, $r2573    ; CHECK-NEXT: {{  $}}574    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, 256, 14 /* CC::al */, $noreg :: (store (s64))575    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0576    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))577    renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg578    tBX_RET 14 /* CC::al */, $noreg, implicit $r0579 580...581---582name:            STRD_post1020583alignment:       2584tracksRegLiveness: true585liveins:586  - { reg: '$r0', virtual-reg: '' }587  - { reg: '$r1', virtual-reg: '' }588  - { reg: '$r2', virtual-reg: '' }589body:             |590  bb.0 (%ir-block.0):591    liveins: $r0, $r1, $r2592 593    ; CHECK-LABEL: name: STRD_post1020594    ; CHECK: liveins: $r0, $r1, $r2595    ; CHECK-NEXT: {{  $}}596    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, 1020, 14 /* CC::al */, $noreg :: (store (s64))597    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0598    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))599    renamable $r0 = nuw t2ADDri killed renamable $r0, 1020, 14 /* CC::al */, $noreg, $noreg600    tBX_RET 14 /* CC::al */, $noreg, implicit $r0601 602...603---604name:            STRD_post1024605alignment:       2606tracksRegLiveness: true607liveins:608  - { reg: '$r0', virtual-reg: '' }609  - { reg: '$r1', virtual-reg: '' }610  - { reg: '$r2', virtual-reg: '' }611body:             |612  bb.0 (%ir-block.0):613    liveins: $r0, $r1, $r2614 615    ; CHECK-LABEL: name: STRD_post1024616    ; CHECK: liveins: $r0, $r1, $r2617    ; CHECK-NEXT: {{  $}}618    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))619    ; CHECK-NEXT: renamable $r0 = nuw t2ADDri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg620    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0621    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))622    renamable $r0 = nuw t2ADDri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg623    tBX_RET 14 /* CC::al */, $noreg, implicit $r0624 625...626---627name:            STRD_postm4628alignment:       2629tracksRegLiveness: true630liveins:631  - { reg: '$r0', virtual-reg: '' }632  - { reg: '$r1', virtual-reg: '' }633  - { reg: '$r2', virtual-reg: '' }634body:             |635  bb.0 (%ir-block.0):636    liveins: $r0, $r1, $r2637 638    ; CHECK-LABEL: name: STRD_postm4639    ; CHECK: liveins: $r0, $r1, $r2640    ; CHECK-NEXT: {{  $}}641    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, -4, 14 /* CC::al */, $noreg :: (store (s64))642    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0643    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))644    renamable $r0 = nuw t2SUBri killed renamable $r0, 4, 14 /* CC::al */, $noreg, $noreg645    tBX_RET 14 /* CC::al */, $noreg, implicit $r0646 647...648---649name:            STRD_postm8650alignment:       2651tracksRegLiveness: true652liveins:653  - { reg: '$r0', virtual-reg: '' }654  - { reg: '$r1', virtual-reg: '' }655  - { reg: '$r2', virtual-reg: '' }656body:             |657  bb.0 (%ir-block.0):658    liveins: $r0, $r1, $r2659 660    ; CHECK-LABEL: name: STRD_postm8661    ; CHECK: liveins: $r0, $r1, $r2662    ; CHECK-NEXT: {{  $}}663    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, -8, 14 /* CC::al */, $noreg :: (store (s64))664    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0665    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))666    renamable $r0 = nuw t2SUBri killed renamable $r0, 8, 14 /* CC::al */, $noreg, $noreg667    tBX_RET 14 /* CC::al */, $noreg, implicit $r0668 669...670---671name:            STRD_postm255672alignment:       2673tracksRegLiveness: true674liveins:675  - { reg: '$r0', virtual-reg: '' }676  - { reg: '$r1', virtual-reg: '' }677  - { reg: '$r2', virtual-reg: '' }678body:             |679  bb.0 (%ir-block.0):680    liveins: $r0, $r1, $r2681 682    ; CHECK-LABEL: name: STRD_postm255683    ; CHECK: liveins: $r0, $r1, $r2684    ; CHECK-NEXT: {{  $}}685    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))686    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg687    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0688    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))689    renamable $r0 = nuw t2SUBri killed renamable $r0, 255, 14 /* CC::al */, $noreg, $noreg690    tBX_RET 14 /* CC::al */, $noreg, implicit $r0691 692...693---694name:            STRD_postm256695alignment:       2696tracksRegLiveness: true697liveins:698  - { reg: '$r0', virtual-reg: '' }699  - { reg: '$r1', virtual-reg: '' }700  - { reg: '$r2', virtual-reg: '' }701body:             |702  bb.0 (%ir-block.0):703    liveins: $r0, $r1, $r2704 705    ; CHECK-LABEL: name: STRD_postm256706    ; CHECK: liveins: $r0, $r1, $r2707    ; CHECK-NEXT: {{  $}}708    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, 256, 14 /* CC::al */, $noreg :: (store (s64))709    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0710    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))711    renamable $r0 = nuw t2ADDri killed renamable $r0, 256, 14 /* CC::al */, $noreg, $noreg712    tBX_RET 14 /* CC::al */, $noreg, implicit $r0713 714...715---716name:            STRD_postm1020717alignment:       2718tracksRegLiveness: true719liveins:720  - { reg: '$r0', virtual-reg: '' }721  - { reg: '$r1', virtual-reg: '' }722  - { reg: '$r2', virtual-reg: '' }723body:             |724  bb.0 (%ir-block.0):725    liveins: $r0, $r1, $r2726 727    ; CHECK-LABEL: name: STRD_postm1020728    ; CHECK: liveins: $r0, $r1, $r2729    ; CHECK-NEXT: {{  $}}730    ; CHECK-NEXT: $r0 = t2STRD_POST killed renamable $r1, killed renamable $r2, killed $r0, -1020, 14 /* CC::al */, $noreg :: (store (s64))731    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0732    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))733    renamable $r0 = nuw t2SUBri killed renamable $r0, 1020, 14 /* CC::al */, $noreg, $noreg734    tBX_RET 14 /* CC::al */, $noreg, implicit $r0735 736...737---738name:            STRD_postm1024739alignment:       2740tracksRegLiveness: true741liveins:742  - { reg: '$r0', virtual-reg: '' }743  - { reg: '$r1', virtual-reg: '' }744  - { reg: '$r2', virtual-reg: '' }745body:             |746  bb.0 (%ir-block.0):747    liveins: $r0, $r1, $r2748 749    ; CHECK-LABEL: name: STRD_postm1024750    ; CHECK: liveins: $r0, $r1, $r2751    ; CHECK-NEXT: {{  $}}752    ; CHECK-NEXT: t2STRDi8 killed $r1, killed $r2, $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))753    ; CHECK-NEXT: renamable $r0 = nuw t2SUBri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg754    ; CHECK-NEXT: tBX_RET 14 /* CC::al */, $noreg, implicit $r0755    t2STRDi8 killed renamable $r1, killed renamable $r2, renamable $r0, 0, 14 /* CC::al */, $noreg :: (store (s64))756    renamable $r0 = nuw t2SUBri killed renamable $r0, 1024, 14 /* CC::al */, $noreg, $noreg757    tBX_RET 14 /* CC::al */, $noreg, implicit $r0758 759...760