brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.6 KiB · be4416e Raw
295 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=riscv32 -run-pass=instruction-select %s -o - \3# RUN:   -disable-gisel-legality-check | FileCheck %s4 5---6name:            load_i87legalized:       true8regBankSelected: true9tracksRegLiveness: true10body:            |11  bb.0:12    liveins: $x1013 14    ; CHECK-LABEL: name: load_i815    ; CHECK: liveins: $x1016    ; CHECK-NEXT: {{  $}}17    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x1018    ; CHECK-NEXT: [[LBU:%[0-9]+]]:gpr = LBU [[COPY]], 0 :: (load (s8))19    ; CHECK-NEXT: $x10 = COPY [[LBU]]20    ; CHECK-NEXT: PseudoRET implicit $x1021    %0:gprb(p0) = COPY $x1022    %1:gprb(s32) = G_LOAD %0(p0) :: (load (s8))23    $x10 = COPY %1(s32)24    PseudoRET implicit $x1025 26...27---28name:            load_i1629legalized:       true30regBankSelected: true31tracksRegLiveness: true32body:            |33  bb.0:34    liveins: $x1035 36    ; CHECK-LABEL: name: load_i1637    ; CHECK: liveins: $x1038    ; CHECK-NEXT: {{  $}}39    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x1040    ; CHECK-NEXT: [[LH:%[0-9]+]]:gpr = LH [[COPY]], 0 :: (load (s16))41    ; CHECK-NEXT: $x10 = COPY [[LH]]42    ; CHECK-NEXT: PseudoRET implicit $x1043    %0:gprb(p0) = COPY $x1044    %1:gprb(s32) = G_LOAD %0(p0) :: (load (s16))45    $x10 = COPY %1(s32)46    PseudoRET implicit $x1047 48...49---50name:            load_i8_i1651legalized:       true52regBankSelected: true53tracksRegLiveness: true54body:            |55  bb.0:56    liveins: $x1057 58    ; CHECK-LABEL: name: load_i8_i1659    ; CHECK: liveins: $x1060    ; CHECK-NEXT: {{  $}}61    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x1062    ; CHECK-NEXT: [[LBU:%[0-9]+]]:gpr = LBU [[COPY]], 0 :: (load (s8))63    ; CHECK-NEXT: $x10 = COPY [[LBU]]64    ; CHECK-NEXT: PseudoRET implicit $x1065    %0:gprb(p0) = COPY $x1066    %1:gprb(s16) = G_LOAD %0(p0) :: (load (s8))67    %2:gprb(s32) = G_ANYEXT %168    $x10 = COPY %2(s32)69    PseudoRET implicit $x1070 71...72---73name:            load_i16_i1674legalized:       true75regBankSelected: true76tracksRegLiveness: true77body:            |78  bb.0:79    liveins: $x1080 81    ; CHECK-LABEL: name: load_i16_i1682    ; CHECK: liveins: $x1083    ; CHECK-NEXT: {{  $}}84    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x1085    ; CHECK-NEXT: [[LH:%[0-9]+]]:gpr = LH [[COPY]], 0 :: (load (s16))86    ; CHECK-NEXT: $x10 = COPY [[LH]]87    ; CHECK-NEXT: PseudoRET implicit $x1088    %0:gprb(p0) = COPY $x1089    %1:gprb(s16) = G_LOAD %0(p0) :: (load (s16))90    %2:gprb(s32) = G_ANYEXT %191    $x10 = COPY %2(s32)92    PseudoRET implicit $x1093 94...95---96name:            load_i3297legalized:       true98regBankSelected: true99tracksRegLiveness: true100body:            |101  bb.0:102    liveins: $x10103 104    ; CHECK-LABEL: name: load_i32105    ; CHECK: liveins: $x10106    ; CHECK-NEXT: {{  $}}107    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10108    ; CHECK-NEXT: [[LW:%[0-9]+]]:gpr = LW [[COPY]], 0 :: (load (s32))109    ; CHECK-NEXT: $x10 = COPY [[LW]]110    ; CHECK-NEXT: PseudoRET implicit $x10111    %0:gprb(p0) = COPY $x10112    %1:gprb(s32) = G_LOAD %0(p0) :: (load (s32))113    $x10 = COPY %1(s32)114    PseudoRET implicit $x10115 116...117---118name:            zextload_i8119legalized:       true120regBankSelected: true121tracksRegLiveness: true122body:            |123  bb.0:124    liveins: $x10125 126    ; CHECK-LABEL: name: zextload_i8127    ; CHECK: liveins: $x10128    ; CHECK-NEXT: {{  $}}129    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10130    ; CHECK-NEXT: [[LBU:%[0-9]+]]:gpr = LBU [[COPY]], 0 :: (load (s8))131    ; CHECK-NEXT: $x10 = COPY [[LBU]]132    ; CHECK-NEXT: PseudoRET implicit $x10133    %0:gprb(p0) = COPY $x10134    %1:gprb(s32) = G_ZEXTLOAD %0(p0) :: (load (s8))135    $x10 = COPY %1(s32)136    PseudoRET implicit $x10137 138...139---140name:            zextload_i16141legalized:       true142regBankSelected: true143tracksRegLiveness: true144body:            |145  bb.0:146    liveins: $x10147 148    ; CHECK-LABEL: name: zextload_i16149    ; CHECK: liveins: $x10150    ; CHECK-NEXT: {{  $}}151    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10152    ; CHECK-NEXT: [[LHU:%[0-9]+]]:gpr = LHU [[COPY]], 0 :: (load (s16))153    ; CHECK-NEXT: $x10 = COPY [[LHU]]154    ; CHECK-NEXT: PseudoRET implicit $x10155    %0:gprb(p0) = COPY $x10156    %1:gprb(s32) = G_ZEXTLOAD %0(p0) :: (load (s16))157    $x10 = COPY %1(s32)158    PseudoRET implicit $x10159 160...161---162name:            sextload_i8163legalized:       true164regBankSelected: true165tracksRegLiveness: true166body:            |167  bb.0:168    liveins: $x10169 170    ; CHECK-LABEL: name: sextload_i8171    ; CHECK: liveins: $x10172    ; CHECK-NEXT: {{  $}}173    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10174    ; CHECK-NEXT: [[LB:%[0-9]+]]:gpr = LB [[COPY]], 0 :: (load (s8))175    ; CHECK-NEXT: $x10 = COPY [[LB]]176    ; CHECK-NEXT: PseudoRET implicit $x10177    %0:gprb(p0) = COPY $x10178    %1:gprb(s32) = G_SEXTLOAD %0(p0) :: (load (s8))179    $x10 = COPY %1(s32)180    PseudoRET implicit $x10181 182...183---184name:            sextload_i16185legalized:       true186regBankSelected: true187tracksRegLiveness: true188body:            |189  bb.0:190    liveins: $x10191 192    ; CHECK-LABEL: name: sextload_i16193    ; CHECK: liveins: $x10194    ; CHECK-NEXT: {{  $}}195    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10196    ; CHECK-NEXT: [[LH:%[0-9]+]]:gpr = LH [[COPY]], 0 :: (load (s16))197    ; CHECK-NEXT: $x10 = COPY [[LH]]198    ; CHECK-NEXT: PseudoRET implicit $x10199    %0:gprb(p0) = COPY $x10200    %1:gprb(s32) = G_SEXTLOAD %0(p0) :: (load (s16))201    $x10 = COPY %1(s32)202    PseudoRET implicit $x10203 204...205---206name:            load_p0207legalized:       true208regBankSelected: true209tracksRegLiveness: true210body:            |211  bb.0:212    liveins: $x10213 214    ; CHECK-LABEL: name: load_p0215    ; CHECK: liveins: $x10216    ; CHECK-NEXT: {{  $}}217    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10218    ; CHECK-NEXT: [[LW:%[0-9]+]]:gpr = LW [[COPY]], 0 :: (load (p0))219    ; CHECK-NEXT: $x10 = COPY [[LW]]220    ; CHECK-NEXT: PseudoRET implicit $x10221    %0:gprb(p0) = COPY $x10222    %1:gprb(p0) = G_LOAD %0(p0) :: (load (p0))223    $x10 = COPY %1(p0)224    PseudoRET implicit $x10225 226...227---228name:            load_fi_i32229legalized:       true230regBankSelected: true231tracksRegLiveness: true232 233stack:234  - { id: 0, offset: 0, size: 4, alignment: 4 }235 236body:            |237  bb.0:238    ; CHECK-LABEL: name: load_fi_i32239    ; CHECK: [[LW:%[0-9]+]]:gpr = LW %stack.0, 0 :: (load (s32))240    ; CHECK-NEXT: $x10 = COPY [[LW]]241    ; CHECK-NEXT: PseudoRET implicit $x10242    %0:gprb(p0) = G_FRAME_INDEX %stack.0243    %1:gprb(s32) = G_LOAD %0(p0) :: (load (s32))244    $x10 = COPY %1(s32)245    PseudoRET implicit $x10246 247...248---249name:            load_fi_gep_i32250legalized:       true251regBankSelected: true252tracksRegLiveness: true253 254stack:255  - { id: 0, offset: 0, size: 8, alignment: 4 }256 257body:            |258  bb.0:259    ; CHECK-LABEL: name: load_fi_gep_i32260    ; CHECK: [[LW:%[0-9]+]]:gpr = LW %stack.0, 4 :: (load (s32))261    ; CHECK-NEXT: $x10 = COPY [[LW]]262    ; CHECK-NEXT: PseudoRET implicit $x10263    %0:gprb(p0) = G_FRAME_INDEX %stack.0264    %1:gprb(s32) = G_CONSTANT i32 4265    %2:gprb(p0) = G_PTR_ADD %0(p0), %1(s32)266    %3:gprb(s32) = G_LOAD %2(p0) :: (load (s32))267    $x10 = COPY %3(s32)268    PseudoRET implicit $x10269 270...271---272name:            load_gep_i32273legalized:       true274regBankSelected: true275tracksRegLiveness: true276body:            |277  bb.0:278    liveins: $x10279 280    ; CHECK-LABEL: name: load_gep_i32281    ; CHECK: liveins: $x10282    ; CHECK-NEXT: {{  $}}283    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10284    ; CHECK-NEXT: [[LW:%[0-9]+]]:gpr = LW [[COPY]], 4 :: (load (s32))285    ; CHECK-NEXT: $x10 = COPY [[LW]]286    ; CHECK-NEXT: PseudoRET implicit $x10287    %0:gprb(p0) = COPY $x10288    %1:gprb(s32) = G_CONSTANT i32 4289    %2:gprb(p0) = G_PTR_ADD %0(p0), %1(s32)290    %3:gprb(s32) = G_LOAD %2(p0) :: (load (s32))291    $x10 = COPY %3(s32)292    PseudoRET implicit $x10293 294...295