79 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -run-pass=amdgpu-prelegalizer-combiner -o - %s | FileCheck %s3 4---5name: fptrunc_fpext_s16_to_s32_to_s166tracksRegLiveness: true7body: |8 bb.0:9 liveins: $vgpr010 ; CHECK-LABEL: name: fptrunc_fpext_s16_to_s32_to_s1611 ; CHECK: liveins: $vgpr012 ; CHECK-NEXT: {{ $}}13 ; CHECK-NEXT: %reg:_(s32) = COPY $vgpr014 ; CHECK-NEXT: $vgpr0 = COPY %reg(s32)15 %reg:_(s32) = COPY $vgpr016 %src:_(s16) = G_TRUNC %reg17 %fpext:_(s32) = G_FPEXT %src18 %fptrunc:_(s16) = G_FPTRUNC %fpext19 %anyext:_(s32) = G_ANYEXT %fptrunc20 $vgpr0 = COPY %anyext21...22 23---24name: fptrunc_fpext_s16_to_s64_to_s3225tracksRegLiveness: true26body: |27 bb.0:28 liveins: $vgpr029 ; CHECK-LABEL: name: fptrunc_fpext_s16_to_s64_to_s3230 ; CHECK: liveins: $vgpr031 ; CHECK-NEXT: {{ $}}32 ; CHECK-NEXT: %reg:_(s32) = COPY $vgpr033 ; CHECK-NEXT: %src:_(s16) = G_TRUNC %reg(s32)34 ; CHECK-NEXT: %fpext:_(s64) = G_FPEXT %src(s16)35 ; CHECK-NEXT: %fptrunc:_(s32) = G_FPTRUNC %fpext(s64)36 ; CHECK-NEXT: $vgpr0 = COPY %fptrunc(s32)37 %reg:_(s32) = COPY $vgpr038 %src:_(s16) = G_TRUNC %reg39 %fpext:_(s64) = G_FPEXT %src40 %fptrunc:_(s32) = G_FPTRUNC %fpext41 $vgpr0 = COPY %fptrunc42...43 44---45name: fptrunc_fpext_v2s16_to_v2s32_to_v2s1646tracksRegLiveness: true47body: |48 bb.0:49 liveins: $vgpr050 ; CHECK-LABEL: name: fptrunc_fpext_v2s16_to_v2s32_to_v2s1651 ; CHECK: liveins: $vgpr052 ; CHECK-NEXT: {{ $}}53 ; CHECK-NEXT: %src:_(<2 x s16>) = COPY $vgpr054 ; CHECK-NEXT: $vgpr0 = COPY %src(<2 x s16>)55 %src:_(<2 x s16>) = COPY $vgpr056 %fpext:_(<2 x s32>) = G_FPEXT %src57 %fptrunc:_(<2 x s16>) = G_FPTRUNC %fpext58 $vgpr0 = COPY %fptrunc59...60 61---62name: fptrunc_fpext_v2s16_to_v2s64_to_v2s3263tracksRegLiveness: true64body: |65 bb.0:66 liveins: $vgpr067 ; CHECK-LABEL: name: fptrunc_fpext_v2s16_to_v2s64_to_v2s3268 ; CHECK: liveins: $vgpr069 ; CHECK-NEXT: {{ $}}70 ; CHECK-NEXT: %src:_(<2 x s16>) = COPY $vgpr071 ; CHECK-NEXT: %fpext:_(<2 x s64>) = G_FPEXT %src(<2 x s16>)72 ; CHECK-NEXT: %fptrunc:_(<2 x s32>) = G_FPTRUNC %fpext(<2 x s64>)73 ; CHECK-NEXT: $vgpr0_vgpr1 = COPY %fptrunc(<2 x s32>)74 %src:_(<2 x s16>) = COPY $vgpr075 %fpext:_(<2 x s64>) = G_FPEXT %src76 %fptrunc:_(<2 x s32>) = G_FPTRUNC %fpext77 $vgpr0_vgpr1 = COPY %fptrunc78...79