brintos

brintos / llvm-project-archived public Read only

0
0
Text · 19.3 KiB · 4d1b11b Raw
597 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=riscv32 -mattr=+m,+v -run-pass=regbankselect \3# RUN:   -simplify-mir -verify-machineinstrs %s \4# RUN:   -o - | FileCheck %s5# RUN: llc -mtriple=riscv64 -mattr=+m,+v -run-pass=regbankselect \6# RUN:   -simplify-mir -verify-machineinstrs %s \7# RUN:   -o - | FileCheck %s8 9---10name:            anyext_nxv1i16_nxv1i811legalized:       true12tracksRegLiveness: true13body:             |14  bb.0.entry:15    liveins: $v816 17    ; CHECK-LABEL: name: anyext_nxv1i16_nxv1i818    ; CHECK: liveins: $v819    ; CHECK-NEXT: {{  $}}20    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 1 x s8>) = COPY $v821    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 1 x s16>) = G_ANYEXT [[COPY]](<vscale x 1 x s8>)22    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 1 x s16>)23    ; CHECK-NEXT: PseudoRET implicit $v824    %0:_(<vscale x 1 x s8>) = COPY $v825    %1:_(<vscale x 1 x s16>) = G_ANYEXT %0(<vscale x 1 x s8>)26    $v8 = COPY %1(<vscale x 1 x s16>)27    PseudoRET implicit $v828 29...30---31name:            anyext_nxv1i32_nxv1i832legalized:       true33tracksRegLiveness: true34body:             |35  bb.0.entry:36    liveins: $v837 38    ; CHECK-LABEL: name: anyext_nxv1i32_nxv1i839    ; CHECK: liveins: $v840    ; CHECK-NEXT: {{  $}}41    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 1 x s8>) = COPY $v842    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 1 x s32>) = G_ANYEXT [[COPY]](<vscale x 1 x s8>)43    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 1 x s32>)44    ; CHECK-NEXT: PseudoRET implicit $v845    %0:_(<vscale x 1 x s8>) = COPY $v846    %1:_(<vscale x 1 x s32>) = G_ANYEXT %0(<vscale x 1 x s8>)47    $v8 = COPY %1(<vscale x 1 x s32>)48    PseudoRET implicit $v849 50...51---52name:            anyext_nxv1i64_nxv1i853legalized:       true54tracksRegLiveness: true55body:             |56  bb.0.entry:57    liveins: $v858 59    ; CHECK-LABEL: name: anyext_nxv1i64_nxv1i860    ; CHECK: liveins: $v861    ; CHECK-NEXT: {{  $}}62    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 1 x s8>) = COPY $v863    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 1 x s64>) = G_ANYEXT [[COPY]](<vscale x 1 x s8>)64    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 1 x s64>)65    ; CHECK-NEXT: PseudoRET implicit $v866    %0:_(<vscale x 1 x s8>) = COPY $v867    %1:_(<vscale x 1 x s64>) = G_ANYEXT %0(<vscale x 1 x s8>)68    $v8 = COPY %1(<vscale x 1 x s64>)69    PseudoRET implicit $v870 71...72---73name:            anyext_nxv2i16_nxv2i874legalized:       true75tracksRegLiveness: true76body:             |77  bb.0.entry:78    liveins: $v879 80    ; CHECK-LABEL: name: anyext_nxv2i16_nxv2i881    ; CHECK: liveins: $v882    ; CHECK-NEXT: {{  $}}83    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 2 x s8>) = COPY $v884    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 2 x s16>) = G_ANYEXT [[COPY]](<vscale x 2 x s8>)85    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 2 x s16>)86    ; CHECK-NEXT: PseudoRET implicit $v887    %0:_(<vscale x 2 x s8>) = COPY $v888    %1:_(<vscale x 2 x s16>) = G_ANYEXT %0(<vscale x 2 x s8>)89    $v8 = COPY %1(<vscale x 2 x s16>)90    PseudoRET implicit $v891 92...93---94name:            anyext_nxv2i32_nxv2i895legalized:       true96tracksRegLiveness: true97body:             |98  bb.0.entry:99    liveins: $v8100 101    ; CHECK-LABEL: name: anyext_nxv2i32_nxv2i8102    ; CHECK: liveins: $v8103    ; CHECK-NEXT: {{  $}}104    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 2 x s8>) = COPY $v8105    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 2 x s32>) = G_ANYEXT [[COPY]](<vscale x 2 x s8>)106    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 2 x s32>)107    ; CHECK-NEXT: PseudoRET implicit $v8108    %0:_(<vscale x 2 x s8>) = COPY $v8109    %1:_(<vscale x 2 x s32>) = G_ANYEXT %0(<vscale x 2 x s8>)110    $v8 = COPY %1(<vscale x 2 x s32>)111    PseudoRET implicit $v8112 113...114---115name:            anyext_nxv2i64_nxv2i8116legalized:       true117tracksRegLiveness: true118body:             |119  bb.0.entry:120    liveins: $v8121 122    ; CHECK-LABEL: name: anyext_nxv2i64_nxv2i8123    ; CHECK: liveins: $v8124    ; CHECK-NEXT: {{  $}}125    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 2 x s8>) = COPY $v8126    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 2 x s64>) = G_ANYEXT [[COPY]](<vscale x 2 x s8>)127    ; CHECK-NEXT: $v8m2 = COPY [[ANYEXT]](<vscale x 2 x s64>)128    ; CHECK-NEXT: PseudoRET implicit $v8m2129    %0:_(<vscale x 2 x s8>) = COPY $v8130    %1:_(<vscale x 2 x s64>) = G_ANYEXT %0(<vscale x 2 x s8>)131    $v8m2 = COPY %1(<vscale x 2 x s64>)132    PseudoRET implicit $v8m2133 134...135---136name:            anyext_nxv4i16_nxv4i8137legalized:       true138tracksRegLiveness: true139body:             |140  bb.0.entry:141    liveins: $v8142 143    ; CHECK-LABEL: name: anyext_nxv4i16_nxv4i8144    ; CHECK: liveins: $v8145    ; CHECK-NEXT: {{  $}}146    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 4 x s8>) = COPY $v8147    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 4 x s16>) = G_ANYEXT [[COPY]](<vscale x 4 x s8>)148    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 4 x s16>)149    ; CHECK-NEXT: PseudoRET implicit $v8150    %0:_(<vscale x 4 x s8>) = COPY $v8151    %1:_(<vscale x 4 x s16>) = G_ANYEXT %0(<vscale x 4 x s8>)152    $v8 = COPY %1(<vscale x 4 x s16>)153    PseudoRET implicit $v8154 155...156---157name:            anyext_nxv4i32_nxv4i8158legalized:       true159tracksRegLiveness: true160body:             |161  bb.0.entry:162    liveins: $v8163 164    ; CHECK-LABEL: name: anyext_nxv4i32_nxv4i8165    ; CHECK: liveins: $v8166    ; CHECK-NEXT: {{  $}}167    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 4 x s8>) = COPY $v8168    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 4 x s32>) = G_ANYEXT [[COPY]](<vscale x 4 x s8>)169    ; CHECK-NEXT: $v8m2 = COPY [[ANYEXT]](<vscale x 4 x s32>)170    ; CHECK-NEXT: PseudoRET implicit $v8m2171    %0:_(<vscale x 4 x s8>) = COPY $v8172    %1:_(<vscale x 4 x s32>) = G_ANYEXT %0(<vscale x 4 x s8>)173    $v8m2 = COPY %1(<vscale x 4 x s32>)174    PseudoRET implicit $v8m2175 176...177---178name:            anyext_nxv4i64_nxv4i8179legalized:       true180tracksRegLiveness: true181body:             |182  bb.0.entry:183    liveins: $v8184 185    ; CHECK-LABEL: name: anyext_nxv4i64_nxv4i8186    ; CHECK: liveins: $v8187    ; CHECK-NEXT: {{  $}}188    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 4 x s8>) = COPY $v8189    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 4 x s64>) = G_ANYEXT [[COPY]](<vscale x 4 x s8>)190    ; CHECK-NEXT: $v8m4 = COPY [[ANYEXT]](<vscale x 4 x s64>)191    ; CHECK-NEXT: PseudoRET implicit $v8m4192    %0:_(<vscale x 4 x s8>) = COPY $v8193    %1:_(<vscale x 4 x s64>) = G_ANYEXT %0(<vscale x 4 x s8>)194    $v8m4 = COPY %1(<vscale x 4 x s64>)195    PseudoRET implicit $v8m4196 197...198---199name:            anyext_nxv8i16_nxv8i8200legalized:       true201tracksRegLiveness: true202body:             |203  bb.0.entry:204    liveins: $v8205 206    ; CHECK-LABEL: name: anyext_nxv8i16_nxv8i8207    ; CHECK: liveins: $v8208    ; CHECK-NEXT: {{  $}}209    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 8 x s8>) = COPY $v8210    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 8 x s16>) = G_ANYEXT [[COPY]](<vscale x 8 x s8>)211    ; CHECK-NEXT: $v8m2 = COPY [[ANYEXT]](<vscale x 8 x s16>)212    ; CHECK-NEXT: PseudoRET implicit $v8m2213    %0:_(<vscale x 8 x s8>) = COPY $v8214    %1:_(<vscale x 8 x s16>) = G_ANYEXT %0(<vscale x 8 x s8>)215    $v8m2 = COPY %1(<vscale x 8 x s16>)216    PseudoRET implicit $v8m2217 218...219---220name:            anyext_nxv8i32_nxv8i8221legalized:       true222tracksRegLiveness: true223body:             |224  bb.0.entry:225    liveins: $v8226 227    ; CHECK-LABEL: name: anyext_nxv8i32_nxv8i8228    ; CHECK: liveins: $v8229    ; CHECK-NEXT: {{  $}}230    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 8 x s8>) = COPY $v8231    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 8 x s32>) = G_ANYEXT [[COPY]](<vscale x 8 x s8>)232    ; CHECK-NEXT: $v8m4 = COPY [[ANYEXT]](<vscale x 8 x s32>)233    ; CHECK-NEXT: PseudoRET implicit $v8m4234    %0:_(<vscale x 8 x s8>) = COPY $v8235    %1:_(<vscale x 8 x s32>) = G_ANYEXT %0(<vscale x 8 x s8>)236    $v8m4 = COPY %1(<vscale x 8 x s32>)237    PseudoRET implicit $v8m4238 239...240---241name:            anyext_nxv8i64_nxv8i8242legalized:       true243tracksRegLiveness: true244body:             |245  bb.0.entry:246    liveins: $v8247 248    ; CHECK-LABEL: name: anyext_nxv8i64_nxv8i8249    ; CHECK: liveins: $v8250    ; CHECK-NEXT: {{  $}}251    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 8 x s8>) = COPY $v8252    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 8 x s64>) = G_ANYEXT [[COPY]](<vscale x 8 x s8>)253    ; CHECK-NEXT: $v8m8 = COPY [[ANYEXT]](<vscale x 8 x s64>)254    ; CHECK-NEXT: PseudoRET implicit $v8m8255    %0:_(<vscale x 8 x s8>) = COPY $v8256    %1:_(<vscale x 8 x s64>) = G_ANYEXT %0(<vscale x 8 x s8>)257    $v8m8 = COPY %1(<vscale x 8 x s64>)258    PseudoRET implicit $v8m8259 260...261---262name:            anyext_nxv16i16_nxv16i8263legalized:       true264tracksRegLiveness: true265body:             |266  bb.0.entry:267    liveins: $v8268 269    ; CHECK-LABEL: name: anyext_nxv16i16_nxv16i8270    ; CHECK: liveins: $v8271    ; CHECK-NEXT: {{  $}}272    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 16 x s8>) = COPY $v8m2273    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 16 x s16>) = G_ANYEXT [[COPY]](<vscale x 16 x s8>)274    ; CHECK-NEXT: $v8m4 = COPY [[ANYEXT]](<vscale x 16 x s16>)275    ; CHECK-NEXT: PseudoRET implicit $v8m4276    %0:_(<vscale x 16 x s8>) = COPY $v8m2277    %1:_(<vscale x 16 x s16>) = G_ANYEXT %0(<vscale x 16 x s8>)278    $v8m4 = COPY %1(<vscale x 16 x s16>)279    PseudoRET implicit $v8m4280 281...282---283name:            anyext_nxv16i32_nxv16i8284legalized:       true285tracksRegLiveness: true286body:             |287  bb.0.entry:288    liveins: $v8289 290    ; CHECK-LABEL: name: anyext_nxv16i32_nxv16i8291    ; CHECK: liveins: $v8292    ; CHECK-NEXT: {{  $}}293    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 16 x s8>) = COPY $v8m4294    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 16 x s32>) = G_ANYEXT [[COPY]](<vscale x 16 x s8>)295    ; CHECK-NEXT: $v8m8 = COPY [[ANYEXT]](<vscale x 16 x s32>)296    ; CHECK-NEXT: PseudoRET implicit $v8m8297    %0:_(<vscale x 16 x s8>) = COPY $v8m4298    %1:_(<vscale x 16 x s32>) = G_ANYEXT %0(<vscale x 16 x s8>)299    $v8m8 = COPY %1(<vscale x 16 x s32>)300    PseudoRET implicit $v8m8301 302...303---304name:            anyext_nxv32i16_nxv32i8305legalized:       true306tracksRegLiveness: true307body:             |308  bb.0.entry:309    liveins: $v8310 311    ; CHECK-LABEL: name: anyext_nxv32i16_nxv32i8312    ; CHECK: liveins: $v8313    ; CHECK-NEXT: {{  $}}314    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 32 x s8>) = COPY $v8m4315    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 32 x s16>) = G_ANYEXT [[COPY]](<vscale x 32 x s8>)316    ; CHECK-NEXT: $v8m8 = COPY [[ANYEXT]](<vscale x 32 x s16>)317    ; CHECK-NEXT: PseudoRET implicit $v8m8318    %0:_(<vscale x 32 x s8>) = COPY $v8m4319    %1:_(<vscale x 32 x s16>) = G_ANYEXT %0(<vscale x 32 x s8>)320    $v8m8 = COPY %1(<vscale x 32 x s16>)321    PseudoRET implicit $v8m8322 323...324---325name:            anyext_nxv1i32_nxv1i16326legalized:       true327tracksRegLiveness: true328body:             |329  bb.0.entry:330    liveins: $v8331 332    ; CHECK-LABEL: name: anyext_nxv1i32_nxv1i16333    ; CHECK: liveins: $v8334    ; CHECK-NEXT: {{  $}}335    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 1 x s16>) = COPY $v8336    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 1 x s32>) = G_ANYEXT [[COPY]](<vscale x 1 x s16>)337    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 1 x s32>)338    ; CHECK-NEXT: PseudoRET implicit $v8339    %0:_(<vscale x 1 x s16>) = COPY $v8340    %1:_(<vscale x 1 x s32>) = G_ANYEXT %0(<vscale x 1 x s16>)341    $v8 = COPY %1(<vscale x 1 x s32>)342    PseudoRET implicit $v8343 344...345---346name:            anyext_nxv1i64_nxv1i16347legalized:       true348tracksRegLiveness: true349body:             |350  bb.0.entry:351    liveins: $v8352 353    ; CHECK-LABEL: name: anyext_nxv1i64_nxv1i16354    ; CHECK: liveins: $v8355    ; CHECK-NEXT: {{  $}}356    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 1 x s16>) = COPY $v8357    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 1 x s64>) = G_ANYEXT [[COPY]](<vscale x 1 x s16>)358    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 1 x s64>)359    ; CHECK-NEXT: PseudoRET implicit $v8360    %0:_(<vscale x 1 x s16>) = COPY $v8361    %1:_(<vscale x 1 x s64>) = G_ANYEXT %0(<vscale x 1 x s16>)362    $v8 = COPY %1(<vscale x 1 x s64>)363    PseudoRET implicit $v8364 365...366---367name:            anyext_nxv2i32_nxv2i16368legalized:       true369tracksRegLiveness: true370body:             |371  bb.0.entry:372    liveins: $v8373 374    ; CHECK-LABEL: name: anyext_nxv2i32_nxv2i16375    ; CHECK: liveins: $v8376    ; CHECK-NEXT: {{  $}}377    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 2 x s16>) = COPY $v8378    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 2 x s32>) = G_ANYEXT [[COPY]](<vscale x 2 x s16>)379    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 2 x s32>)380    ; CHECK-NEXT: PseudoRET implicit $v8381    %0:_(<vscale x 2 x s16>) = COPY $v8382    %1:_(<vscale x 2 x s32>) = G_ANYEXT %0(<vscale x 2 x s16>)383    $v8 = COPY %1(<vscale x 2 x s32>)384    PseudoRET implicit $v8385 386...387---388name:            anyext_nxv2i64_nxv2i16389legalized:       true390tracksRegLiveness: true391body:             |392  bb.0.entry:393    liveins: $v8394 395    ; CHECK-LABEL: name: anyext_nxv2i64_nxv2i16396    ; CHECK: liveins: $v8397    ; CHECK-NEXT: {{  $}}398    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 2 x s16>) = COPY $v8399    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 2 x s64>) = G_ANYEXT [[COPY]](<vscale x 2 x s16>)400    ; CHECK-NEXT: $v8m2 = COPY [[ANYEXT]](<vscale x 2 x s64>)401    ; CHECK-NEXT: PseudoRET implicit $v8m2402    %0:_(<vscale x 2 x s16>) = COPY $v8403    %1:_(<vscale x 2 x s64>) = G_ANYEXT %0(<vscale x 2 x s16>)404    $v8m2 = COPY %1(<vscale x 2 x s64>)405    PseudoRET implicit $v8m2406 407...408---409name:            anyext_nxv4i32_nxv4i16410legalized:       true411tracksRegLiveness: true412body:             |413  bb.0.entry:414    liveins: $v8415 416    ; CHECK-LABEL: name: anyext_nxv4i32_nxv4i16417    ; CHECK: liveins: $v8418    ; CHECK-NEXT: {{  $}}419    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 4 x s16>) = COPY $v8420    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 4 x s32>) = G_ANYEXT [[COPY]](<vscale x 4 x s16>)421    ; CHECK-NEXT: $v8m2 = COPY [[ANYEXT]](<vscale x 4 x s32>)422    ; CHECK-NEXT: PseudoRET implicit $v8m2423    %0:_(<vscale x 4 x s16>) = COPY $v8424    %1:_(<vscale x 4 x s32>) = G_ANYEXT %0(<vscale x 4 x s16>)425    $v8m2 = COPY %1(<vscale x 4 x s32>)426    PseudoRET implicit $v8m2427 428...429---430name:            anyext_nxv4i64_nxv4i16431legalized:       true432tracksRegLiveness: true433body:             |434  bb.0.entry:435    liveins: $v8436 437    ; CHECK-LABEL: name: anyext_nxv4i64_nxv4i16438    ; CHECK: liveins: $v8439    ; CHECK-NEXT: {{  $}}440    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 4 x s16>) = COPY $v8441    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 4 x s64>) = G_ANYEXT [[COPY]](<vscale x 4 x s16>)442    ; CHECK-NEXT: $v8m4 = COPY [[ANYEXT]](<vscale x 4 x s64>)443    ; CHECK-NEXT: PseudoRET implicit $v8m4444    %0:_(<vscale x 4 x s16>) = COPY $v8445    %1:_(<vscale x 4 x s64>) = G_ANYEXT %0(<vscale x 4 x s16>)446    $v8m4 = COPY %1(<vscale x 4 x s64>)447    PseudoRET implicit $v8m4448 449...450---451name:            anyext_nxv8i32_nxv8i16452legalized:       true453tracksRegLiveness: true454body:             |455  bb.0.entry:456    liveins: $v8457 458    ; CHECK-LABEL: name: anyext_nxv8i32_nxv8i16459    ; CHECK: liveins: $v8460    ; CHECK-NEXT: {{  $}}461    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 8 x s16>) = COPY $v8m2462    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 8 x s32>) = G_ANYEXT [[COPY]](<vscale x 8 x s16>)463    ; CHECK-NEXT: $v8m4 = COPY [[ANYEXT]](<vscale x 8 x s32>)464    ; CHECK-NEXT: PseudoRET implicit $v8m4465    %0:_(<vscale x 8 x s16>) = COPY $v8m2466    %1:_(<vscale x 8 x s32>) = G_ANYEXT %0(<vscale x 8 x s16>)467    $v8m4 = COPY %1(<vscale x 8 x s32>)468    PseudoRET implicit $v8m4469 470...471---472name:            anyext_nxv8i64_nxv8i16473legalized:       true474tracksRegLiveness: true475body:             |476  bb.0.entry:477    liveins: $v8478 479    ; CHECK-LABEL: name: anyext_nxv8i64_nxv8i16480    ; CHECK: liveins: $v8481    ; CHECK-NEXT: {{  $}}482    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 8 x s16>) = COPY $v8m2483    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 8 x s64>) = G_ANYEXT [[COPY]](<vscale x 8 x s16>)484    ; CHECK-NEXT: $v8m8 = COPY [[ANYEXT]](<vscale x 8 x s64>)485    ; CHECK-NEXT: PseudoRET implicit $v8m8486    %0:_(<vscale x 8 x s16>) = COPY $v8m2487    %1:_(<vscale x 8 x s64>) = G_ANYEXT %0(<vscale x 8 x s16>)488    $v8m8 = COPY %1(<vscale x 8 x s64>)489    PseudoRET implicit $v8m8490 491...492---493name:            anyext_nxv16i32_nxv16i16494legalized:       true495tracksRegLiveness: true496body:             |497  bb.0.entry:498    liveins: $v8499 500    ; CHECK-LABEL: name: anyext_nxv16i32_nxv16i16501    ; CHECK: liveins: $v8502    ; CHECK-NEXT: {{  $}}503    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 16 x s16>) = COPY $v8m4504    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 16 x s32>) = G_ANYEXT [[COPY]](<vscale x 16 x s16>)505    ; CHECK-NEXT: $v8m8 = COPY [[ANYEXT]](<vscale x 16 x s32>)506    ; CHECK-NEXT: PseudoRET implicit $v8m8507    %0:_(<vscale x 16 x s16>) = COPY $v8m4508    %1:_(<vscale x 16 x s32>) = G_ANYEXT %0(<vscale x 16 x s16>)509    $v8m8 = COPY %1(<vscale x 16 x s32>)510    PseudoRET implicit $v8m8511 512...513---514name:            anyext_nxv1i64_nxv1i32515legalized:       true516tracksRegLiveness: true517body:             |518  bb.0.entry:519    liveins: $v8520 521    ; CHECK-LABEL: name: anyext_nxv1i64_nxv1i32522    ; CHECK: liveins: $v8523    ; CHECK-NEXT: {{  $}}524    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 1 x s32>) = COPY $v8525    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 1 x s64>) = G_ANYEXT [[COPY]](<vscale x 1 x s32>)526    ; CHECK-NEXT: $v8 = COPY [[ANYEXT]](<vscale x 1 x s64>)527    ; CHECK-NEXT: PseudoRET implicit $v8528    %0:_(<vscale x 1 x s32>) = COPY $v8529    %1:_(<vscale x 1 x s64>) = G_ANYEXT %0(<vscale x 1 x s32>)530    $v8 = COPY %1(<vscale x 1 x s64>)531    PseudoRET implicit $v8532 533...534---535name:            anyext_nxv2i64_nxv2i32536legalized:       true537tracksRegLiveness: true538body:             |539  bb.0.entry:540    liveins: $v8541 542    ; CHECK-LABEL: name: anyext_nxv2i64_nxv2i32543    ; CHECK: liveins: $v8544    ; CHECK-NEXT: {{  $}}545    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 2 x s32>) = COPY $v8546    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 2 x s64>) = G_ANYEXT [[COPY]](<vscale x 2 x s32>)547    ; CHECK-NEXT: $v8m2 = COPY [[ANYEXT]](<vscale x 2 x s64>)548    ; CHECK-NEXT: PseudoRET implicit $v8m2549    %0:_(<vscale x 2 x s32>) = COPY $v8550    %1:_(<vscale x 2 x s64>) = G_ANYEXT %0(<vscale x 2 x s32>)551    $v8m2 = COPY %1(<vscale x 2 x s64>)552    PseudoRET implicit $v8m2553 554...555---556name:            anyext_nxv4i64_nxv4i32557legalized:       true558tracksRegLiveness: true559body:             |560  bb.0.entry:561    liveins: $v8562 563    ; CHECK-LABEL: name: anyext_nxv4i64_nxv4i32564    ; CHECK: liveins: $v8565    ; CHECK-NEXT: {{  $}}566    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 4 x s32>) = COPY $v8m2567    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 4 x s64>) = G_ANYEXT [[COPY]](<vscale x 4 x s32>)568    ; CHECK-NEXT: $v8m4 = COPY [[ANYEXT]](<vscale x 4 x s64>)569    ; CHECK-NEXT: PseudoRET implicit $v8m4570    %0:_(<vscale x 4 x s32>) = COPY $v8m2571    %1:_(<vscale x 4 x s64>) = G_ANYEXT %0(<vscale x 4 x s32>)572    $v8m4 = COPY %1(<vscale x 4 x s64>)573    PseudoRET implicit $v8m4574 575...576---577name:            anyext_nxv8i64_nxv8i32578legalized:       true579tracksRegLiveness: true580body:             |581  bb.0.entry:582    liveins: $v8583 584    ; CHECK-LABEL: name: anyext_nxv8i64_nxv8i32585    ; CHECK: liveins: $v8586    ; CHECK-NEXT: {{  $}}587    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vrb(<vscale x 8 x s32>) = COPY $v8m4588    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:vrb(<vscale x 8 x s64>) = G_ANYEXT [[COPY]](<vscale x 8 x s32>)589    ; CHECK-NEXT: $v8m8 = COPY [[ANYEXT]](<vscale x 8 x s64>)590    ; CHECK-NEXT: PseudoRET implicit $v8m8591    %0:_(<vscale x 8 x s32>) = COPY $v8m4592    %1:_(<vscale x 8 x s64>) = G_ANYEXT %0(<vscale x 8 x s32>)593    $v8m8 = COPY %1(<vscale x 8 x s64>)594    PseudoRET implicit $v8m8595 596...597