brintos

brintos / llvm-project-archived public Read only

0
0
Text · 15.9 KiB · 485a389 Raw
513 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple thumbv8m.base-none-eabi -run-pass=peephole-opt -verify-machineinstrs -o - %s | FileCheck %s3--- |4  target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"5  target triple = "thumbv8m.base-none-none-eabi"6 7  define i32 @test_adc(i32 %a, i32 %b) { ret i32 %a }8  define i32 @test_adc_mov(i32 %a, i32 %b) { ret i32 %a }9  define i32 @test_sbc(i32 %a, i32 %b) { ret i32 %a }10  define i32 @test_rsb(i32 %a) { ret i32 %a }11  define i32 @test_and(i32 %a, i32 %b) { ret i32 %a }12  define i32 @test_orr(i32 %a, i32 %b) { ret i32 %a }13  define i32 @test_eor(i32 %a, i32 %b) { ret i32 %a }14  define i32 @test_bic(i32 %a, i32 %b) { ret i32 %a }15  define i32 @test_mvn(i32 %a) { ret i32 %a }16  define i32 @test_asrrr(i32 %a, i32 %b) { ret i32 %a }17  define i32 @test_asrri(i32 %a) { ret i32 %a }18  define i32 @test_ror(i32 %a, i32 %b) { ret i32 %a }19 20...21---22name:            test_adc23liveins:24  - { reg: '$r0', virtual-reg: '%0' }25  - { reg: '$r1', virtual-reg: '%1' }26body:             |27  ; CHECK-LABEL: name: test_adc28  ; CHECK: bb.0:29  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)30  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r131  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r032  ; CHECK:   %2:tgpr, $cpsr = tADDrr [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg33  ; CHECK:   %3:tgpr, $cpsr = tADC [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg, implicit $cpsr34  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr35  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg36  ; CHECK: bb.1:37  ; CHECK:   $r0 = COPY [[COPY1]]38  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r039  ; CHECK: bb.2:40  ; CHECK:   %4:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg41  ; CHECK:   $r0 = COPY %342  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r043  bb.0:44    successors: %bb.2(0x40000000), %bb.1(0x40000000)45    liveins: $r0, $r146 47    %1:tgpr = COPY $r148    %0:tgpr = COPY $r049    %3:tgpr, $cpsr = tADDrr %0, %1, 14, $noreg50    %2:tgpr, dead $cpsr = tADC %0, %1, 14, $noreg, implicit $cpsr51    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr52    tBcc %bb.2, 1, $cpsr53    tB %bb.1, 14, $noreg54 55  bb.1:56    $r0 = COPY %057    tBX_RET 14, $noreg, implicit $r058 59  bb.2:60    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg61    $r0 = COPY %262    tBX_RET 14, $noreg, implicit $r063...64---65name:            test_adc_mov66liveins:67  - { reg: '$r0', virtual-reg: '%0' }68  - { reg: '$r1', virtual-reg: '%1' }69body:             |70  ; CHECK-LABEL: name: test_adc_mov71  ; CHECK: bb.0:72  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)73  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r174  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r075  ; CHECK:   %2:tgpr, $cpsr = tADDrr [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg76  ; CHECK:   %3:tgpr, dead $cpsr = tADC [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg, implicit $cpsr77  ; CHECK:   %4:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg78  ; CHECK:   tCMPi8 %3, 0, 14 /* CC::al */, $noreg, implicit-def $cpsr79  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr80  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg81  ; CHECK: bb.1:82  ; CHECK:   $r0 = COPY [[COPY1]]83  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r084  ; CHECK: bb.2:85  ; CHECK:   %5:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg86  ; CHECK:   $r0 = COPY %387  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r088  bb.0:89    successors: %bb.2(0x40000000), %bb.1(0x40000000)90    liveins: $r0, $r191 92    %1:tgpr = COPY $r193    %0:tgpr = COPY $r094    %3:tgpr, $cpsr = tADDrr %0, %1, 14, $noreg95    %2:tgpr, dead $cpsr = tADC %0, %1, 14, $noreg, implicit $cpsr96    %5:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg97    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr98    tBcc %bb.2, 1, $cpsr99    tB %bb.1, 14, $noreg100 101  bb.1:102    $r0 = COPY %0103    tBX_RET 14, $noreg, implicit $r0104 105  bb.2:106    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg107    $r0 = COPY %2108    tBX_RET 14, $noreg, implicit $r0109...110---111name:            test_sbc112liveins:113  - { reg: '$r0', virtual-reg: '%0' }114  - { reg: '$r1', virtual-reg: '%1' }115body:             |116  ; CHECK-LABEL: name: test_sbc117  ; CHECK: bb.0:118  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)119  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1120  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0121  ; CHECK:   %2:tgpr, $cpsr = tADDrr [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg122  ; CHECK:   %3:tgpr, $cpsr = tSBC [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg, implicit $cpsr123  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr124  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg125  ; CHECK: bb.1:126  ; CHECK:   $r0 = COPY [[COPY1]]127  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0128  ; CHECK: bb.2:129  ; CHECK:   %4:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg130  ; CHECK:   $r0 = COPY %3131  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0132  bb.0:133    successors: %bb.2(0x40000000), %bb.1(0x40000000)134    liveins: $r0, $r1135 136    %1:tgpr = COPY $r1137    %0:tgpr = COPY $r0138    %3:tgpr, $cpsr = tADDrr %0, %1, 14, $noreg139    %2:tgpr, dead $cpsr = tSBC %0, %1, 14, $noreg, implicit $cpsr140    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr141    tBcc %bb.2, 1, $cpsr142    tB %bb.1, 14, $noreg143 144  bb.1:145    $r0 = COPY %0146    tBX_RET 14, $noreg, implicit $r0147 148  bb.2:149    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg150    $r0 = COPY %2151    tBX_RET 14, $noreg, implicit $r0152...153---154name:            test_rsb155liveins:156  - { reg: '$r0', virtual-reg: '%0' }157body:             |158  ; CHECK-LABEL: name: test_rsb159  ; CHECK: bb.0:160  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)161  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r0162  ; CHECK:   %1:tgpr, $cpsr = tRSB [[COPY]], 14 /* CC::al */, $noreg163  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr164  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg165  ; CHECK: bb.1:166  ; CHECK:   $r0 = COPY [[COPY]]167  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0168  ; CHECK: bb.2:169  ; CHECK:   %2:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg170  ; CHECK:   $r0 = COPY %1171  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0172  bb.0:173    successors: %bb.2(0x40000000), %bb.1(0x40000000)174    liveins: $r0, $r1175 176    %0:tgpr = COPY $r0177    %1:tgpr, dead $cpsr = tRSB %0, 14, $noreg178    tCMPi8 %1, 0, 14, $noreg, implicit-def $cpsr179    tBcc %bb.2, 1, $cpsr180    tB %bb.1, 14, $noreg181 182  bb.1:183    $r0 = COPY %0184    tBX_RET 14, $noreg, implicit $r0185 186  bb.2:187    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg188    $r0 = COPY %1189    tBX_RET 14, $noreg, implicit $r0190...191---192name:            test_and193liveins:194  - { reg: '$r0', virtual-reg: '%0' }195  - { reg: '$r1', virtual-reg: '%1' }196body:             |197  ; CHECK-LABEL: name: test_and198  ; CHECK: bb.0:199  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)200  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1201  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0202  ; CHECK:   %2:tgpr, $cpsr = tAND [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg203  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr204  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg205  ; CHECK: bb.1:206  ; CHECK:   $r0 = COPY [[COPY1]]207  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0208  ; CHECK: bb.2:209  ; CHECK:   %3:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg210  ; CHECK:   $r0 = COPY %2211  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0212  bb.0:213    successors: %bb.2(0x40000000), %bb.1(0x40000000)214    liveins: $r0, $r1215 216    %1:tgpr = COPY $r1217    %0:tgpr = COPY $r0218    %2:tgpr, dead $cpsr = tAND %0, %1, 14, $noreg219    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr220    tBcc %bb.2, 1, $cpsr221    tB %bb.1, 14, $noreg222 223  bb.1:224    $r0 = COPY %0225    tBX_RET 14, $noreg, implicit $r0226 227  bb.2:228    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg229    $r0 = COPY %2230    tBX_RET 14, $noreg, implicit $r0231...232---233name:            test_orr234liveins:235  - { reg: '$r0', virtual-reg: '%0' }236  - { reg: '$r1', virtual-reg: '%1' }237body:             |238  ; CHECK-LABEL: name: test_orr239  ; CHECK: bb.0:240  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)241  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1242  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0243  ; CHECK:   %2:tgpr, $cpsr = tORR [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg244  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr245  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg246  ; CHECK: bb.1:247  ; CHECK:   $r0 = COPY [[COPY1]]248  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0249  ; CHECK: bb.2:250  ; CHECK:   %3:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg251  ; CHECK:   $r0 = COPY %2252  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0253  bb.0:254    successors: %bb.2(0x40000000), %bb.1(0x40000000)255    liveins: $r0, $r1256 257    %1:tgpr = COPY $r1258    %0:tgpr = COPY $r0259    %2:tgpr, dead $cpsr = tORR %0, %1, 14, $noreg260    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr261    tBcc %bb.2, 1, $cpsr262    tB %bb.1, 14, $noreg263 264  bb.1:265    $r0 = COPY %0266    tBX_RET 14, $noreg, implicit $r0267 268  bb.2:269    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg270    $r0 = COPY %2271    tBX_RET 14, $noreg, implicit $r0272...273---274name:            test_eor275liveins:276  - { reg: '$r0', virtual-reg: '%0' }277  - { reg: '$r1', virtual-reg: '%1' }278body:             |279  ; CHECK-LABEL: name: test_eor280  ; CHECK: bb.0:281  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)282  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1283  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0284  ; CHECK:   %2:tgpr, $cpsr = tEOR [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg285  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr286  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg287  ; CHECK: bb.1:288  ; CHECK:   $r0 = COPY [[COPY1]]289  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0290  ; CHECK: bb.2:291  ; CHECK:   %3:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg292  ; CHECK:   $r0 = COPY %2293  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0294  bb.0:295    successors: %bb.2(0x40000000), %bb.1(0x40000000)296    liveins: $r0, $r1297 298    %1:tgpr = COPY $r1299    %0:tgpr = COPY $r0300    %2:tgpr, dead $cpsr = tEOR %0, %1, 14, $noreg301    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr302    tBcc %bb.2, 1, $cpsr303    tB %bb.1, 14, $noreg304 305  bb.1:306    $r0 = COPY %0307    tBX_RET 14, $noreg, implicit $r0308 309  bb.2:310    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg311    $r0 = COPY %2312    tBX_RET 14, $noreg, implicit $r0313...314---315name:            test_bic316liveins:317  - { reg: '$r0', virtual-reg: '%0' }318  - { reg: '$r1', virtual-reg: '%1' }319body:             |320  ; CHECK-LABEL: name: test_bic321  ; CHECK: bb.0:322  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)323  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1324  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0325  ; CHECK:   %2:tgpr, $cpsr = tBIC [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg326  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr327  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg328  ; CHECK: bb.1:329  ; CHECK:   $r0 = COPY [[COPY1]]330  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0331  ; CHECK: bb.2:332  ; CHECK:   %3:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg333  ; CHECK:   $r0 = COPY %2334  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0335  bb.0:336    successors: %bb.2(0x40000000), %bb.1(0x40000000)337    liveins: $r0, $r1338 339    %1:tgpr = COPY $r1340    %0:tgpr = COPY $r0341    %2:tgpr, dead $cpsr = tBIC %0, %1, 14, $noreg342    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr343    tBcc %bb.2, 1, $cpsr344    tB %bb.1, 14, $noreg345 346  bb.1:347    $r0 = COPY %0348    tBX_RET 14, $noreg, implicit $r0349 350  bb.2:351    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg352    $r0 = COPY %2353    tBX_RET 14, $noreg, implicit $r0354...355---356name:            test_mvn357liveins:358  - { reg: '$r0', virtual-reg: '%0' }359body:             |360  ; CHECK-LABEL: name: test_mvn361  ; CHECK: bb.0:362  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)363  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r0364  ; CHECK:   %1:tgpr, $cpsr = tMVN [[COPY]], 14 /* CC::al */, $noreg365  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr366  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg367  ; CHECK: bb.1:368  ; CHECK:   $r0 = COPY [[COPY]]369  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0370  ; CHECK: bb.2:371  ; CHECK:   %2:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg372  ; CHECK:   $r0 = COPY %1373  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0374  bb.0:375    successors: %bb.2(0x40000000), %bb.1(0x40000000)376    liveins: $r0, $r1377 378    %0:tgpr = COPY $r0379    %1:tgpr, dead $cpsr = tMVN %0, 14, $noreg380    tCMPi8 %1, 0, 14, $noreg, implicit-def $cpsr381    tBcc %bb.2, 1, $cpsr382    tB %bb.1, 14, $noreg383 384  bb.1:385    $r0 = COPY %0386    tBX_RET 14, $noreg, implicit $r0387 388  bb.2:389    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg390    $r0 = COPY %1391    tBX_RET 14, $noreg, implicit $r0392...393---394name:            test_asrrr395liveins:396  - { reg: '$r0', virtual-reg: '%0' }397  - { reg: '$r1', virtual-reg: '%1' }398body:             |399  ; CHECK-LABEL: name: test_asrrr400  ; CHECK: bb.0:401  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)402  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1403  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0404  ; CHECK:   %2:tgpr, $cpsr = tASRrr [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg405  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr406  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg407  ; CHECK: bb.1:408  ; CHECK:   $r0 = COPY [[COPY1]]409  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0410  ; CHECK: bb.2:411  ; CHECK:   %3:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg412  ; CHECK:   $r0 = COPY %2413  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0414  bb.0:415    successors: %bb.2(0x40000000), %bb.1(0x40000000)416    liveins: $r0, $r1417 418    %1:tgpr = COPY $r1419    %0:tgpr = COPY $r0420    %2:tgpr, dead $cpsr = tASRrr %0, %1, 14, $noreg421    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr422    tBcc %bb.2, 1, $cpsr423    tB %bb.1, 14, $noreg424 425  bb.1:426    $r0 = COPY %0427    tBX_RET 14, $noreg, implicit $r0428 429  bb.2:430    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg431    $r0 = COPY %2432    tBX_RET 14, $noreg, implicit $r0433...434---435name:            test_asrri436liveins:437  - { reg: '$r0', virtual-reg: '%0' }438body:             |439  ; CHECK-LABEL: name: test_asrri440  ; CHECK: bb.0:441  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)442  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r0443  ; CHECK:   %1:tgpr, $cpsr = tASRri [[COPY]], 1, 14 /* CC::al */, $noreg444  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr445  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg446  ; CHECK: bb.1:447  ; CHECK:   $r0 = COPY [[COPY]]448  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0449  ; CHECK: bb.2:450  ; CHECK:   %2:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg451  ; CHECK:   $r0 = COPY %1452  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0453  bb.0:454    successors: %bb.2(0x40000000), %bb.1(0x40000000)455    liveins: $r0, $r1456 457    %0:tgpr = COPY $r0458    %2:tgpr, dead $cpsr = tASRri %0, 1, 14, $noreg459    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr460    tBcc %bb.2, 1, $cpsr461    tB %bb.1, 14, $noreg462 463  bb.1:464    $r0 = COPY %0465    tBX_RET 14, $noreg, implicit $r0466 467  bb.2:468    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg469    $r0 = COPY %2470    tBX_RET 14, $noreg, implicit $r0471...472---473name:            test_ror474liveins:475  - { reg: '$r0', virtual-reg: '%0' }476  - { reg: '$r1', virtual-reg: '%1' }477body:             |478  ; CHECK-LABEL: name: test_ror479  ; CHECK: bb.0:480  ; CHECK:   successors: %bb.2(0x40000000), %bb.1(0x40000000)481  ; CHECK:   [[COPY:%[0-9]+]]:tgpr = COPY $r1482  ; CHECK:   [[COPY1:%[0-9]+]]:tgpr = COPY $r0483  ; CHECK:   %2:tgpr, $cpsr = tROR [[COPY1]], [[COPY]], 14 /* CC::al */, $noreg484  ; CHECK:   tBcc %bb.2, 1 /* CC::ne */, $cpsr485  ; CHECK:   tB %bb.1, 14 /* CC::al */, $noreg486  ; CHECK: bb.1:487  ; CHECK:   $r0 = COPY [[COPY1]]488  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0489  ; CHECK: bb.2:490  ; CHECK:   %3:tgpr, dead $cpsr = tMOVi8 0, 14 /* CC::al */, $noreg491  ; CHECK:   $r0 = COPY %2492  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg, implicit $r0493  bb.0:494    successors: %bb.2(0x40000000), %bb.1(0x40000000)495    liveins: $r0, $r1496 497    %1:tgpr = COPY $r1498    %0:tgpr = COPY $r0499    %2:tgpr, dead $cpsr = tROR %0, %1, 14, $noreg500    tCMPi8 %2, 0, 14, $noreg, implicit-def $cpsr501    tBcc %bb.2, 1, $cpsr502    tB %bb.1, 14, $noreg503 504  bb.1:505    $r0 = COPY %0506    tBX_RET 14, $noreg, implicit $r0507 508  bb.2:509    %4:tgpr, dead $cpsr = tMOVi8 0, 14, $noreg510    $r0 = COPY %2511    tBX_RET 14, $noreg, implicit $r0512...513