brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.4 KiB · b9e6c36 Raw
135 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=tahiti -run-pass=amdgpu-prelegalizer-combiner %s -o - | FileCheck -check-prefixes=GCN,PRELEGAL %s3# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=tahiti -run-pass=amdgpu-regbank-combiner %s -o - | FileCheck -check-prefixes=GCN,RBCOMB %s4 5---6name: trunc_sext_i32_i167tracksRegLiveness: true8body:             |9  bb.0:10    liveins: $vgpr011 12    ; GCN-LABEL: name: trunc_sext_i32_i1613    ; GCN: liveins: $vgpr014    ; GCN-NEXT: {{  $}}15    ; GCN-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr016    ; GCN-NEXT: [[SEXT_INREG:%[0-9]+]]:_(s32) = G_SEXT_INREG [[COPY]], 1617    ; GCN-NEXT: $vgpr0 = COPY [[SEXT_INREG]](s32)18    %0:_(s32) = COPY $vgpr019    %1:_(s16) = G_TRUNC %020    %2:_(s32) = G_SEXT %121    $vgpr0 = COPY %222...23 24---25name: trunc_sext_i32_i826tracksRegLiveness: true27body:             |28  bb.0:29    liveins: $vgpr030 31    ; GCN-LABEL: name: trunc_sext_i32_i832    ; GCN: liveins: $vgpr033    ; GCN-NEXT: {{  $}}34    ; GCN-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr035    ; GCN-NEXT: [[SEXT_INREG:%[0-9]+]]:_(s32) = G_SEXT_INREG [[COPY]], 836    ; GCN-NEXT: $vgpr0 = COPY [[SEXT_INREG]](s32)37    %0:_(s32) = COPY $vgpr038    %1:_(s8) = G_TRUNC %039    %2:_(s32) = G_SEXT %140    $vgpr0 = COPY %241...42 43---44name: trunc_sext_i64_i3245tracksRegLiveness: true46body:             |47  bb.0:48    liveins: $vgpr0_vgpr149 50    ; GCN-LABEL: name: trunc_sext_i64_i3251    ; GCN: liveins: $vgpr0_vgpr152    ; GCN-NEXT: {{  $}}53    ; GCN-NEXT: [[COPY:%[0-9]+]]:_(s64) = COPY $vgpr0_vgpr154    ; GCN-NEXT: [[SEXT_INREG:%[0-9]+]]:_(s64) = G_SEXT_INREG [[COPY]], 3255    ; GCN-NEXT: $vgpr0_vgpr1 = COPY [[SEXT_INREG]](s64)56    %0:_(s64) = COPY $vgpr0_vgpr157    %1:_(s32) = G_TRUNC %058    %2:_(s64) = G_SEXT %159    $vgpr0_vgpr1 = COPY %260...61 62---63name: trunc_sext_v4i32_v4i1664tracksRegLiveness: true65body:             |66  bb.0:67    liveins: $vgpr0_vgpr1_vgpr2_vgpr368 69    ; PRELEGAL-LABEL: name: trunc_sext_v4i32_v4i1670    ; PRELEGAL: liveins: $vgpr0_vgpr1_vgpr2_vgpr371    ; PRELEGAL-NEXT: {{  $}}72    ; PRELEGAL-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $vgpr0_vgpr1_vgpr2_vgpr373    ; PRELEGAL-NEXT: [[SEXT_INREG:%[0-9]+]]:_(<4 x s32>) = G_SEXT_INREG [[COPY]], 1674    ; PRELEGAL-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[SEXT_INREG]](<4 x s32>)75    ;76    ; RBCOMB-LABEL: name: trunc_sext_v4i32_v4i1677    ; RBCOMB: liveins: $vgpr0_vgpr1_vgpr2_vgpr378    ; RBCOMB-NEXT: {{  $}}79    ; RBCOMB-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $vgpr0_vgpr1_vgpr2_vgpr380    ; RBCOMB-NEXT: [[TRUNC:%[0-9]+]]:_(<4 x s16>) = G_TRUNC [[COPY]](<4 x s32>)81    ; RBCOMB-NEXT: [[SEXT:%[0-9]+]]:_(<4 x s32>) = G_SEXT [[TRUNC]](<4 x s16>)82    ; RBCOMB-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[SEXT]](<4 x s32>)83    %0:_(<4 x s32>) = COPY $vgpr0_vgpr1_vgpr2_vgpr384    %1:_(<4 x s16>) = G_TRUNC %085    %2:_(<4 x s32>) = G_SEXT %186    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %287...88 89---90name: trunc_sext_v4i16_v4i891tracksRegLiveness: true92body:             |93  bb.0:94    liveins: $vgpr0_vgpr195 96    ; PRELEGAL-LABEL: name: trunc_sext_v4i16_v4i897    ; PRELEGAL: liveins: $vgpr0_vgpr198    ; PRELEGAL-NEXT: {{  $}}99    ; PRELEGAL-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $vgpr0_vgpr1100    ; PRELEGAL-NEXT: [[SEXT_INREG:%[0-9]+]]:_(<4 x s16>) = G_SEXT_INREG [[COPY]], 8101    ; PRELEGAL-NEXT: $vgpr0_vgpr1 = COPY [[SEXT_INREG]](<4 x s16>)102    ;103    ; RBCOMB-LABEL: name: trunc_sext_v4i16_v4i8104    ; RBCOMB: liveins: $vgpr0_vgpr1105    ; RBCOMB-NEXT: {{  $}}106    ; RBCOMB-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $vgpr0_vgpr1107    ; RBCOMB-NEXT: [[TRUNC:%[0-9]+]]:_(<4 x s8>) = G_TRUNC [[COPY]](<4 x s16>)108    ; RBCOMB-NEXT: [[SEXT:%[0-9]+]]:_(<4 x s16>) = G_SEXT [[TRUNC]](<4 x s8>)109    ; RBCOMB-NEXT: $vgpr0_vgpr1 = COPY [[SEXT]](<4 x s16>)110    %0:_(<4 x s16>) = COPY $vgpr0_vgpr1111    %1:_(<4 x s8>) = G_TRUNC %0112    %2:_(<4 x s16>) = G_SEXT %1113    $vgpr0_vgpr1 = COPY %2114...115 116---117name: trunc_sext_mismatching_types118tracksRegLiveness: true119body:             |120  bb.0:121    liveins: $vgpr0_vgpr1122 123    ; GCN-LABEL: name: trunc_sext_mismatching_types124    ; GCN: liveins: $vgpr0_vgpr1125    ; GCN-NEXT: {{  $}}126    ; GCN-NEXT: [[COPY:%[0-9]+]]:_(s64) = COPY $vgpr0_vgpr1127    ; GCN-NEXT: [[TRUNC:%[0-9]+]]:_(s16) = G_TRUNC [[COPY]](s64)128    ; GCN-NEXT: [[SEXT:%[0-9]+]]:_(s32) = G_SEXT [[TRUNC]](s16)129    ; GCN-NEXT: $vgpr0 = COPY [[SEXT]](s32)130    %0:_(s64) = COPY $vgpr0_vgpr1131    %1:_(s16) = G_TRUNC %0132    %2:_(s32) = G_SEXT %1133    $vgpr0 = COPY %2134...135