624 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=fiji -run-pass=amdgpu-postlegalizer-combiner -verify-machineinstrs %s -o - | FileCheck %s3 4---5name: cvt_f32_ubyte0_lshr_06tracksRegLiveness: true7body: |8 bb.0:9 liveins: $vgpr010 11 ; CHECK-LABEL: name: cvt_f32_ubyte0_lshr_012 ; CHECK: liveins: $vgpr013 ; CHECK-NEXT: {{ $}}14 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr015 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %arg16 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)17 %arg:_(s32) = COPY $vgpr018 %shiftamt:_(s32) = G_CONSTANT i32 019 %shift:_(s32) = G_LSHR %arg, %shiftamt20 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift21 $vgpr0 = COPY %result22...23 24---25name: cvt_f32_ubyte0_lshr_826tracksRegLiveness: true27body: |28 bb.0:29 liveins: $vgpr030 31 ; CHECK-LABEL: name: cvt_f32_ubyte0_lshr_832 ; CHECK: liveins: $vgpr033 ; CHECK-NEXT: {{ $}}34 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr035 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %arg36 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)37 %arg:_(s32) = COPY $vgpr038 %shiftamt:_(s32) = G_CONSTANT i32 839 %shift:_(s32) = G_LSHR %arg, %shiftamt40 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift41 $vgpr0 = COPY %result42...43 44---45name: cvt_f32_ubyte0_lshr_1646tracksRegLiveness: true47body: |48 bb.0:49 liveins: $vgpr050 51 ; CHECK-LABEL: name: cvt_f32_ubyte0_lshr_1652 ; CHECK: liveins: $vgpr053 ; CHECK-NEXT: {{ $}}54 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr055 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %arg56 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)57 %arg:_(s32) = COPY $vgpr058 %shiftamt:_(s32) = G_CONSTANT i32 1659 %shift:_(s32) = G_LSHR %arg, %shiftamt60 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift61 $vgpr0 = COPY %result62...63 64---65name: cvt_f32_ubyte0_lshr_2466tracksRegLiveness: true67body: |68 bb.0:69 liveins: $vgpr070 71 ; CHECK-LABEL: name: cvt_f32_ubyte0_lshr_2472 ; CHECK: liveins: $vgpr073 ; CHECK-NEXT: {{ $}}74 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr075 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %arg76 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)77 %arg:_(s32) = COPY $vgpr078 %shiftamt:_(s32) = G_CONSTANT i32 2479 %shift:_(s32) = G_LSHR %arg, %shiftamt80 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift81 $vgpr0 = COPY %result82...83 84---85name: cvt_f32_ubyte1_lshr_886tracksRegLiveness: true87body: |88 bb.0:89 liveins: $vgpr090 91 ; CHECK-LABEL: name: cvt_f32_ubyte1_lshr_892 ; CHECK: liveins: $vgpr093 ; CHECK-NEXT: {{ $}}94 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr095 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %arg96 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)97 %arg:_(s32) = COPY $vgpr098 %shiftamt:_(s32) = G_CONSTANT i32 899 %shift:_(s32) = G_LSHR %arg, %shiftamt100 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift101 $vgpr0 = COPY %result102...103 104---105name: cvt_f32_ubyte1_lshr_16106tracksRegLiveness: true107body: |108 bb.0:109 liveins: $vgpr0110 111 ; CHECK-LABEL: name: cvt_f32_ubyte1_lshr_16112 ; CHECK: liveins: $vgpr0113 ; CHECK-NEXT: {{ $}}114 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0115 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %arg116 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)117 %arg:_(s32) = COPY $vgpr0118 %shiftamt:_(s32) = G_CONSTANT i32 16119 %shift:_(s32) = G_LSHR %arg, %shiftamt120 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift121 $vgpr0 = COPY %result122...123 124---125name: cvt_f32_ubyte1_lshr_24126tracksRegLiveness: true127body: |128 bb.0:129 liveins: $vgpr0130 131 ; CHECK-LABEL: name: cvt_f32_ubyte1_lshr_24132 ; CHECK: liveins: $vgpr0133 ; CHECK-NEXT: {{ $}}134 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0135 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 24136 ; CHECK-NEXT: %shift:_(s32) = G_LSHR %arg, %shiftamt(s32)137 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift138 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)139 %arg:_(s32) = COPY $vgpr0140 %shiftamt:_(s32) = G_CONSTANT i32 24141 %shift:_(s32) = G_LSHR %arg, %shiftamt142 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift143 $vgpr0 = COPY %result144...145 146---147name: cvt_f32_ubyte2_lshr_8148tracksRegLiveness: true149body: |150 bb.0:151 liveins: $vgpr0152 153 ; CHECK-LABEL: name: cvt_f32_ubyte2_lshr_8154 ; CHECK: liveins: $vgpr0155 ; CHECK-NEXT: {{ $}}156 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0157 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %arg158 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)159 %arg:_(s32) = COPY $vgpr0160 %shiftamt:_(s32) = G_CONSTANT i32 8161 %shift:_(s32) = G_LSHR %arg, %shiftamt162 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift163 $vgpr0 = COPY %result164...165 166---167name: cvt_f32_ubyte2_lshr_16168tracksRegLiveness: true169body: |170 bb.0:171 liveins: $vgpr0172 173 ; CHECK-LABEL: name: cvt_f32_ubyte2_lshr_16174 ; CHECK: liveins: $vgpr0175 ; CHECK-NEXT: {{ $}}176 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0177 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 16178 ; CHECK-NEXT: %shift:_(s32) = G_LSHR %arg, %shiftamt(s32)179 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift180 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)181 %arg:_(s32) = COPY $vgpr0182 %shiftamt:_(s32) = G_CONSTANT i32 16183 %shift:_(s32) = G_LSHR %arg, %shiftamt184 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift185 $vgpr0 = COPY %result186...187 188---189name: cvt_f32_ubyte2_lshr_24190tracksRegLiveness: true191body: |192 bb.0:193 liveins: $vgpr0194 195 ; CHECK-LABEL: name: cvt_f32_ubyte2_lshr_24196 ; CHECK: liveins: $vgpr0197 ; CHECK-NEXT: {{ $}}198 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0199 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 24200 ; CHECK-NEXT: %shift:_(s32) = G_LSHR %arg, %shiftamt(s32)201 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift202 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)203 %arg:_(s32) = COPY $vgpr0204 %shiftamt:_(s32) = G_CONSTANT i32 24205 %shift:_(s32) = G_LSHR %arg, %shiftamt206 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift207 $vgpr0 = COPY %result208...209 210---211name: cvt_f32_ubyte3_lshr_8212tracksRegLiveness: true213body: |214 bb.0:215 liveins: $vgpr0216 217 ; CHECK-LABEL: name: cvt_f32_ubyte3_lshr_8218 ; CHECK: liveins: $vgpr0219 ; CHECK-NEXT: {{ $}}220 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0221 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 8222 ; CHECK-NEXT: %shift:_(s32) = G_LSHR %arg, %shiftamt(s32)223 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift224 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)225 %arg:_(s32) = COPY $vgpr0226 %shiftamt:_(s32) = G_CONSTANT i32 8227 %shift:_(s32) = G_LSHR %arg, %shiftamt228 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift229 $vgpr0 = COPY %result230...231 232---233name: cvt_f32_ubyte0_zext_lshr_8234tracksRegLiveness: true235body: |236 bb.0:237 liveins: $vgpr0238 239 ; CHECK-LABEL: name: cvt_f32_ubyte0_zext_lshr_8240 ; CHECK: liveins: $vgpr0241 ; CHECK-NEXT: {{ $}}242 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0243 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %arg244 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)245 %arg:_(s32) = COPY $vgpr0246 %trunc:_(s16) = G_TRUNC %arg247 %shiftamt:_(s32) = G_CONSTANT i32 8248 %shift:_(s16) = G_LSHR %trunc, %shiftamt249 %zext:_(s32) = G_ZEXT %shift250 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %zext251 $vgpr0 = COPY %result252...253 254---255name: cvt_f32_ubyte0_zext_lshr_16256tracksRegLiveness: true257body: |258 bb.0:259 liveins: $vgpr0260 261 ; CHECK-LABEL: name: cvt_f32_ubyte0_zext_lshr_16262 ; CHECK: liveins: $vgpr0263 ; CHECK-NEXT: {{ $}}264 ; CHECK-NEXT: %shift:_(s16) = G_IMPLICIT_DEF265 ; CHECK-NEXT: %zext:_(s32) = G_ZEXT %shift(s16)266 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %zext267 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)268 %arg:_(s32) = COPY $vgpr0269 %trunc:_(s16) = G_TRUNC %arg270 %shiftamt:_(s32) = G_CONSTANT i32 16271 %shift:_(s16) = G_LSHR %trunc, %shiftamt272 %zext:_(s32) = G_ZEXT %shift273 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %zext274 $vgpr0 = COPY %result275...276 277---278name: cvt_f32_ubyte0_zext_lshr_24279tracksRegLiveness: true280body: |281 bb.0:282 liveins: $vgpr0283 284 ; CHECK-LABEL: name: cvt_f32_ubyte0_zext_lshr_24285 ; CHECK: liveins: $vgpr0286 ; CHECK-NEXT: {{ $}}287 ; CHECK-NEXT: %shift:_(s16) = G_IMPLICIT_DEF288 ; CHECK-NEXT: %zext:_(s32) = G_ZEXT %shift(s16)289 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %zext290 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)291 %arg:_(s32) = COPY $vgpr0292 %trunc:_(s16) = G_TRUNC %arg293 %shiftamt:_(s32) = G_CONSTANT i32 24294 %shift:_(s16) = G_LSHR %trunc, %shiftamt295 %zext:_(s32) = G_ZEXT %shift296 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %zext297 $vgpr0 = COPY %result298...299 300---301name: cvt_f32_ubyte1_zext_lshr_8302tracksRegLiveness: true303body: |304 bb.0:305 liveins: $vgpr0306 307 ; CHECK-LABEL: name: cvt_f32_ubyte1_zext_lshr_8308 ; CHECK: liveins: $vgpr0309 ; CHECK-NEXT: {{ $}}310 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0311 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %arg312 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)313 %arg:_(s32) = COPY $vgpr0314 %trunc:_(s16) = G_TRUNC %arg315 %shiftamt:_(s32) = G_CONSTANT i32 8316 %shift:_(s16) = G_LSHR %trunc, %shiftamt317 %zext:_(s32) = G_ZEXT %shift318 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %zext319 $vgpr0 = COPY %result320...321 322---323name: cvt_f32_ubyte0_shl_8324tracksRegLiveness: true325body: |326 bb.0:327 liveins: $vgpr0328 329 ; CHECK-LABEL: name: cvt_f32_ubyte0_shl_8330 ; CHECK: liveins: $vgpr0331 ; CHECK-NEXT: {{ $}}332 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0333 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 8334 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)335 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift336 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)337 %arg:_(s32) = COPY $vgpr0338 %shiftamt:_(s32) = G_CONSTANT i32 8339 %shift:_(s32) = G_SHL %arg, %shiftamt340 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift341 $vgpr0 = COPY %result342...343 344---345name: cvt_f32_ubyte1_shl_8346tracksRegLiveness: true347body: |348 bb.0:349 liveins: $vgpr0350 351 ; CHECK-LABEL: name: cvt_f32_ubyte1_shl_8352 ; CHECK: liveins: $vgpr0353 ; CHECK-NEXT: {{ $}}354 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0355 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 8356 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)357 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift358 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)359 %arg:_(s32) = COPY $vgpr0360 %shiftamt:_(s32) = G_CONSTANT i32 8361 %shift:_(s32) = G_SHL %arg, %shiftamt362 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift363 $vgpr0 = COPY %result364...365 366---367name: cvt_f32_ubyte2_shl_8368tracksRegLiveness: true369body: |370 bb.0:371 liveins: $vgpr0372 373 ; CHECK-LABEL: name: cvt_f32_ubyte2_shl_8374 ; CHECK: liveins: $vgpr0375 ; CHECK-NEXT: {{ $}}376 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0377 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %arg378 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)379 %arg:_(s32) = COPY $vgpr0380 %shiftamt:_(s32) = G_CONSTANT i32 8381 %shift:_(s32) = G_SHL %arg, %shiftamt382 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift383 $vgpr0 = COPY %result384...385 386---387name: cvt_f32_ubyte3_shl_8388tracksRegLiveness: true389body: |390 bb.0:391 liveins: $vgpr0392 393 ; CHECK-LABEL: name: cvt_f32_ubyte3_shl_8394 ; CHECK: liveins: $vgpr0395 ; CHECK-NEXT: {{ $}}396 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0397 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %arg398 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)399 %arg:_(s32) = COPY $vgpr0400 %shiftamt:_(s32) = G_CONSTANT i32 8401 %shift:_(s32) = G_SHL %arg, %shiftamt402 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift403 $vgpr0 = COPY %result404...405 406---407name: cvt_f32_ubyte0_shl_16408tracksRegLiveness: true409body: |410 bb.0:411 liveins: $vgpr0412 413 ; CHECK-LABEL: name: cvt_f32_ubyte0_shl_16414 ; CHECK: liveins: $vgpr0415 ; CHECK-NEXT: {{ $}}416 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0417 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 16418 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)419 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift420 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)421 %arg:_(s32) = COPY $vgpr0422 %shiftamt:_(s32) = G_CONSTANT i32 16423 %shift:_(s32) = G_SHL %arg, %shiftamt424 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift425 $vgpr0 = COPY %result426...427 428---429name: cvt_f32_ubyte1_shl_16430tracksRegLiveness: true431body: |432 bb.0:433 liveins: $vgpr0434 435 ; CHECK-LABEL: name: cvt_f32_ubyte1_shl_16436 ; CHECK: liveins: $vgpr0437 ; CHECK-NEXT: {{ $}}438 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0439 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 16440 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)441 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift442 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)443 %arg:_(s32) = COPY $vgpr0444 %shiftamt:_(s32) = G_CONSTANT i32 16445 %shift:_(s32) = G_SHL %arg, %shiftamt446 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift447 $vgpr0 = COPY %result448...449 450---451name: cvt_f32_ubyte2_shl_16452tracksRegLiveness: true453body: |454 bb.0:455 liveins: $vgpr0456 457 ; CHECK-LABEL: name: cvt_f32_ubyte2_shl_16458 ; CHECK: liveins: $vgpr0459 ; CHECK-NEXT: {{ $}}460 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0461 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 16462 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)463 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift464 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)465 %arg:_(s32) = COPY $vgpr0466 %shiftamt:_(s32) = G_CONSTANT i32 16467 %shift:_(s32) = G_SHL %arg, %shiftamt468 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift469 $vgpr0 = COPY %result470...471 472---473name: cvt_f32_ubyte3_shl_16474tracksRegLiveness: true475body: |476 bb.0:477 liveins: $vgpr0478 479 ; CHECK-LABEL: name: cvt_f32_ubyte3_shl_16480 ; CHECK: liveins: $vgpr0481 ; CHECK-NEXT: {{ $}}482 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0483 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %arg484 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)485 %arg:_(s32) = COPY $vgpr0486 %shiftamt:_(s32) = G_CONSTANT i32 16487 %shift:_(s32) = G_SHL %arg, %shiftamt488 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift489 $vgpr0 = COPY %result490...491 492---493name: cvt_f32_ubyte0_shl_24494tracksRegLiveness: true495body: |496 bb.0:497 liveins: $vgpr0498 499 ; CHECK-LABEL: name: cvt_f32_ubyte0_shl_24500 ; CHECK: liveins: $vgpr0501 ; CHECK-NEXT: {{ $}}502 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0503 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 24504 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)505 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift506 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)507 %arg:_(s32) = COPY $vgpr0508 %shiftamt:_(s32) = G_CONSTANT i32 24509 %shift:_(s32) = G_SHL %arg, %shiftamt510 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE0 %shift511 $vgpr0 = COPY %result512...513 514---515name: cvt_f32_ubyte1_shl_24516tracksRegLiveness: true517body: |518 bb.0:519 liveins: $vgpr0520 521 ; CHECK-LABEL: name: cvt_f32_ubyte1_shl_24522 ; CHECK: liveins: $vgpr0523 ; CHECK-NEXT: {{ $}}524 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0525 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 24526 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)527 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift528 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)529 %arg:_(s32) = COPY $vgpr0530 %shiftamt:_(s32) = G_CONSTANT i32 24531 %shift:_(s32) = G_SHL %arg, %shiftamt532 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift533 $vgpr0 = COPY %result534...535 536---537name: cvt_f32_ubyte2_shl_24538tracksRegLiveness: true539body: |540 bb.0:541 liveins: $vgpr0542 543 ; CHECK-LABEL: name: cvt_f32_ubyte2_shl_24544 ; CHECK: liveins: $vgpr0545 ; CHECK-NEXT: {{ $}}546 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0547 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 24548 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)549 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift550 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)551 %arg:_(s32) = COPY $vgpr0552 %shiftamt:_(s32) = G_CONSTANT i32 24553 %shift:_(s32) = G_SHL %arg, %shiftamt554 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE2 %shift555 $vgpr0 = COPY %result556...557 558---559name: cvt_f32_ubyte3_shl_24560tracksRegLiveness: true561body: |562 bb.0:563 liveins: $vgpr0564 565 ; CHECK-LABEL: name: cvt_f32_ubyte3_shl_24566 ; CHECK: liveins: $vgpr0567 ; CHECK-NEXT: {{ $}}568 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0569 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 24570 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)571 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift572 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)573 %arg:_(s32) = COPY $vgpr0574 %shiftamt:_(s32) = G_CONSTANT i32 24575 %shift:_(s32) = G_SHL %arg, %shiftamt576 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift577 $vgpr0 = COPY %result578...579 580# Shift amount is wrong581---582name: cvt_f32_ubyte1_shl_7583tracksRegLiveness: true584body: |585 bb.0:586 liveins: $vgpr0587 588 ; CHECK-LABEL: name: cvt_f32_ubyte1_shl_7589 ; CHECK: liveins: $vgpr0590 ; CHECK-NEXT: {{ $}}591 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0592 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 7593 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)594 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift595 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)596 %arg:_(s32) = COPY $vgpr0597 %shiftamt:_(s32) = G_CONSTANT i32 7598 %shift:_(s32) = G_SHL %arg, %shiftamt599 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE1 %shift600 $vgpr0 = COPY %result601...602 603---604name: cvt_f32_ubyte3_shl_17605tracksRegLiveness: true606body: |607 bb.0:608 liveins: $vgpr0609 610 ; CHECK-LABEL: name: cvt_f32_ubyte3_shl_17611 ; CHECK: liveins: $vgpr0612 ; CHECK-NEXT: {{ $}}613 ; CHECK-NEXT: %arg:_(s32) = COPY $vgpr0614 ; CHECK-NEXT: %shiftamt:_(s32) = G_CONSTANT i32 17615 ; CHECK-NEXT: %shift:_(s32) = G_SHL %arg, %shiftamt(s32)616 ; CHECK-NEXT: %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift617 ; CHECK-NEXT: $vgpr0 = COPY %result(s32)618 %arg:_(s32) = COPY $vgpr0619 %shiftamt:_(s32) = G_CONSTANT i32 17620 %shift:_(s32) = G_SHL %arg, %shiftamt621 %result:_(s32) = G_AMDGPU_CVT_F32_UBYTE3 %shift622 $vgpr0 = COPY %result623...624