401 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=riscv32 -mattr=+v -run-pass=legalizer %s -o - | FileCheck %s3# RUN: llc -mtriple=riscv64 -mattr=+v -run-pass=legalizer %s -o - | FileCheck %s4 5---6name: select_nxv1i87legalized: false8tracksRegLiveness: true9body: |10 bb.0.entry:11 ; CHECK-LABEL: name: select_nxv1i812 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF13 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 1 x s8>) = G_IMPLICIT_DEF14 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 1 x s8>) = G_SELECT [[DEF]](<vscale x 1 x s1>), [[DEF1]], [[DEF1]]15 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 1 x s8>)16 ; CHECK-NEXT: PseudoRET implicit $v817 %1:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF18 %2:_(<vscale x 1 x s8>) = G_IMPLICIT_DEF19 %0:_(<vscale x 1 x s8>) = G_SELECT %1(<vscale x 1 x s1>), %2(<vscale x 1 x s8>), %2(<vscale x 1 x s8>)20 $v8 = COPY %0(<vscale x 1 x s8>)21 PseudoRET implicit $v822...23---24name: select_nxv2i825legalized: false26tracksRegLiveness: true27body: |28 bb.0.entry:29 ; CHECK-LABEL: name: select_nxv2i830 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF31 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 2 x s8>) = G_IMPLICIT_DEF32 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 2 x s8>) = G_SELECT [[DEF]](<vscale x 2 x s1>), [[DEF1]], [[DEF1]]33 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 2 x s8>)34 ; CHECK-NEXT: PseudoRET implicit $v835 %1:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF36 %2:_(<vscale x 2 x s8>) = G_IMPLICIT_DEF37 %0:_(<vscale x 2 x s8>) = G_SELECT %1(<vscale x 2 x s1>), %2(<vscale x 2 x s8>), %2(<vscale x 2 x s8>)38 $v8 = COPY %0(<vscale x 2 x s8>)39 PseudoRET implicit $v840...41---42name: select_nxv4i843legalized: false44tracksRegLiveness: true45body: |46 bb.0.entry:47 ; CHECK-LABEL: name: select_nxv4i848 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF49 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 4 x s8>) = G_IMPLICIT_DEF50 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 4 x s8>) = G_SELECT [[DEF]](<vscale x 4 x s1>), [[DEF1]], [[DEF1]]51 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 4 x s8>)52 ; CHECK-NEXT: PseudoRET implicit $v853 %1:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF54 %2:_(<vscale x 4 x s8>) = G_IMPLICIT_DEF55 %0:_(<vscale x 4 x s8>) = G_SELECT %1(<vscale x 4 x s1>), %2(<vscale x 4 x s8>), %2(<vscale x 4 x s8>)56 $v8 = COPY %0(<vscale x 4 x s8>)57 PseudoRET implicit $v858...59---60name: select_nxv8i861legalized: false62tracksRegLiveness: true63body: |64 bb.0.entry:65 ; CHECK-LABEL: name: select_nxv8i866 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF67 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 8 x s8>) = G_IMPLICIT_DEF68 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 8 x s8>) = G_SELECT [[DEF]](<vscale x 8 x s1>), [[DEF1]], [[DEF1]]69 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 8 x s8>)70 ; CHECK-NEXT: PseudoRET implicit $v871 %1:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF72 %2:_(<vscale x 8 x s8>) = G_IMPLICIT_DEF73 %0:_(<vscale x 8 x s8>) = G_SELECT %1(<vscale x 8 x s1>), %2(<vscale x 8 x s8>), %2(<vscale x 8 x s8>)74 $v8 = COPY %0(<vscale x 8 x s8>)75 PseudoRET implicit $v876...77---78name: select_nxv16i879legalized: false80tracksRegLiveness: true81body: |82 bb.0.entry:83 ; CHECK-LABEL: name: select_nxv16i884 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 16 x s1>) = G_IMPLICIT_DEF85 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 16 x s8>) = G_IMPLICIT_DEF86 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 16 x s8>) = G_SELECT [[DEF]](<vscale x 16 x s1>), [[DEF1]], [[DEF1]]87 ; CHECK-NEXT: $v8m2 = COPY [[SELECT]](<vscale x 16 x s8>)88 ; CHECK-NEXT: PseudoRET implicit $v8m289 %1:_(<vscale x 16 x s1>) = G_IMPLICIT_DEF90 %2:_(<vscale x 16 x s8>) = G_IMPLICIT_DEF91 %0:_(<vscale x 16 x s8>) = G_SELECT %1(<vscale x 16 x s1>), %2(<vscale x 16 x s8>), %2(<vscale x 16 x s8>)92 $v8m2 = COPY %0(<vscale x 16 x s8>)93 PseudoRET implicit $v8m294...95---96name: select_nxv32i897legalized: false98tracksRegLiveness: true99body: |100 bb.0.entry:101 ; CHECK-LABEL: name: select_nxv32i8102 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 32 x s1>) = G_IMPLICIT_DEF103 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 32 x s8>) = G_IMPLICIT_DEF104 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 32 x s8>) = G_SELECT [[DEF]](<vscale x 32 x s1>), [[DEF1]], [[DEF1]]105 ; CHECK-NEXT: $v8m4 = COPY [[SELECT]](<vscale x 32 x s8>)106 ; CHECK-NEXT: PseudoRET implicit $v8m4107 %1:_(<vscale x 32 x s1>) = G_IMPLICIT_DEF108 %2:_(<vscale x 32 x s8>) = G_IMPLICIT_DEF109 %0:_(<vscale x 32 x s8>) = G_SELECT %1(<vscale x 32 x s1>), %2(<vscale x 32 x s8>), %2(<vscale x 32 x s8>)110 $v8m4 = COPY %0(<vscale x 32 x s8>)111 PseudoRET implicit $v8m4112...113---114name: select_nxv64i8115legalized: false116tracksRegLiveness: true117body: |118 bb.0.entry:119 ; CHECK-LABEL: name: select_nxv64i8120 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 64 x s1>) = G_IMPLICIT_DEF121 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 64 x s8>) = G_IMPLICIT_DEF122 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 64 x s8>) = G_SELECT [[DEF]](<vscale x 64 x s1>), [[DEF1]], [[DEF1]]123 ; CHECK-NEXT: $v8m8 = COPY [[SELECT]](<vscale x 64 x s8>)124 ; CHECK-NEXT: PseudoRET implicit $v8m8125 %1:_(<vscale x 64 x s1>) = G_IMPLICIT_DEF126 %2:_(<vscale x 64 x s8>) = G_IMPLICIT_DEF127 %0:_(<vscale x 64 x s8>) = G_SELECT %1(<vscale x 64 x s1>), %2(<vscale x 64 x s8>), %2(<vscale x 64 x s8>)128 $v8m8 = COPY %0(<vscale x 64 x s8>)129 PseudoRET implicit $v8m8130...131---132name: select_nxv1i16133legalized: false134tracksRegLiveness: true135body: |136 bb.0.entry:137 ; CHECK-LABEL: name: select_nxv1i16138 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF139 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 1 x s16>) = G_IMPLICIT_DEF140 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 1 x s16>) = G_SELECT [[DEF]](<vscale x 1 x s1>), [[DEF1]], [[DEF1]]141 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 1 x s16>)142 ; CHECK-NEXT: PseudoRET implicit $v8143 %1:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF144 %2:_(<vscale x 1 x s16>) = G_IMPLICIT_DEF145 %0:_(<vscale x 1 x s16>) = G_SELECT %1(<vscale x 1 x s1>), %2(<vscale x 1 x s16>), %2(<vscale x 1 x s16>)146 $v8 = COPY %0(<vscale x 1 x s16>)147 PseudoRET implicit $v8148...149---150name: select_nxv2i16151legalized: false152tracksRegLiveness: true153body: |154 bb.0.entry:155 ; CHECK-LABEL: name: select_nxv2i16156 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF157 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 2 x s16>) = G_IMPLICIT_DEF158 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 2 x s16>) = G_SELECT [[DEF]](<vscale x 2 x s1>), [[DEF1]], [[DEF1]]159 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 2 x s16>)160 ; CHECK-NEXT: PseudoRET implicit $v8161 %1:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF162 %2:_(<vscale x 2 x s16>) = G_IMPLICIT_DEF163 %0:_(<vscale x 2 x s16>) = G_SELECT %1(<vscale x 2 x s1>), %2(<vscale x 2 x s16>), %2(<vscale x 2 x s16>)164 $v8 = COPY %0(<vscale x 2 x s16>)165 PseudoRET implicit $v8166...167---168name: select_nxv4i16169legalized: false170tracksRegLiveness: true171body: |172 bb.0.entry:173 ; CHECK-LABEL: name: select_nxv4i16174 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF175 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 4 x s16>) = G_IMPLICIT_DEF176 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 4 x s16>) = G_SELECT [[DEF]](<vscale x 4 x s1>), [[DEF1]], [[DEF1]]177 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 4 x s16>)178 ; CHECK-NEXT: PseudoRET implicit $v8179 %1:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF180 %2:_(<vscale x 4 x s16>) = G_IMPLICIT_DEF181 %0:_(<vscale x 4 x s16>) = G_SELECT %1(<vscale x 4 x s1>), %2(<vscale x 4 x s16>), %2(<vscale x 4 x s16>)182 $v8 = COPY %0(<vscale x 4 x s16>)183 PseudoRET implicit $v8184...185---186name: select_nxv8i16187legalized: false188tracksRegLiveness: true189body: |190 bb.0.entry:191 ; CHECK-LABEL: name: select_nxv8i16192 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF193 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 8 x s16>) = G_IMPLICIT_DEF194 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 8 x s16>) = G_SELECT [[DEF]](<vscale x 8 x s1>), [[DEF1]], [[DEF1]]195 ; CHECK-NEXT: $v8m2 = COPY [[SELECT]](<vscale x 8 x s16>)196 ; CHECK-NEXT: PseudoRET implicit $v8m2197 %1:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF198 %2:_(<vscale x 8 x s16>) = G_IMPLICIT_DEF199 %0:_(<vscale x 8 x s16>) = G_SELECT %1(<vscale x 8 x s1>), %2(<vscale x 8 x s16>), %2(<vscale x 8 x s16>)200 $v8m2 = COPY %0(<vscale x 8 x s16>)201 PseudoRET implicit $v8m2202...203---204name: select_nxv16i16205legalized: false206tracksRegLiveness: true207body: |208 bb.0.entry:209 ; CHECK-LABEL: name: select_nxv16i16210 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 16 x s1>) = G_IMPLICIT_DEF211 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 16 x s16>) = G_IMPLICIT_DEF212 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 16 x s16>) = G_SELECT [[DEF]](<vscale x 16 x s1>), [[DEF1]], [[DEF1]]213 ; CHECK-NEXT: $v8m4 = COPY [[SELECT]](<vscale x 16 x s16>)214 ; CHECK-NEXT: PseudoRET implicit $v8m4215 %1:_(<vscale x 16 x s1>) = G_IMPLICIT_DEF216 %2:_(<vscale x 16 x s16>) = G_IMPLICIT_DEF217 %0:_(<vscale x 16 x s16>) = G_SELECT %1(<vscale x 16 x s1>), %2(<vscale x 16 x s16>), %2(<vscale x 16 x s16>)218 $v8m4 = COPY %0(<vscale x 16 x s16>)219 PseudoRET implicit $v8m4220...221---222name: select_nxv32i16223legalized: false224tracksRegLiveness: true225body: |226 bb.0.entry:227 ; CHECK-LABEL: name: select_nxv32i16228 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 32 x s1>) = G_IMPLICIT_DEF229 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 32 x s16>) = G_IMPLICIT_DEF230 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 32 x s16>) = G_SELECT [[DEF]](<vscale x 32 x s1>), [[DEF1]], [[DEF1]]231 ; CHECK-NEXT: $v8m8 = COPY [[SELECT]](<vscale x 32 x s16>)232 ; CHECK-NEXT: PseudoRET implicit $v8m8233 %1:_(<vscale x 32 x s1>) = G_IMPLICIT_DEF234 %2:_(<vscale x 32 x s16>) = G_IMPLICIT_DEF235 %0:_(<vscale x 32 x s16>) = G_SELECT %1(<vscale x 32 x s1>), %2(<vscale x 32 x s16>), %2(<vscale x 32 x s16>)236 $v8m8 = COPY %0(<vscale x 32 x s16>)237 PseudoRET implicit $v8m8238...239---240name: select_nxv1i32241legalized: false242tracksRegLiveness: true243body: |244 bb.0.entry:245 ; CHECK-LABEL: name: select_nxv1i32246 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF247 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 1 x s32>) = G_IMPLICIT_DEF248 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 1 x s32>) = G_SELECT [[DEF]](<vscale x 1 x s1>), [[DEF1]], [[DEF1]]249 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 1 x s32>)250 ; CHECK-NEXT: PseudoRET implicit $v8251 %1:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF252 %2:_(<vscale x 1 x s32>) = G_IMPLICIT_DEF253 %0:_(<vscale x 1 x s32>) = G_SELECT %1(<vscale x 1 x s1>), %2(<vscale x 1 x s32>), %2(<vscale x 1 x s32>)254 $v8 = COPY %0(<vscale x 1 x s32>)255 PseudoRET implicit $v8256...257---258name: select_nxv2i32259legalized: false260tracksRegLiveness: true261body: |262 bb.0.entry:263 ; CHECK-LABEL: name: select_nxv2i32264 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF265 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 2 x s32>) = G_IMPLICIT_DEF266 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 2 x s32>) = G_SELECT [[DEF]](<vscale x 2 x s1>), [[DEF1]], [[DEF1]]267 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 2 x s32>)268 ; CHECK-NEXT: PseudoRET implicit $v8269 %1:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF270 %2:_(<vscale x 2 x s32>) = G_IMPLICIT_DEF271 %0:_(<vscale x 2 x s32>) = G_SELECT %1(<vscale x 2 x s1>), %2(<vscale x 2 x s32>), %2(<vscale x 2 x s32>)272 $v8 = COPY %0(<vscale x 2 x s32>)273 PseudoRET implicit $v8274...275---276name: select_nxv4i32277legalized: false278tracksRegLiveness: true279body: |280 bb.0.entry:281 ; CHECK-LABEL: name: select_nxv4i32282 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF283 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 4 x s32>) = G_IMPLICIT_DEF284 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 4 x s32>) = G_SELECT [[DEF]](<vscale x 4 x s1>), [[DEF1]], [[DEF1]]285 ; CHECK-NEXT: $v8m2 = COPY [[SELECT]](<vscale x 4 x s32>)286 ; CHECK-NEXT: PseudoRET implicit $v8m2287 %1:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF288 %2:_(<vscale x 4 x s32>) = G_IMPLICIT_DEF289 %0:_(<vscale x 4 x s32>) = G_SELECT %1(<vscale x 4 x s1>), %2(<vscale x 4 x s32>), %2(<vscale x 4 x s32>)290 $v8m2 = COPY %0(<vscale x 4 x s32>)291 PseudoRET implicit $v8m2292...293---294name: select_nxv8i32295legalized: false296tracksRegLiveness: true297body: |298 bb.0.entry:299 ; CHECK-LABEL: name: select_nxv8i32300 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF301 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 8 x s32>) = G_IMPLICIT_DEF302 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 8 x s32>) = G_SELECT [[DEF]](<vscale x 8 x s1>), [[DEF1]], [[DEF1]]303 ; CHECK-NEXT: $v8m4 = COPY [[SELECT]](<vscale x 8 x s32>)304 ; CHECK-NEXT: PseudoRET implicit $v8m4305 %1:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF306 %2:_(<vscale x 8 x s32>) = G_IMPLICIT_DEF307 %0:_(<vscale x 8 x s32>) = G_SELECT %1(<vscale x 8 x s1>), %2(<vscale x 8 x s32>), %2(<vscale x 8 x s32>)308 $v8m4 = COPY %0(<vscale x 8 x s32>)309 PseudoRET implicit $v8m4310...311---312name: select_nxv16i32313legalized: false314tracksRegLiveness: true315body: |316 bb.0.entry:317 ; CHECK-LABEL: name: select_nxv16i32318 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 16 x s1>) = G_IMPLICIT_DEF319 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 16 x s32>) = G_IMPLICIT_DEF320 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 16 x s32>) = G_SELECT [[DEF]](<vscale x 16 x s1>), [[DEF1]], [[DEF1]]321 ; CHECK-NEXT: $v8m8 = COPY [[SELECT]](<vscale x 16 x s32>)322 ; CHECK-NEXT: PseudoRET implicit $v8m8323 %1:_(<vscale x 16 x s1>) = G_IMPLICIT_DEF324 %2:_(<vscale x 16 x s32>) = G_IMPLICIT_DEF325 %0:_(<vscale x 16 x s32>) = G_SELECT %1(<vscale x 16 x s1>), %2(<vscale x 16 x s32>), %2(<vscale x 16 x s32>)326 $v8m8 = COPY %0(<vscale x 16 x s32>)327 PseudoRET implicit $v8m8328...329---330name: select_nxv1i64331legalized: false332tracksRegLiveness: true333body: |334 bb.0.entry:335 ; CHECK-LABEL: name: select_nxv1i64336 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF337 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 1 x s64>) = G_IMPLICIT_DEF338 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 1 x s64>) = G_SELECT [[DEF]](<vscale x 1 x s1>), [[DEF1]], [[DEF1]]339 ; CHECK-NEXT: $v8 = COPY [[SELECT]](<vscale x 1 x s64>)340 ; CHECK-NEXT: PseudoRET implicit $v8341 %1:_(<vscale x 1 x s1>) = G_IMPLICIT_DEF342 %2:_(<vscale x 1 x s64>) = G_IMPLICIT_DEF343 %0:_(<vscale x 1 x s64>) = G_SELECT %1(<vscale x 1 x s1>), %2(<vscale x 1 x s64>), %2(<vscale x 1 x s64>)344 $v8 = COPY %0(<vscale x 1 x s64>)345 PseudoRET implicit $v8346...347---348name: select_nxv2i64349legalized: false350tracksRegLiveness: true351body: |352 bb.0.entry:353 ; CHECK-LABEL: name: select_nxv2i64354 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF355 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 2 x s64>) = G_IMPLICIT_DEF356 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 2 x s64>) = G_SELECT [[DEF]](<vscale x 2 x s1>), [[DEF1]], [[DEF1]]357 ; CHECK-NEXT: $v8m2 = COPY [[SELECT]](<vscale x 2 x s64>)358 ; CHECK-NEXT: PseudoRET implicit $v8m2359 %1:_(<vscale x 2 x s1>) = G_IMPLICIT_DEF360 %2:_(<vscale x 2 x s64>) = G_IMPLICIT_DEF361 %0:_(<vscale x 2 x s64>) = G_SELECT %1(<vscale x 2 x s1>), %2(<vscale x 2 x s64>), %2(<vscale x 2 x s64>)362 $v8m2 = COPY %0(<vscale x 2 x s64>)363 PseudoRET implicit $v8m2364...365---366name: select_nxv4i64367legalized: false368tracksRegLiveness: true369body: |370 bb.0.entry:371 ; CHECK-LABEL: name: select_nxv4i64372 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF373 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 4 x s64>) = G_IMPLICIT_DEF374 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 4 x s64>) = G_SELECT [[DEF]](<vscale x 4 x s1>), [[DEF1]], [[DEF1]]375 ; CHECK-NEXT: $v8m4 = COPY [[SELECT]](<vscale x 4 x s64>)376 ; CHECK-NEXT: PseudoRET implicit $v8m4377 %1:_(<vscale x 4 x s1>) = G_IMPLICIT_DEF378 %2:_(<vscale x 4 x s64>) = G_IMPLICIT_DEF379 %0:_(<vscale x 4 x s64>) = G_SELECT %1(<vscale x 4 x s1>), %2(<vscale x 4 x s64>), %2(<vscale x 4 x s64>)380 $v8m4 = COPY %0(<vscale x 4 x s64>)381 PseudoRET implicit $v8m4382...383---384name: select_nxv8i64385legalized: false386tracksRegLiveness: true387body: |388 bb.0.entry:389 ; CHECK-LABEL: name: select_nxv8i64390 ; CHECK: [[DEF:%[0-9]+]]:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF391 ; CHECK-NEXT: [[DEF1:%[0-9]+]]:_(<vscale x 8 x s64>) = G_IMPLICIT_DEF392 ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(<vscale x 8 x s64>) = G_SELECT [[DEF]](<vscale x 8 x s1>), [[DEF1]], [[DEF1]]393 ; CHECK-NEXT: $v8m8 = COPY [[SELECT]](<vscale x 8 x s64>)394 ; CHECK-NEXT: PseudoRET implicit $v8m8395 %1:_(<vscale x 8 x s1>) = G_IMPLICIT_DEF396 %2:_(<vscale x 8 x s64>) = G_IMPLICIT_DEF397 %0:_(<vscale x 8 x s64>) = G_SELECT %1(<vscale x 8 x s1>), %2(<vscale x 8 x s64>), %2(<vscale x 8 x s64>)398 $v8m8 = COPY %0(<vscale x 8 x s64>)399 PseudoRET implicit $v8m8400...401