brintos

brintos / llvm-project-archived public Read only

0
0
Text · 10.4 KiB · f5266cf Raw
256 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=fiji -O0 -run-pass=legalizer %s -o - | FileCheck %s3 4---5name: concat_vectors_v2s32_v2s326 7body: |8  bb.0:9    liveins: $vgpr0_vgpr1, $vgpr2_vgpr310    ; CHECK-LABEL: name: concat_vectors_v2s32_v2s3211    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr312    ; CHECK-NEXT: {{  $}}13    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s32>) = COPY $vgpr0_vgpr114    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x s32>) = COPY $vgpr2_vgpr315    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x s32>) = G_CONCAT_VECTORS [[COPY]](<2 x s32>), [[COPY1]](<2 x s32>)16    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[CONCAT_VECTORS]](<4 x s32>)17    %0:_(<2 x s32>) = COPY $vgpr0_vgpr118    %1:_(<2 x s32>) = COPY $vgpr2_vgpr319    %2:_(<4 x s32>) = G_CONCAT_VECTORS %0, %120    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %221...22 23---24name: concat_vectors_v2s16_v2s1625 26body: |27  bb.0:28    liveins: $vgpr0, $vgpr129    ; CHECK-LABEL: name: concat_vectors_v2s16_v2s1630    ; CHECK: liveins: $vgpr0, $vgpr131    ; CHECK-NEXT: {{  $}}32    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s16>) = COPY $vgpr033    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x s16>) = COPY $vgpr134    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x s16>) = G_CONCAT_VECTORS [[COPY]](<2 x s16>), [[COPY1]](<2 x s16>)35    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[CONCAT_VECTORS]](<4 x s16>)36    %0:_(<2 x s16>) = COPY $vgpr037    %1:_(<2 x s16>) = COPY $vgpr138    %2:_(<4 x s16>) = G_CONCAT_VECTORS %0, %139    $vgpr0_vgpr1 = COPY %240...41 42---43name: concat_vectors_v2s16_v2s16_v2s16_v2s1644 45body: |46  bb.0:47    liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr348    ; CHECK-LABEL: name: concat_vectors_v2s16_v2s16_v2s16_v2s1649    ; CHECK: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr350    ; CHECK-NEXT: {{  $}}51    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s16>) = COPY $vgpr052    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x s16>) = COPY $vgpr153    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(<2 x s16>) = COPY $vgpr254    ; CHECK-NEXT: [[COPY3:%[0-9]+]]:_(<2 x s16>) = COPY $vgpr355    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<8 x s16>) = G_CONCAT_VECTORS [[COPY]](<2 x s16>), [[COPY1]](<2 x s16>), [[COPY2]](<2 x s16>), [[COPY3]](<2 x s16>)56    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[CONCAT_VECTORS]](<8 x s16>)57    %0:_(<2 x s16>) = COPY $vgpr058    %1:_(<2 x s16>) = COPY $vgpr159    %2:_(<2 x s16>) = COPY $vgpr260    %3:_(<2 x s16>) = COPY $vgpr361    %4:_(<8 x s16>) = G_CONCAT_VECTORS %0, %1, %2, %362    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %463...64 65---66name: concat_vectors_v4s16_v4s1667 68body: |69  bb.0:70    liveins: $vgpr0_vgpr1, $vgpr2_vgpr371    ; CHECK-LABEL: name: concat_vectors_v4s16_v4s1672    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr373    ; CHECK-NEXT: {{  $}}74    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $vgpr0_vgpr175    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<4 x s16>) = COPY $vgpr2_vgpr376    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<8 x s16>) = G_CONCAT_VECTORS [[COPY]](<4 x s16>), [[COPY1]](<4 x s16>)77    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[CONCAT_VECTORS]](<8 x s16>)78    %0:_(<4 x s16>) = COPY $vgpr0_vgpr179    %1:_(<4 x s16>) = COPY $vgpr2_vgpr380    %2:_(<8 x s16>) = G_CONCAT_VECTORS %0, %181    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %282...83 84---85name: concat_vectors_v4s32_v4s3286 87body: |88  bb.0:89    liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr790    ; CHECK-LABEL: name: concat_vectors_v4s32_v4s3291    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr792    ; CHECK-NEXT: {{  $}}93    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $vgpr0_vgpr1_vgpr2_vgpr394    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<4 x s32>) = COPY $vgpr4_vgpr5_vgpr6_vgpr795    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<8 x s32>) = G_CONCAT_VECTORS [[COPY]](<4 x s32>), [[COPY1]](<4 x s32>)96    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY [[CONCAT_VECTORS]](<8 x s32>)97    %0:_(<4 x s32>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3,98    %1:_(<4 x s32>) = COPY $vgpr4_vgpr5_vgpr6_vgpr799    %2:_(<8 x s32>) = G_CONCAT_VECTORS %0, %1100    $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY %2101...102 103---104name: concat_vectors_v2s32_v2s32_v2s32_v2s32105 106body: |107  bb.0:108    liveins: $vgpr0_vgpr1, $vgpr2_vgpr3, $vgpr4_vgpr5, $vgpr6_vgpr7109    ; CHECK-LABEL: name: concat_vectors_v2s32_v2s32_v2s32_v2s32110    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3, $vgpr4_vgpr5, $vgpr6_vgpr7111    ; CHECK-NEXT: {{  $}}112    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s32>) = COPY $vgpr0_vgpr1113    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x s32>) = COPY $vgpr2_vgpr3114    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(<2 x s32>) = COPY $vgpr4_vgpr5115    ; CHECK-NEXT: [[COPY3:%[0-9]+]]:_(<2 x s32>) = COPY $vgpr6_vgpr7116    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<8 x s32>) = G_CONCAT_VECTORS [[COPY]](<2 x s32>), [[COPY1]](<2 x s32>), [[COPY2]](<2 x s32>), [[COPY3]](<2 x s32>)117    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY [[CONCAT_VECTORS]](<8 x s32>)118    %0:_(<2 x s32>) = COPY $vgpr0_vgpr1119    %1:_(<2 x s32>) = COPY $vgpr2_vgpr3120    %2:_(<2 x s32>) = COPY $vgpr4_vgpr5121    %3:_(<2 x s32>) = COPY $vgpr6_vgpr7122 123    %4:_(<8 x s32>) = G_CONCAT_VECTORS %0, %1, %2, %3124    $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY %4125...126---127name: concat_vectors_v2s64_v2s64128 129body: |130  bb.0:131    liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7132    ; CHECK-LABEL: name: concat_vectors_v2s64_v2s64133    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7134    ; CHECK-NEXT: {{  $}}135    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s64>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3136    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x s64>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7137    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x s64>) = G_CONCAT_VECTORS [[COPY]](<2 x s64>), [[COPY1]](<2 x s64>)138    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY [[CONCAT_VECTORS]](<4 x s64>)139    %0:_(<2 x s64>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3140    %1:_(<2 x s64>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7141    %2:_(<4 x s64>) = G_CONCAT_VECTORS %0, %1142    $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY %2143...144 145---146name: concat_vectors_v2p1_v2p1147 148body: |149  bb.0:150    liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7151    ; CHECK-LABEL: name: concat_vectors_v2p1_v2p1152    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7153    ; CHECK-NEXT: {{  $}}154    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p1>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3155    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x p1>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7156    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x p1>) = G_CONCAT_VECTORS [[COPY]](<2 x p1>), [[COPY1]](<2 x p1>)157    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY [[CONCAT_VECTORS]](<4 x p1>)158    %0:_(<2 x p1>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3159    %1:_(<2 x p1>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7160    %2:_(<4 x p1>) = G_CONCAT_VECTORS %0, %1161    $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY %2162...163 164---165name: concat_vectors_v2p0_v2p0166 167body: |168  bb.0:169    liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7170    ; CHECK-LABEL: name: concat_vectors_v2p0_v2p0171    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7172    ; CHECK-NEXT: {{  $}}173    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p0>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3174    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x p0>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7175    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x p0>) = G_CONCAT_VECTORS [[COPY]](<2 x p0>), [[COPY1]](<2 x p0>)176    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY [[CONCAT_VECTORS]](<4 x p0>)177    %0:_(<2 x p0>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3178    %1:_(<2 x p0>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7179    %2:_(<4 x p0>) = G_CONCAT_VECTORS %0, %1180    $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY %2181...182 183---184name: concat_vectors_v2p3_v2p3185 186body: |187  bb.0:188    liveins: $vgpr0_vgpr1, $vgpr2_vgpr3189    ; CHECK-LABEL: name: concat_vectors_v2p3_v2p3190    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3191    ; CHECK-NEXT: {{  $}}192    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p3>) = COPY $vgpr0_vgpr1193    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x p3>) = COPY $vgpr2_vgpr3194    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x p3>) = G_CONCAT_VECTORS [[COPY]](<2 x p3>), [[COPY1]](<2 x p3>)195    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[CONCAT_VECTORS]](<4 x p3>)196    %0:_(<2 x p3>) = COPY $vgpr0_vgpr1197    %1:_(<2 x p3>) = COPY $vgpr2_vgpr3198    %2:_(<4 x p3>) = G_CONCAT_VECTORS %0, %1199    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %2200...201 202---203name: concat_vectors_v2p5_v2p5204 205body: |206  bb.0:207    liveins: $vgpr0_vgpr1, $vgpr2_vgpr3208    ; CHECK-LABEL: name: concat_vectors_v2p5_v2p5209    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3210    ; CHECK-NEXT: {{  $}}211    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p5>) = COPY $vgpr0_vgpr1212    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x p5>) = COPY $vgpr2_vgpr3213    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x p5>) = G_CONCAT_VECTORS [[COPY]](<2 x p5>), [[COPY1]](<2 x p5>)214    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[CONCAT_VECTORS]](<4 x p5>)215    %0:_(<2 x p5>) = COPY $vgpr0_vgpr1216    %1:_(<2 x p5>) = COPY $vgpr2_vgpr3217    %2:_(<4 x p5>) = G_CONCAT_VECTORS %0, %1218    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %2219...220 221---222name: concat_vectors_v2p999_v2p999223 224body: |225  bb.0:226    liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7227    ; CHECK-LABEL: name: concat_vectors_v2p999_v2p999228    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4_vgpr5_vgpr6_vgpr7229    ; CHECK-NEXT: {{  $}}230    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p999>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3231    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x p999>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7232    ; CHECK-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x p999>) = G_CONCAT_VECTORS [[COPY]](<2 x p999>), [[COPY1]](<2 x p999>)233    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY [[CONCAT_VECTORS]](<4 x p999>)234    %0:_(<2 x p999>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3235    %1:_(<2 x p999>) = COPY $vgpr4_vgpr5_vgpr6_vgpr7236    %2:_(<4 x p999>) = G_CONCAT_VECTORS %0, %1237    $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = COPY %2238...239 240---241name: concat_vectors_v6s16_v3s16242 243body: |244  bb.0:245    liveins: $vgpr0_vgpr1_vgpr2246    ; CHECK-LABEL: name: concat_vectors_v6s16_v3s16247    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2248    ; CHECK-NEXT: {{  $}}249    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<6 x s16>) = COPY $vgpr0_vgpr1_vgpr2250    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2 = COPY [[COPY]](<6 x s16>)251    %0:_(<6 x s16>) = COPY $vgpr0_vgpr1_vgpr2252    %1:_(<3 x s16>), %2:_(<3 x s16>) = G_UNMERGE_VALUES %0253    %3:_(<6 x s16>) = G_CONCAT_VECTORS %1, %2254    $vgpr0_vgpr1_vgpr2 = COPY %3255...256