brintos

brintos / llvm-project-archived public Read only

0
0
Text · 8.0 KiB · a36ed53 Raw
262 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=riscv32 -run-pass=legalizer %s -o - \3# RUN: | FileCheck %s4 5---6name:            zextload_i8_i167body:             |8  bb.0:9    liveins: $x1010 11    ; CHECK-LABEL: name: zextload_i8_i1612    ; CHECK: liveins: $x1013    ; CHECK-NEXT: {{  $}}14    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1015    ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[COPY]](p0) :: (load (s8))16    ; CHECK-NEXT: $x10 = COPY [[ZEXTLOAD]](s32)17    ; CHECK-NEXT: PseudoRET implicit $x1018    %0:_(p0) = COPY $x1019    %2:_(s16) = G_ZEXTLOAD %0(p0) :: (load (s8))20    %3:_(s32) = G_ANYEXT %2(s16)21    $x10 = COPY %3(s32)22    PseudoRET implicit $x1023 24...25---26name:            zextload_i8_i3227body:             |28  bb.0:29    liveins: $x1030 31    ; CHECK-LABEL: name: zextload_i8_i3232    ; CHECK: liveins: $x1033    ; CHECK-NEXT: {{  $}}34    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1035    ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[COPY]](p0) :: (load (s8))36    ; CHECK-NEXT: $x10 = COPY [[ZEXTLOAD]](s32)37    ; CHECK-NEXT: PseudoRET implicit $x1038    %0:_(p0) = COPY $x1039    %2:_(s32) = G_ZEXTLOAD %0(p0) :: (load (s8))40    $x10 = COPY %2(s32)41    PseudoRET implicit $x1042 43...44---45name:            zextload_i16_i3246body:             |47  bb.0:48    liveins: $x1049 50    ; CHECK-LABEL: name: zextload_i16_i3251    ; CHECK: liveins: $x1052    ; CHECK-NEXT: {{  $}}53    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1054    ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[COPY]](p0) :: (load (s16))55    ; CHECK-NEXT: $x10 = COPY [[ZEXTLOAD]](s32)56    ; CHECK-NEXT: PseudoRET implicit $x1057    %0:_(p0) = COPY $x1058    %2:_(s32) = G_ZEXTLOAD %0(p0) :: (load (s16))59    $x10 = COPY %2(s32)60    PseudoRET implicit $x1061 62...63---64name:            zextload_i8_i6465body:             |66  bb.0:67    liveins: $x1068 69    ; CHECK-LABEL: name: zextload_i8_i6470    ; CHECK: liveins: $x1071    ; CHECK-NEXT: {{  $}}72    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1073    ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[COPY]](p0) :: (load (s8))74    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 075    ; CHECK-NEXT: $x10 = COPY [[ZEXTLOAD]](s32)76    ; CHECK-NEXT: $x11 = COPY [[C]](s32)77    ; CHECK-NEXT: PseudoRET implicit $x10, implicit $x1178    %0:_(p0) = COPY $x1079    %2:_(s64) = G_ZEXTLOAD %0(p0) :: (load (s8))80    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2(s64)81    $x10 = COPY %3(s32)82    $x11 = COPY %4(s32)83    PseudoRET implicit $x10, implicit $x1184 85...86---87name:            zextload_i16_i6488body:             |89  bb.0:90    liveins: $x1091 92    ; CHECK-LABEL: name: zextload_i16_i6493    ; CHECK: liveins: $x1094    ; CHECK-NEXT: {{  $}}95    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1096    ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[COPY]](p0) :: (load (s16))97    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 098    ; CHECK-NEXT: $x10 = COPY [[ZEXTLOAD]](s32)99    ; CHECK-NEXT: $x11 = COPY [[C]](s32)100    ; CHECK-NEXT: PseudoRET implicit $x10, implicit $x11101    %0:_(p0) = COPY $x10102    %2:_(s64) = G_ZEXTLOAD %0(p0) :: (load (s16))103    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2(s64)104    $x10 = COPY %3(s32)105    $x11 = COPY %4(s32)106    PseudoRET implicit $x10, implicit $x11107 108...109---110name:            zextload_i32_i64111body:             |112  bb.0:113    liveins: $x10114 115    ; CHECK-LABEL: name: zextload_i32_i64116    ; CHECK: liveins: $x10117    ; CHECK-NEXT: {{  $}}118    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10119    ; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load (s32))120    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0121    ; CHECK-NEXT: $x10 = COPY [[LOAD]](s32)122    ; CHECK-NEXT: $x11 = COPY [[C]](s32)123    ; CHECK-NEXT: PseudoRET implicit $x10, implicit $x11124    %0:_(p0) = COPY $x10125    %2:_(s64) = G_ZEXTLOAD %0(p0) :: (load (s32))126    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2(s64)127    $x10 = COPY %3(s32)128    $x11 = COPY %4(s32)129    PseudoRET implicit $x10, implicit $x11130 131...132---133name:            sextload_i8_i16134body:             |135  bb.0:136    liveins: $x10137 138    ; CHECK-LABEL: name: sextload_i8_i16139    ; CHECK: liveins: $x10140    ; CHECK-NEXT: {{  $}}141    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10142    ; CHECK-NEXT: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p0) :: (load (s8))143    ; CHECK-NEXT: $x10 = COPY [[SEXTLOAD]](s32)144    ; CHECK-NEXT: PseudoRET implicit $x10145    %0:_(p0) = COPY $x10146    %2:_(s16) = G_SEXTLOAD %0(p0) :: (load (s8))147    %3:_(s32) = G_ANYEXT %2(s16)148    $x10 = COPY %3(s32)149    PseudoRET implicit $x10150 151...152---153name:            sextload_i8_i32154body:             |155  bb.0:156    liveins: $x10157 158    ; CHECK-LABEL: name: sextload_i8_i32159    ; CHECK: liveins: $x10160    ; CHECK-NEXT: {{  $}}161    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10162    ; CHECK-NEXT: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p0) :: (load (s8))163    ; CHECK-NEXT: $x10 = COPY [[SEXTLOAD]](s32)164    ; CHECK-NEXT: PseudoRET implicit $x10165    %0:_(p0) = COPY $x10166    %2:_(s32) = G_SEXTLOAD %0(p0) :: (load (s8))167    $x10 = COPY %2(s32)168    PseudoRET implicit $x10169 170...171---172name:            sextload_i16_i32173body:             |174  bb.0:175    liveins: $x10176 177    ; CHECK-LABEL: name: sextload_i16_i32178    ; CHECK: liveins: $x10179    ; CHECK-NEXT: {{  $}}180    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10181    ; CHECK-NEXT: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p0) :: (load (s16))182    ; CHECK-NEXT: $x10 = COPY [[SEXTLOAD]](s32)183    ; CHECK-NEXT: PseudoRET implicit $x10184    %0:_(p0) = COPY $x10185    %2:_(s32) = G_SEXTLOAD %0(p0) :: (load (s16))186    $x10 = COPY %2(s32)187    PseudoRET implicit $x10188 189...190---191name:            sextload_i8_i64192body:             |193  bb.0:194    liveins: $x10195 196    ; CHECK-LABEL: name: sextload_i8_i64197    ; CHECK: liveins: $x10198    ; CHECK-NEXT: {{  $}}199    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10200    ; CHECK-NEXT: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p0) :: (load (s8))201    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 31202    ; CHECK-NEXT: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[SEXTLOAD]], [[C]](s32)203    ; CHECK-NEXT: $x10 = COPY [[SEXTLOAD]](s32)204    ; CHECK-NEXT: $x11 = COPY [[ASHR]](s32)205    ; CHECK-NEXT: PseudoRET implicit $x10, implicit $x11206    %0:_(p0) = COPY $x10207    %2:_(s64) = G_SEXTLOAD %0(p0) :: (load (s8))208    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2(s64)209    $x10 = COPY %3(s32)210    $x11 = COPY %4(s32)211    PseudoRET implicit $x10, implicit $x11212 213...214---215name:            sextload_i16_i64216body:             |217  bb.0:218    liveins: $x10219 220    ; CHECK-LABEL: name: sextload_i16_i64221    ; CHECK: liveins: $x10222    ; CHECK-NEXT: {{  $}}223    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10224    ; CHECK-NEXT: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p0) :: (load (s16))225    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 31226    ; CHECK-NEXT: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[SEXTLOAD]], [[C]](s32)227    ; CHECK-NEXT: $x10 = COPY [[SEXTLOAD]](s32)228    ; CHECK-NEXT: $x11 = COPY [[ASHR]](s32)229    ; CHECK-NEXT: PseudoRET implicit $x10, implicit $x11230    %0:_(p0) = COPY $x10231    %2:_(s64) = G_SEXTLOAD %0(p0) :: (load (s16))232    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2(s64)233    $x10 = COPY %3(s32)234    $x11 = COPY %4(s32)235    PseudoRET implicit $x10, implicit $x11236 237...238---239name:            sextload_i32_i64240body:             |241  bb.0:242    liveins: $x10243 244    ; CHECK-LABEL: name: sextload_i32_i64245    ; CHECK: liveins: $x10246    ; CHECK-NEXT: {{  $}}247    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x10248    ; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load (s32))249    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 31250    ; CHECK-NEXT: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[LOAD]], [[C]](s32)251    ; CHECK-NEXT: $x10 = COPY [[LOAD]](s32)252    ; CHECK-NEXT: $x11 = COPY [[ASHR]](s32)253    ; CHECK-NEXT: PseudoRET implicit $x10, implicit $x11254    %0:_(p0) = COPY $x10255    %2:_(s64) = G_SEXTLOAD %0(p0) :: (load (s32))256    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2(s64)257    $x10 = COPY %3(s32)258    $x11 = COPY %4(s32)259    PseudoRET implicit $x10, implicit $x11260 261...262