brintos

brintos / llvm-project-archived public Read only

0
0
Text · 41.1 KiB · 87d1785 Raw
1584 lines · plain
1# RUN: llc -debugify-and-strip-all-safe=0 -mtriple arm-- -run-pass=regbankselect %s -o - | FileCheck %s2# RUN: llc -debugify-and-strip-all-safe=0 -mtriple thumbv7-- -run-pass=regbankselect %s -o - | FileCheck %s3--- |4  define void @test_add_s32() { ret void }5  define void @test_sub_s32() { ret void }6  define void @test_mul_s32() { ret void }7 8  define void @test_sdiv_s32() #1 { ret void }9  define void @test_udiv_s32() #1 { ret void }10 11  define void @test_and_s32() { ret void}12  define void @test_or_s32() { ret void}13  define void @test_xor_s32() { ret void}14 15  define void @test_lshr_s32() { ret void }16  define void @test_ashr_s32() { ret void }17  define void @test_shl_s32() { ret void }18 19  define void @test_loads() #0 { ret void }20  define void @test_stores() #0 { ret void }21 22  define void @test_stack() { ret void }23 24  define void @test_gep() { ret void }25 26  define void @test_constants() { ret void }27 28  define void @test_inttoptr_s32() { ret void }29  define void @test_ptrtoint_s32() { ret void }30 31  define void @test_ctlz_s32() #3 { ret void }32 33  @a_global = global float 1.034  define void @test_globals() { ret void }35 36  define void @test_anyext_s8_32() { ret void }37  define void @test_anyext_s16_32() { ret void }38 39  define void @test_trunc_s32_16() { ret void }40  define void @test_trunc_s64_32() #0 { ret void }41 42  define void @test_icmp_eq_s32() { ret void }43  define void @test_fcmp_one_s32() #0 { ret void }44  define void @test_fcmp_ugt_s64() #0 { ret void }45 46  define void @test_select_s32() { ret void }47 48  define void @test_br() { ret void }49 50  define void @test_phi_s32() { ret void }51  define void @test_phi_s64() #0 { ret void }52 53  define void @test_fadd_s32() #0 { ret void }54  define void @test_fadd_s64() #0 { ret void }55 56  define void @test_fsub_s32() #0 { ret void }57  define void @test_fsub_s64() #0 { ret void }58 59  define void @test_fmul_s32() #0 { ret void }60  define void @test_fmul_s64() #0 { ret void }61 62  define void @test_fdiv_s32() #0 { ret void }63  define void @test_fdiv_s64() #0 { ret void }64 65  define void @test_fneg_s32() #0 { ret void }66  define void @test_fneg_s64() #0 { ret void }67 68  define void @test_fma_s32() #2 { ret void }69  define void @test_fma_s64() #2 { ret void }70 71  define void @test_fpext_s32_to_s64() #0 { ret void }72  define void @test_fptrunc_s64_to_s32() #0 { ret void }73 74  define void @test_fpconst_s32() #0 { ret void }75  define void @test_fpconst_s64() #0 { ret void }76 77  define void @test_fptosi_s32() #0 { ret void }78  define void @test_fptosi_s64() #0 { ret void }79  define void @test_fptoui_s32() #0 { ret void }80  define void @test_fptoui_s64() #0 { ret void }81 82  define void @test_sitofp_s32() #0 { ret void }83  define void @test_sitofp_s64() #0 { ret void }84  define void @test_uitofp_s32() #0 { ret void }85  define void @test_uitofp_s64() #0 { ret void }86 87  define void @test_soft_fp_s64() #0 { ret void }88 89  define void @test_dbg_value() #0 { ret void }90 91  attributes #0 = { "target-features"="+vfp2"}92  attributes #1 = { "target-features"="+hwdiv-arm,+hwdiv" }93  attributes #2 = { "target-features"="+vfp4"}94  attributes #3 = { "target-features"="+v5t"}95 96  !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "llvm", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2)97  !1 = !DIFile(filename: "dbg.ll", directory: "/tmp")98  !2 = !{}99  !5 = distinct !DISubprogram(name: "test_dbg_value", scope: !1, file: !1, line: 1, type: !6, isLocal: false, isDefinition: true, scopeLine: 1, flags: DIFlagPrototyped, isOptimized: false, unit: !0, retainedNodes: !2)100  !6 = !DISubroutineType(types: !2)101  !7 = !DILocalVariable(name: "x", arg: 1, scope: !5, file: !1, line: 1, type: !8)102  !8 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)103  !9 = !DILocation(line: 1, column: 1, scope: !5)104...105---106name:            test_add_s32107# CHECK-LABEL: name: test_add_s32108legalized:       true109regBankSelected: false110selected:        false111# CHECK: registers:112# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }113# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }114# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }115 116registers:117  - { id: 0, class: _ }118  - { id: 1, class: _ }119  - { id: 2, class: _ }120body:             |121  bb.0:122    liveins: $r0, $r1123 124    %0(s32) = COPY $r0125    %1(s32) = COPY $r1126    %2(s32) = G_ADD %0, %1127    $r0 = COPY %2(s32)128    BX_RET 14, $noreg, implicit $r0129 130...131---132name:            test_sub_s32133# CHECK-LABEL: name: test_sub_s32134legalized:       true135regBankSelected: false136selected:        false137# CHECK: registers:138# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }139# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }140# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }141 142registers:143  - { id: 0, class: _ }144  - { id: 1, class: _ }145  - { id: 2, class: _ }146body:             |147  bb.0:148    liveins: $r0, $r1149 150    %0(s32) = COPY $r0151    %1(s32) = COPY $r1152    %2(s32) = G_SUB %0, %1153    $r0 = COPY %2(s32)154    BX_RET 14, $noreg, implicit $r0155 156...157---158name:            test_mul_s32159# CHECK-LABEL: name: test_mul_s32160legalized:       true161regBankSelected: false162selected:        false163# CHECK: registers:164# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }165# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }166# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }167 168registers:169  - { id: 0, class: _ }170  - { id: 1, class: _ }171  - { id: 2, class: _ }172body:             |173  bb.0:174    liveins: $r0, $r1175 176    %0(s32) = COPY $r0177    %1(s32) = COPY $r1178    %2(s32) = G_MUL %0, %1179    $r0 = COPY %2(s32)180    BX_RET 14, $noreg, implicit $r0181 182...183---184name:            test_sdiv_s32185# CHECK-LABEL: name: test_sdiv_s32186legalized:       true187regBankSelected: false188selected:        false189# CHECK: registers:190# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }191# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }192# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }193 194registers:195  - { id: 0, class: _ }196  - { id: 1, class: _ }197  - { id: 2, class: _ }198body:             |199  bb.0:200    liveins: $r0, $r1201 202    %0(s32) = COPY $r0203    %1(s32) = COPY $r1204    %2(s32) = G_SDIV %0, %1205    $r0 = COPY %2(s32)206    BX_RET 14, $noreg, implicit $r0207 208...209---210name:            test_udiv_s32211# CHECK-LABEL: name: test_udiv_s32212legalized:       true213regBankSelected: false214selected:        false215# CHECK: registers:216# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }217# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }218# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }219 220registers:221  - { id: 0, class: _ }222  - { id: 1, class: _ }223  - { id: 2, class: _ }224body:             |225  bb.0:226    liveins: $r0, $r1227 228    %0(s32) = COPY $r0229    %1(s32) = COPY $r1230    %2(s32) = G_UDIV %0, %1231    $r0 = COPY %2(s32)232    BX_RET 14, $noreg, implicit $r0233 234...235---236name:            test_and_s32237# CHECK-LABEL: name: test_and_s32238legalized:       true239regBankSelected: false240selected:        false241# CHECK: registers:242# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }243# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }244# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }245 246registers:247  - { id: 0, class: _ }248  - { id: 1, class: _ }249  - { id: 2, class: _ }250body:             |251  bb.0:252    liveins: $r0, $r1253 254    %0(s32) = COPY $r0255    %1(s32) = COPY $r1256    %2(s32) = G_AND %0, %1257    $r0 = COPY %2(s32)258    BX_RET 14, $noreg, implicit $r0259 260...261---262name:            test_or_s32263# CHECK-LABEL: name: test_or_s32264legalized:       true265regBankSelected: false266selected:        false267# CHECK: registers:268# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }269# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }270# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }271 272registers:273  - { id: 0, class: _ }274  - { id: 1, class: _ }275  - { id: 2, class: _ }276body:             |277  bb.0:278    liveins: $r0, $r1279 280    %0(s32) = COPY $r0281    %1(s32) = COPY $r1282    %2(s32) = G_OR %0, %1283    $r0 = COPY %2(s32)284    BX_RET 14, $noreg, implicit $r0285 286...287---288name:            test_xor_s32289# CHECK-LABEL: name: test_xor_s32290legalized:       true291regBankSelected: false292selected:        false293# CHECK: registers:294# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }295# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }296# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }297 298registers:299  - { id: 0, class: _ }300  - { id: 1, class: _ }301  - { id: 2, class: _ }302body:             |303  bb.0:304    liveins: $r0, $r1305 306    %0(s32) = COPY $r0307    %1(s32) = COPY $r1308    %2(s32) = G_XOR %0, %1309    $r0 = COPY %2(s32)310    BX_RET 14, $noreg, implicit $r0311 312...313---314name:            test_lshr_s32315# CHECK-LABEL: name: test_lshr_s32316legalized:       true317regBankSelected: false318selected:        false319# CHECK: registers:320# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }321# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }322# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }323 324registers:325  - { id: 0, class: _ }326  - { id: 1, class: _ }327  - { id: 2, class: _ }328body:             |329  bb.0:330    liveins: $r0, $r1331 332    %0(s32) = COPY $r0333    %1(s32) = COPY $r1334    %2(s32) = G_LSHR %0, %1335    $r0 = COPY %2(s32)336    BX_RET 14, $noreg, implicit $r0337 338...339---340name:            test_ashr_s32341# CHECK-LABEL: name: test_ashr_s32342legalized:       true343regBankSelected: false344selected:        false345# CHECK: registers:346# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }347# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }348# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }349 350registers:351  - { id: 0, class: _ }352  - { id: 1, class: _ }353  - { id: 2, class: _ }354body:             |355  bb.0:356    liveins: $r0, $r1357 358    %0(s32) = COPY $r0359    %1(s32) = COPY $r1360    %2(s32) = G_ASHR %0, %1361    $r0 = COPY %2(s32)362    BX_RET 14, $noreg, implicit $r0363 364...365---366name:            test_shl_s32367# CHECK-LABEL: name: test_shl_s32368legalized:       true369regBankSelected: false370selected:        false371# CHECK: registers:372# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }373# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }374# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }375 376registers:377  - { id: 0, class: _ }378  - { id: 1, class: _ }379  - { id: 2, class: _ }380body:             |381  bb.0:382    liveins: $r0, $r1383 384    %0(s32) = COPY $r0385    %1(s32) = COPY $r1386    %2(s32) = G_SHL %0, %1387    $r0 = COPY %2(s32)388    BX_RET 14, $noreg, implicit $r0389 390...391---392name:            test_loads393# CHECK-LABEL: name: test_loads394legalized:       true395regBankSelected: false396selected:        false397# CHECK: registers:398# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }399# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }400# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }401# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }402# CHECK: - { id: 4, class: gprb, preferred-register: '', flags: [  ] }403# CHECK: - { id: 5, class: fprb, preferred-register: '', flags: [  ] }404 405registers:406  - { id: 0, class: _ }407  - { id: 1, class: _ }408  - { id: 2, class: _ }409  - { id: 3, class: _ }410  - { id: 4, class: _ }411  - { id: 5, class: _ }412  - { id: 6, class: _ }413body:             |414  bb.0:415    liveins: $r0416    %0(p0) = COPY $r0417    %5(s64) = G_LOAD %0 :: (load (s64))418    %1(s32) = G_LOAD %0 :: (load (s32))419    %2(s16) = G_LOAD %0 :: (load (s16))420    %3(s8)  = G_LOAD %0 :: (load (s8))421    %4(p0)  = G_LOAD %0 :: (load (p0))422    BX_RET 14, $noreg, implicit $r0423 424...425---426name:            test_stores427# CHECK-LABEL: name: test_stores428legalized:       true429regBankSelected: false430selected:        false431# CHECK: registers:432# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }433# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }434# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }435# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }436# CHECK: - { id: 4, class: fprb, preferred-register: '', flags: [  ] }437registers:438  - { id: 0, class: _ }439  - { id: 1, class: _ }440  - { id: 2, class: _ }441  - { id: 3, class: _ }442  - { id: 4, class: _ }443  - { id: 5, class: _ }444  - { id: 6, class: _ }445body:             |446  bb.0:447    liveins: $r0, $r1, $r5, $d6448    %0(p0) = COPY $r0449    %1(s32) = COPY $r1450    G_STORE %1(s32), %0 :: (store (s32))451    %2(s16) = G_TRUNC %1(s32)452    G_STORE %2(s16), %0 :: (store (s16))453    %3(s8) = G_TRUNC %1(s32)454    G_STORE %3(s8), %0 :: (store (s8))455    %4(s64) = COPY $d6456    G_STORE %4(s64), %0 :: (store (s64))457    BX_RET 14, $noreg, implicit $r0458 459...460---461name:            test_stack462# CHECK-LABEL: name: test_stack463legalized:       true464regBankSelected: false465selected:        false466# CHECK: registers:467# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }468# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }469# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }470# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }471# CHECK: - { id: 4, class: gprb, preferred-register: '', flags: [  ] }472registers:473  - { id: 0, class: _ }474  - { id: 1, class: _ }475  - { id: 2, class: _ }476  - { id: 3, class: _ }477  - { id: 4, class: _ }478fixedStack:479  - { id: 0, offset: 0, size: 4, alignment: 4, isImmutable: true, isAliased: false }480body:             |481  bb.0:482    %0(p0) = G_FRAME_INDEX %fixed-stack.0483    %1(s32) = G_LOAD %0(p0) :: (load (s32) from %fixed-stack.0, align 4)484 485    %2(p0) = COPY $sp486    %3(s32) = G_CONSTANT i32 8487    %4(p0) = G_PTR_ADD %2, %3(s32)488    G_STORE %1(s32), %4(p0) :: (store (s32))489 490    BX_RET 14, $noreg491 492...493---494name:            test_gep495# CHECK-LABEL: name: test_gep496legalized:       true497regBankSelected: false498selected:        false499# CHECK: registers:500# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }501# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }502# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }503 504registers:505  - { id: 0, class: _ }506  - { id: 1, class: _ }507  - { id: 2, class: _ }508body:             |509  bb.0:510    liveins: $r0, $r1511 512    %0(p0) = COPY $r0513    %1(s32) = COPY $r1514    %2(p0) = G_PTR_ADD %0, %1(s32)515    $r0 = COPY %2(p0)516    BX_RET 14, $noreg, implicit $r0517...518---519name:            test_constants520# CHECK-LABEL: name: test_constants521legalized:       true522regBankSelected: false523selected:        false524# CHECK: registers:525# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }526registers:527  - { id: 0, class: _ }528body:             |529  bb.0:530    %0(s32) = G_CONSTANT i32 42531    $r0 = COPY %0(s32)532    BX_RET 14, $noreg, implicit $r0533...534---535name:            test_inttoptr_s32536# CHECK-LABEL: name: test_inttoptr_s32537legalized:       true538regBankSelected: false539selected:        false540# CHECK: registers:541# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }542# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }543registers:544  - { id: 0, class: _ }545  - { id: 1, class: _ }546body:             |547  bb.0:548    %0(s32) = COPY $r0549    %1(p0) = G_INTTOPTR %0(s32)550    $r0 = COPY %1(p0)551    BX_RET 14, $noreg, implicit $r0552...553---554name:            test_ptrtoint_s32555# CHECK-LABEL: name: test_ptrtoint_s32556legalized:       true557regBankSelected: false558selected:        false559# CHECK: registers:560# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }561# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }562registers:563  - { id: 0, class: _ }564  - { id: 1, class: _ }565body:             |566  bb.0:567    %0(p0) = COPY $r0568    %1(s32) = G_PTRTOINT %0(p0)569    $r0 = COPY %1(s32)570    BX_RET 14, $noreg, implicit $r0571...572---573name:            test_ctlz_s32574# CHECK-LABEL: name: test_ctlz_s32575legalized:       true576regBankSelected: false577selected:        false578# CHECK: registers:579# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }580# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }581registers:582  - { id: 0, class: _ }583  - { id: 1, class: _ }584body:             |585  bb.0:586    %0(s32) = COPY $r0587    %1(s32) = G_CTLZ %0(s32)588    $r0 = COPY %1(s32)589    BX_RET 14, $noreg, implicit $r0590...591---592name:            test_globals593# CHECK-LABEL: name: test_globals594legalized:       true595regBankSelected: false596selected:        false597# CHECK: registers:598# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }599registers:600  - { id: 0, class: _ }601body:             |602  bb.0:603    %0(p0) = G_GLOBAL_VALUE @a_global604    $r0 = COPY %0(p0)605    BX_RET 14, $noreg, implicit $r0606...607---608name:            test_anyext_s8_32609# CHECK-LABEL: name: test_anyext_s8_32610legalized:       true611regBankSelected: false612selected:        false613# CHECK: registers:614# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }615# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }616# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }617registers:618  - { id: 0, class: _ }619  - { id: 1, class: _ }620  - { id: 2, class: _ }621body:             |622  bb.0:623    liveins: $r0624 625    %0(s32) = COPY $r0626    %1(s8) = G_TRUNC %0(s32)627    %2(s32) = G_ANYEXT %1(s8)628    $r0 = COPY %2(s32)629    BX_RET 14, $noreg, implicit $r0630...631---632name:            test_anyext_s16_32633# CHECK-LABEL: name: test_anyext_s16_32634legalized:       true635regBankSelected: false636selected:        false637# CHECK: registers:638# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }639# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }640# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }641registers:642  - { id: 0, class: _ }643  - { id: 1, class: _ }644  - { id: 2, class: _ }645body:             |646  bb.0:647    liveins: $r0648 649    %0(s32) = COPY $r0650    %1(s16) = G_TRUNC %0(s32)651    %2(s32) = G_ANYEXT %1(s16)652    $r0 = COPY %2(s32)653    BX_RET 14, $noreg, implicit $r0654...655---656name:            test_trunc_s32_16657# CHECK-LABEL: name: test_trunc_s32_16658legalized:       true659regBankSelected: false660selected:        false661# CHECK: registers:662# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }663# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }664# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }665registers:666  - { id: 0, class: _ }667  - { id: 1, class: _ }668  - { id: 2, class: _ }669body:             |670  bb.0:671    liveins: $r0, $r1672 673    %0(s32) = COPY $r0674    %2(p0) = COPY $r1675    %1(s16) = G_TRUNC %0(s32)676    G_STORE %1(s16), %2 :: (store (s16))677    BX_RET 14, $noreg678...679---680name:            test_trunc_s64_32681# CHECK-LABEL: name: test_trunc_s64_32682legalized:       true683regBankSelected: false684selected:        false685# CHECK: registers:686# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }687# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }688# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }689registers:690  - { id: 0, class: _ }691  - { id: 1, class: _ }692  - { id: 2, class: _ }693body:             |694  bb.0:695    liveins: $r0, $d0696 697    %0(s64) = COPY $d0698    %2(p0) = COPY $r0699    %1(s32) = G_TRUNC %0(s64)700    G_STORE %1(s32), %2 :: (store (s32))701    BX_RET 14, $noreg702...703---704name:            test_icmp_eq_s32705# CHECK-LABEL: name: test_icmp_eq_s32706legalized:       true707regBankSelected: false708selected:        false709# CHECK: registers:710# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }711# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }712# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }713# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }714 715registers:716  - { id: 0, class: _ }717  - { id: 1, class: _ }718  - { id: 2, class: _ }719  - { id: 3, class: _ }720body:             |721  bb.0:722    liveins: $r0, $r1723 724    %0(s32) = COPY $r0725    %1(s32) = COPY $r1726    %2(s1) = G_ICMP intpred(eq), %0(s32), %1727    %3(s32) = G_ZEXT %2(s1)728    $r0 = COPY %3(s32)729    BX_RET 14, $noreg, implicit $r0730 731...732---733name:            test_fcmp_one_s32734# CHECK-LABEL: name: test_fcmp_one_s32735legalized:       true736regBankSelected: false737selected:        false738# CHECK: registers:739# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }740# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }741# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }742# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }743 744registers:745  - { id: 0, class: _ }746  - { id: 1, class: _ }747  - { id: 2, class: _ }748  - { id: 3, class: _ }749body:             |750  bb.0:751    liveins: $s0, $s1752 753    %0(s32) = COPY $s0754    %1(s32) = COPY $s1755    %2(s1) = G_FCMP floatpred(one), %0(s32), %1756    %3(s32) = G_ZEXT %2(s1)757    $r0 = COPY %3(s32)758    BX_RET 14, $noreg, implicit $r0759 760...761---762name:            test_fcmp_ugt_s64763# CHECK-LABEL: name: test_fcmp_ugt_s64764legalized:       true765regBankSelected: false766selected:        false767# CHECK: registers:768# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }769# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }770# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }771# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }772 773registers:774  - { id: 0, class: _ }775  - { id: 1, class: _ }776  - { id: 2, class: _ }777  - { id: 3, class: _ }778body:             |779  bb.0:780    liveins: $d0, $d1781 782    %0(s64) = COPY $d0783    %1(s64) = COPY $d1784    %2(s1) = G_FCMP floatpred(ugt), %0(s64), %1785    %3(s32) = G_ZEXT %2(s1)786    $r0 = COPY %3(s32)787    BX_RET 14, $noreg, implicit $r0788 789...790---791name:            test_select_s32792# CHECK-LABEL: name: test_select_s32793legalized:       true794regBankSelected: false795selected:        false796# CHECK: registers:797# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }798# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }799# CHECK: - { id: 2, class: gprb, preferred-register: '', flags: [  ] }800# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }801# CHECK: - { id: 4, class: gprb, preferred-register: '', flags: [  ] }802 803registers:804  - { id: 0, class: _ }805  - { id: 1, class: _ }806  - { id: 2, class: _ }807  - { id: 3, class: _ }808  - { id: 4, class: _ }809body:             |810  bb.0:811    liveins: $r0, $r1, $r2812 813    %0(s32) = COPY $r0814    %1(s32) = COPY $r1815    %2(s32) = COPY $r2816    %3(s1) = G_TRUNC %2(s32)817    %4(s32) = G_SELECT %3(s1), %0, %1818    $r0 = COPY %4(s32)819    BX_RET 14, $noreg, implicit $r0820 821...822---823name:            test_br824# CHECK-LABEL: name: test_br825legalized:       true826regBankSelected: false827# CHECK: regBankSelected: true828selected:        false829registers:830  - { id: 0, class: _ }831  - { id: 1, class: _ }832# CHECK: { id: 0, class: gprb, preferred-register: '', flags: [  ] }833# CHECK: { id: 1, class: gprb, preferred-register: '', flags: [  ] }834# Check that we map the condition of the G_BRCOND into the GPR.835# For the G_BR, there are no registers to map, but make sure we don't crash.836body:             |837  bb.0:838    successors: %bb.1(0x40000000), %bb.2(0x40000000)839    liveins: $r0840 841    %0(s32) = COPY $r0842    %1(s1) = G_TRUNC %0(s32)843    G_BRCOND %1(s1), %bb.1844    G_BR %bb.2845 846  bb.1:847    BX_RET 14, $noreg848 849  bb.2:850    BX_RET 14, $noreg851 852...853---854name:            test_phi_s32855# CHECK-LABEL: name: test_phi_s32856legalized:       true857regBankSelected: false858# CHECK: regBankSelected: true859selected:        false860tracksRegLiveness: true861registers:862  - { id: 0, class: _ }863  - { id: 1, class: _ }864  - { id: 2, class: _ }865  - { id: 3, class: _ }866  - { id: 4, class: _ }867# CHECK: { id: 0, class: gprb, preferred-register: '', flags: [  ] }868# CHECK: { id: 1, class: gprb, preferred-register: '', flags: [  ] }869# CHECK: { id: 2, class: gprb, preferred-register: '', flags: [  ] }870# CHECK: { id: 3, class: gprb, preferred-register: '', flags: [  ] }871# CHECK: { id: 4, class: gprb, preferred-register: '', flags: [  ] }872body:             |873  bb.0:874    successors: %bb.1(0x40000000), %bb.2(0x40000000)875    liveins: $r0, $r1, $r2876 877    %0(s32) = COPY $r0878    %1(s1) = G_TRUNC %0(s32)879 880    %2(s32) = COPY $r1881    %3(s32) = COPY $r2882 883    G_BRCOND %1(s1), %bb.1884    G_BR %bb.2885 886  bb.1:887    successors: %bb.2(0x80000000)888 889  bb.2:890    %4(s32) = G_PHI %2(s32), %bb.0, %3(s32), %bb.1891    $r0 = COPY %4(s32)892    BX_RET 14, $noreg, implicit $r0893...894---895name:            test_phi_s64896# CHECK-LABEL: name: test_phi_s64897legalized:       true898regBankSelected: false899# CHECK: regBankSelected: true900selected:        false901tracksRegLiveness: true902registers:903  - { id: 0, class: _ }904  - { id: 1, class: _ }905  - { id: 2, class: _ }906  - { id: 3, class: _ }907  - { id: 4, class: _ }908# CHECK: { id: 0, class: gprb, preferred-register: '', flags: [  ] }909# CHECK: { id: 1, class: gprb, preferred-register: '', flags: [  ] }910# CHECK: { id: 2, class: fprb, preferred-register: '', flags: [  ] }911# CHECK: { id: 3, class: fprb, preferred-register: '', flags: [  ] }912# CHECK: { id: 4, class: fprb, preferred-register: '', flags: [  ] }913body:             |914  bb.0:915    successors: %bb.1(0x40000000), %bb.2(0x40000000)916    liveins: $r0, $d0, $d1917 918    %0(s32) = COPY $r0919    %1(s1) = G_TRUNC %0(s32)920 921    %2(s64) = COPY $d0922    %3(s64) = COPY $d1923 924    G_BRCOND %1(s1), %bb.1925    G_BR %bb.2926 927  bb.1:928    successors: %bb.2(0x80000000)929 930  bb.2:931    %4(s64) = G_PHI %2(s64), %bb.0, %3(s64), %bb.1932    $d0 = COPY %4(s64)933    BX_RET 14, $noreg, implicit $d0934...935---936name:            test_fadd_s32937# CHECK-LABEL: name: test_fadd_s32938legalized:       true939regBankSelected: false940selected:        false941# CHECK: registers:942# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }943# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }944# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }945 946registers:947  - { id: 0, class: _ }948  - { id: 1, class: _ }949  - { id: 2, class: _ }950body:             |951  bb.0:952    liveins: $s0, $s1953 954    %0(s32) = COPY $s0955    %1(s32) = COPY $s1956    %2(s32) = G_FADD %0, %1957    $s0 = COPY %2(s32)958    BX_RET 14, $noreg, implicit $s0959 960...961---962name:            test_fadd_s64963# CHECK-LABEL: name: test_fadd_s64964legalized:       true965regBankSelected: false966selected:        false967# CHECK: registers:968# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }969# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }970# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }971 972registers:973  - { id: 0, class: _ }974  - { id: 1, class: _ }975  - { id: 2, class: _ }976body:             |977  bb.0:978    liveins: $d0, $d1979 980    %0(s64) = COPY $d0981    %1(s64) = COPY $d1982    %2(s64) = G_FADD %0, %1983    $d0 = COPY %2(s64)984    BX_RET 14, $noreg, implicit $d0985 986...987---988name:            test_fsub_s32989# CHECK-LABEL: name: test_fsub_s32990legalized:       true991regBankSelected: false992selected:        false993# CHECK: registers:994# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }995# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }996# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }997 998registers:999  - { id: 0, class: _ }1000  - { id: 1, class: _ }1001  - { id: 2, class: _ }1002body:             |1003  bb.0:1004    liveins: $s0, $s11005 1006    %0(s32) = COPY $s01007    %1(s32) = COPY $s11008    %2(s32) = G_FSUB %0, %11009    $s0 = COPY %2(s32)1010    BX_RET 14, $noreg, implicit $s01011 1012...1013---1014name:            test_fsub_s641015# CHECK-LABEL: name: test_fsub_s641016legalized:       true1017regBankSelected: false1018selected:        false1019# CHECK: registers:1020# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1021# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1022# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1023 1024registers:1025  - { id: 0, class: _ }1026  - { id: 1, class: _ }1027  - { id: 2, class: _ }1028body:             |1029  bb.0:1030    liveins: $d0, $d11031 1032    %0(s64) = COPY $d01033    %1(s64) = COPY $d11034    %2(s64) = G_FSUB %0, %11035    $d0 = COPY %2(s64)1036    BX_RET 14, $noreg, implicit $d01037 1038...1039---1040name:            test_fmul_s321041# CHECK-LABEL: name: test_fmul_s321042legalized:       true1043regBankSelected: false1044selected:        false1045# CHECK: registers:1046# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1047# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1048# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1049 1050registers:1051  - { id: 0, class: _ }1052  - { id: 1, class: _ }1053  - { id: 2, class: _ }1054body:             |1055  bb.0:1056    liveins: $s0, $s11057 1058    %0(s32) = COPY $s01059    %1(s32) = COPY $s11060    %2(s32) = G_FMUL %0, %11061    $s0 = COPY %2(s32)1062    BX_RET 14, $noreg, implicit $s01063 1064...1065---1066name:            test_fmul_s641067# CHECK-LABEL: name: test_fmul_s641068legalized:       true1069regBankSelected: false1070selected:        false1071# CHECK: registers:1072# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1073# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1074# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1075 1076registers:1077  - { id: 0, class: _ }1078  - { id: 1, class: _ }1079  - { id: 2, class: _ }1080body:             |1081  bb.0:1082    liveins: $d0, $d11083 1084    %0(s64) = COPY $d01085    %1(s64) = COPY $d11086    %2(s64) = G_FMUL %0, %11087    $d0 = COPY %2(s64)1088    BX_RET 14, $noreg, implicit $d01089 1090...1091---1092name:            test_fdiv_s321093# CHECK-LABEL: name: test_fdiv_s321094legalized:       true1095regBankSelected: false1096selected:        false1097# CHECK: registers:1098# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1099# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1100# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1101 1102registers:1103  - { id: 0, class: _ }1104  - { id: 1, class: _ }1105  - { id: 2, class: _ }1106body:             |1107  bb.0:1108    liveins: $s0, $s11109 1110    %0(s32) = COPY $s01111    %1(s32) = COPY $s11112    %2(s32) = G_FDIV %0, %11113    $s0 = COPY %2(s32)1114    BX_RET 14, $noreg, implicit $s01115 1116...1117---1118name:            test_fdiv_s641119# CHECK-LABEL: name: test_fdiv_s641120legalized:       true1121regBankSelected: false1122selected:        false1123# CHECK: registers:1124# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1125# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1126# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1127 1128registers:1129  - { id: 0, class: _ }1130  - { id: 1, class: _ }1131  - { id: 2, class: _ }1132body:             |1133  bb.0:1134    liveins: $d0, $d11135 1136    %0(s64) = COPY $d01137    %1(s64) = COPY $d11138    %2(s64) = G_FDIV %0, %11139    $d0 = COPY %2(s64)1140    BX_RET 14, $noreg, implicit $d01141 1142...1143---1144name:            test_fneg_s321145# CHECK-LABEL: name: test_fneg_s321146legalized:       true1147regBankSelected: false1148selected:        false1149# CHECK: registers:1150# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1151# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1152registers:1153  - { id: 0, class: _ }1154  - { id: 1, class: _ }1155body:             |1156  bb.0:1157    liveins: $s01158 1159    %0(s32) = COPY $s01160    %1(s32) = G_FNEG %01161    $s0 = COPY %1(s32)1162    BX_RET 14, $noreg, implicit $s01163 1164...1165---1166name:            test_fneg_s641167# CHECK-LABEL: name: test_fneg_s641168legalized:       true1169regBankSelected: false1170selected:        false1171# CHECK: registers:1172# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1173# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1174registers:1175  - { id: 0, class: _ }1176  - { id: 1, class: _ }1177body:             |1178  bb.0:1179    liveins: $d01180 1181    %0(s64) = COPY $d01182    %1(s64) = G_FNEG %01183    $d0 = COPY %1(s64)1184    BX_RET 14, $noreg, implicit $d01185 1186...1187---1188name:            test_fma_s321189# CHECK-LABEL: name: test_fma_s321190legalized:       true1191regBankSelected: false1192selected:        false1193# CHECK: registers:1194# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1195# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1196# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1197# CHECK: - { id: 3, class: fprb, preferred-register: '', flags: [  ] }1198registers:1199  - { id: 0, class: _ }1200  - { id: 1, class: _ }1201  - { id: 2, class: _ }1202  - { id: 3, class: _ }1203body:             |1204  bb.0:1205    liveins: $s0, $s1, $s21206 1207    %0(s32) = COPY $s01208    %1(s32) = COPY $s11209    %2(s32) = COPY $s21210    %3(s32) = G_FMA %0, %1, %21211    $s0 = COPY %3(s32)1212    BX_RET 14, $noreg, implicit $s01213...1214---1215name:            test_fma_s641216# CHECK-LABEL: name: test_fma_s641217legalized:       true1218regBankSelected: false1219selected:        false1220# CHECK: registers:1221# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1222# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1223# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1224# CHECK: - { id: 3, class: fprb, preferred-register: '', flags: [  ] }1225registers:1226  - { id: 0, class: _ }1227  - { id: 1, class: _ }1228  - { id: 2, class: _ }1229  - { id: 3, class: _ }1230body:             |1231  bb.0:1232    liveins: $d0, $d1, $d21233 1234    %0(s64) = COPY $d01235    %1(s64) = COPY $d11236    %2(s64) = COPY $d21237    %3(s64) = G_FMA %0, %1, %21238    $d0 = COPY %3(s64)1239    BX_RET 14, $noreg, implicit $d01240...1241---1242name:            test_fpext_s32_to_s641243# CHECK-LABEL: name: test_fpext_s32_to_s641244legalized:       true1245regBankSelected: false1246selected:        false1247# CHECK: registers:1248# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1249# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1250registers:1251  - { id: 0, class: _ }1252  - { id: 1, class: _ }1253body:             |1254  bb.0:1255    liveins: $s01256 1257    %0(s32) = COPY $s01258    %1(s64) = G_FPEXT %01259    $d0 = COPY %1(s64)1260    BX_RET 14, $noreg, implicit $d01261...1262---1263name:            test_fptrunc_s64_to_s321264# CHECK-LABEL: name: test_fptrunc_s64_to_s321265legalized:       true1266regBankSelected: false1267selected:        false1268# CHECK: registers:1269# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1270# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1271registers:1272  - { id: 0, class: _ }1273  - { id: 1, class: _ }1274body:             |1275  bb.0:1276    liveins: $d01277 1278    %0(s64) = COPY $d01279    %1(s32) = G_FPTRUNC %01280    $s0 = COPY %1(s32)1281    BX_RET 14, $noreg, implicit $s01282...1283---1284name:            test_fpconst_s321285# CHECK-LABEL: name: test_fpconst_s321286legalized:       true1287regBankSelected: false1288selected:        false1289# CHECK: registers:1290# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1291registers:1292  - { id: 0, class: _ }1293body:             |1294  bb.0:1295    liveins:1296 1297    %0(s32) = G_FCONSTANT float -1.251298    $s0 = COPY %0(s32)1299    BX_RET 14, $noreg, implicit $s01300...1301---1302name:            test_fpconst_s641303# CHECK-LABEL: name: test_fpconst_s641304legalized:       true1305regBankSelected: false1306selected:        false1307# CHECK: registers:1308# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1309registers:1310  - { id: 0, class: _ }1311body:             |1312  bb.0:1313    liveins:1314 1315    %0(s64) = G_FCONSTANT double -2.41316    $d0 = COPY %0(s64)1317    BX_RET 14, $noreg, implicit $d01318...1319---1320name:            test_fptosi_s321321# CHECK-LABEL: name: test_fptosi_s321322legalized:       true1323regBankSelected: false1324selected:        false1325# CHECK: registers:1326# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1327# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }1328registers:1329  - { id: 0, class: _ }1330  - { id: 1, class: _ }1331body:             |1332  bb.0:1333    liveins: $s01334 1335    %0(s32) = COPY $s01336    %1(s32) = G_FPTOSI %01337    $r0 = COPY %1(s32)1338    BX_RET 14, $noreg, implicit $r01339 1340...1341---1342name:            test_fptosi_s641343# CHECK-LABEL: name: test_fptosi_s641344legalized:       true1345regBankSelected: false1346selected:        false1347# CHECK: registers:1348# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1349# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }1350registers:1351  - { id: 0, class: _ }1352  - { id: 1, class: _ }1353body:             |1354  bb.0:1355    liveins: $d01356 1357    %0(s64) = COPY $d01358    %1(s32) = G_FPTOSI %01359    $r0 = COPY %1(s32)1360    BX_RET 14, $noreg, implicit $r01361...1362---1363name:            test_fptoui_s321364# CHECK-LABEL: name: test_fptoui_s321365legalized:       true1366regBankSelected: false1367selected:        false1368# CHECK: registers:1369# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1370# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }1371registers:1372  - { id: 0, class: _ }1373  - { id: 1, class: _ }1374body:             |1375  bb.0:1376    liveins: $s01377 1378    %0(s32) = COPY $s01379    %1(s32) = G_FPTOUI %01380    $r0 = COPY %1(s32)1381    BX_RET 14, $noreg, implicit $r01382 1383...1384---1385name:            test_fptoui_s641386# CHECK-LABEL: name: test_fptoui_s641387legalized:       true1388regBankSelected: false1389selected:        false1390# CHECK: registers:1391# CHECK: - { id: 0, class: fprb, preferred-register: '', flags: [  ] }1392# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }1393registers:1394  - { id: 0, class: _ }1395  - { id: 1, class: _ }1396body:             |1397  bb.0:1398    liveins: $d01399 1400    %0(s64) = COPY $d01401    %1(s32) = G_FPTOUI %01402    $r0 = COPY %1(s32)1403    BX_RET 14, $noreg, implicit $r01404...1405---1406name:            test_sitofp_s321407# CHECK-LABEL: name: test_sitofp_s321408legalized:       true1409regBankSelected: false1410selected:        false1411# CHECK: registers:1412# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }1413# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1414registers:1415  - { id: 0, class: _ }1416  - { id: 1, class: _ }1417body:             |1418  bb.0:1419    liveins: $r01420 1421    %0(s32) = COPY $r01422    %1(s32) = G_SITOFP %01423    $s0 = COPY %1(s32)1424    BX_RET 14, $noreg, implicit $s01425 1426...1427---1428name:            test_sitofp_s641429# CHECK-LABEL: name: test_sitofp_s641430legalized:       true1431regBankSelected: false1432selected:        false1433# CHECK: registers:1434# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }1435# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1436registers:1437  - { id: 0, class: _ }1438  - { id: 1, class: _ }1439body:             |1440  bb.0:1441    liveins: $r01442 1443    %0(s32) = COPY $r01444    %1(s64) = G_SITOFP %01445    $d0 = COPY %1(s64)1446    BX_RET 14, $noreg, implicit $d01447...1448---1449name:            test_uitofp_s321450# CHECK-LABEL: name: test_uitofp_s321451legalized:       true1452regBankSelected: false1453selected:        false1454# CHECK: registers:1455# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }1456# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1457registers:1458  - { id: 0, class: _ }1459  - { id: 1, class: _ }1460body:             |1461  bb.0:1462    liveins: $r01463 1464    %0(s32) = COPY $r01465    %1(s32) = G_UITOFP %01466    $s0 = COPY %1(s32)1467    BX_RET 14, $noreg, implicit $s01468 1469...1470---1471name:            test_uitofp_s641472# CHECK-LABEL: name: test_uitofp_s641473legalized:       true1474regBankSelected: false1475selected:        false1476# CHECK: registers:1477# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }1478# CHECK: - { id: 1, class: fprb, preferred-register: '', flags: [  ] }1479registers:1480  - { id: 0, class: _ }1481  - { id: 1, class: _ }1482body:             |1483  bb.0:1484    liveins: $r01485 1486    %0(s32) = COPY $r01487    %1(s64) = G_UITOFP %01488    $d0 = COPY %1(s64)1489    BX_RET 14, $noreg, implicit $d01490...1491---1492name:            test_soft_fp_s641493# CHECK-LABEL: name: test_soft_fp_s641494legalized:       true1495regBankSelected: false1496selected:        false1497# CHECK: registers:1498# CHECK: - { id: 0, class: gprb, preferred-register: '', flags: [  ] }1499# CHECK: - { id: 1, class: gprb, preferred-register: '', flags: [  ] }1500# CHECK: - { id: 2, class: fprb, preferred-register: '', flags: [  ] }1501# CHECK: - { id: 3, class: gprb, preferred-register: '', flags: [  ] }1502# CHECK: - { id: 4, class: gprb, preferred-register: '', flags: [  ] }1503 1504registers:1505  - { id: 0, class: _ }1506  - { id: 1, class: _ }1507  - { id: 2, class: _ }1508  - { id: 3, class: _ }1509  - { id: 4, class: _ }1510body:             |1511  bb.0:1512    liveins: $r0, $r11513 1514    %0(s32) = COPY $r01515    %1(s32) = COPY $r11516    %2(s64) = G_MERGE_VALUES %0(s32), %1(s32)1517    %3(s32), %4(s32) = G_UNMERGE_VALUES %2(s64)1518    $r0 = COPY %3(s32)1519    $r1 = COPY %4(s32)1520    BX_RET 14, $noreg, implicit $r0, implicit $r11521 1522...1523---1524name:            test_dbg_value1525# CHECK-LABEL: name: test_dbg_value1526legalized:       true1527regBankSelected: false1528selected:        false1529 1530registers:1531  - { id: 0, class: _ }1532  - { id: 1, class: _ }1533  - { id: 2, class: _ }1534  - { id: 3, class: _ }1535  - { id: 4, class: _ }1536  - { id: 5, class: _ }1537body:             |1538  bb.0:1539    liveins: $r0, $s1, $d21540 1541    %0(s32) = COPY $r01542 1543    ; CHECK: {{%[0-9]+}}:gprb(s32) = G_ADD1544    %1(s32) = G_ADD %0, %01545 1546    ; CHECK: DBG_VALUE {{%[0-9]+}}(s32), $noreg1547    DBG_VALUE %1(s32), $noreg, !7, !DIExpression(), debug-location !91548 1549    $r0 = COPY %1(s32)1550 1551    %2(s32) = COPY $s11552 1553    ; CHECK: {{%[0-9]+}}:fprb(s32) = G_FADD1554    %3(s32) = G_FADD %2, %21555 1556    ; CHECK: DBG_VALUE {{%[0-9]+}}(s32), $noreg1557    DBG_VALUE %3(s32), $noreg, !7, !DIExpression(), debug-location !91558 1559    $s1 = COPY %3(s32)1560 1561    %4(s64) = COPY $d21562 1563    ; CHECK: {{%[0-9]+}}:fprb(s64) = G_FADD1564    %5(s64) = G_FADD %4, %41565 1566    ; CHECK: DBG_VALUE {{%[0-9]+}}(s64), $noreg1567    DBG_VALUE %5(s64), $noreg, !7, !DIExpression(), debug-location !91568 1569    $d2 = COPY %5(s64)1570 1571    ; CHECK: DBG_VALUE i32 42, 01572    DBG_VALUE i32 42, 0, !7, !DIExpression(), debug-location !91573 1574    ; CHECK: DBG_VALUE float 1.000000e+00, 01575    DBG_VALUE float 1.000000e+00, 0, !7, !DIExpression(), debug-location !91576 1577    ; CHECK: DBG_VALUE $noreg, 01578    DBG_VALUE $noreg, 0, !7, !DIExpression(), debug-location !91579 1580    $d2 = COPY %5(s64)1581    BX_RET 14, $noreg, implicit $r0, implicit $s1, implicit $d21582 1583...1584