brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.8 KiB · 80d1aa4 Raw
248 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: ptrmask_p1_s166body: |7  bb.0:8    liveins: $vgpr0_vgpr1, $vgpr29 10    ; CHECK-LABEL: name: ptrmask_p1_s1611    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr212    ; CHECK-NEXT: {{  $}}13    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p1) = COPY $vgpr0_vgpr114    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr215    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[COPY1]](s32)16    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 6553517    ; CHECK-NEXT: [[AND:%[0-9]+]]:_(s64) = G_AND [[ANYEXT]], [[C]]18    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p1) = G_PTRMASK [[COPY]], [[AND]](s64)19    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p1)20    %0:_(p1) = COPY $vgpr0_vgpr121    %1:_(s32) = COPY $vgpr222    %2:_(s16) = G_TRUNC %123    %3:_(p1) = G_PTRMASK %0, %224    $vgpr0_vgpr1 = COPY %325...26 27---28name: ptrmask_p1_s3229body: |30  bb.0:31    liveins: $vgpr0_vgpr1, $vgpr232 33    ; CHECK-LABEL: name: ptrmask_p1_s3234    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr235    ; CHECK-NEXT: {{  $}}36    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p1) = COPY $vgpr0_vgpr137    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr238    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY1]](s32)39    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p1) = G_PTRMASK [[COPY]], [[ZEXT]](s64)40    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p1)41    %0:_(p1) = COPY $vgpr0_vgpr142    %1:_(s32) = COPY $vgpr243    %2:_(p1) = G_PTRMASK %0, %144    $vgpr0_vgpr1 = COPY %245...46 47---48name: ptrmask_p1_s6449body: |50  bb.0:51    liveins: $vgpr0_vgpr1, $vgpr2_vgpr352 53    ; CHECK-LABEL: name: ptrmask_p1_s6454    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr355    ; CHECK-NEXT: {{  $}}56    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p1) = COPY $vgpr0_vgpr157    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s64) = COPY $vgpr2_vgpr358    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p1) = G_PTRMASK [[COPY]], [[COPY1]](s64)59    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p1)60    %0:_(p1) = COPY $vgpr0_vgpr161    %1:_(s64) = COPY $vgpr2_vgpr362    %2:_(p1) = G_PTRMASK %0, %163    $vgpr0_vgpr1 = COPY %264...65 66---67name: ptrmask_p1_s9668body: |69  bb.0:70    liveins: $vgpr0_vgpr1, $vgpr2_vgpr3_vgpr471 72    ; CHECK-LABEL: name: ptrmask_p1_s9673    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3_vgpr474    ; CHECK-NEXT: {{  $}}75    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p1) = COPY $vgpr0_vgpr176    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s96) = COPY $vgpr2_vgpr3_vgpr477    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s64) = G_TRUNC [[COPY1]](s96)78    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p1) = G_PTRMASK [[COPY]], [[TRUNC]](s64)79    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p1)80    %0:_(p1) = COPY $vgpr0_vgpr181    %1:_(s96) = COPY $vgpr2_vgpr3_vgpr482    %2:_(p1) = G_PTRMASK %0, %183    $vgpr0_vgpr1 = COPY %284...85 86---87name: ptrmask_p0_s1688body: |89  bb.0:90    liveins: $vgpr0_vgpr1, $vgpr291 92    ; CHECK-LABEL: name: ptrmask_p0_s1693    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr294    ; CHECK-NEXT: {{  $}}95    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr196    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr297    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[COPY1]](s32)98    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 6553599    ; CHECK-NEXT: [[AND:%[0-9]+]]:_(s64) = G_AND [[ANYEXT]], [[C]]100    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p0) = G_PTRMASK [[COPY]], [[AND]](s64)101    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p0)102    %0:_(p0) = COPY $vgpr0_vgpr1103    %1:_(s32) = COPY $vgpr2104    %2:_(s16) = G_TRUNC %1105    %3:_(p0) = G_PTRMASK %0, %2106    $vgpr0_vgpr1 = COPY %3107...108 109---110name: ptrmask_p0_s32111body: |112  bb.0:113    liveins: $vgpr0_vgpr1, $vgpr2114 115    ; CHECK-LABEL: name: ptrmask_p0_s32116    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2117    ; CHECK-NEXT: {{  $}}118    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr1119    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr2120    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY1]](s32)121    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p0) = G_PTRMASK [[COPY]], [[ZEXT]](s64)122    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p0)123    %0:_(p0) = COPY $vgpr0_vgpr1124    %1:_(s32) = COPY $vgpr2125    %2:_(p0) = G_PTRMASK %0, %1126    $vgpr0_vgpr1 = COPY %2127...128 129---130name: ptrmask_p0_s64131body: |132  bb.0:133    liveins: $vgpr0_vgpr1, $vgpr2_vgpr3134 135    ; CHECK-LABEL: name: ptrmask_p0_s64136    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3137    ; CHECK-NEXT: {{  $}}138    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr1139    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s64) = COPY $vgpr2_vgpr3140    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p0) = G_PTRMASK [[COPY]], [[COPY1]](s64)141    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p0)142    %0:_(p0) = COPY $vgpr0_vgpr1143    %1:_(s64) = COPY $vgpr2_vgpr3144    %2:_(p0) = G_PTRMASK %0, %1145    $vgpr0_vgpr1 = COPY %2146...147 148---149name: ptrmask_p0_s96150body: |151  bb.0:152    liveins: $vgpr0_vgpr1, $vgpr2_vgpr3_vgpr4153 154    ; CHECK-LABEL: name: ptrmask_p0_s96155    ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3_vgpr4156    ; CHECK-NEXT: {{  $}}157    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr1158    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s96) = COPY $vgpr2_vgpr3_vgpr4159    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s64) = G_TRUNC [[COPY1]](s96)160    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p0) = G_PTRMASK [[COPY]], [[TRUNC]](s64)161    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRMASK]](p0)162    %0:_(p0) = COPY $vgpr0_vgpr1163    %1:_(s96) = COPY $vgpr2_vgpr3_vgpr4164    %2:_(p0) = G_PTRMASK %0, %1165    $vgpr0_vgpr1 = COPY %2166...167 168---169name: ptrmask_p3_s16170body: |171  bb.0:172    liveins: $vgpr0, $vgpr1173 174    ; CHECK-LABEL: name: ptrmask_p3_s16175    ; CHECK: liveins: $vgpr0, $vgpr1176    ; CHECK-NEXT: {{  $}}177    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr0178    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr1179    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535180    ; CHECK-NEXT: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C]]181    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p3) = G_PTRMASK [[COPY]], [[AND]](s32)182    ; CHECK-NEXT: $vgpr0 = COPY [[PTRMASK]](p3)183    %0:_(p3) = COPY $vgpr0184    %1:_(s32) = COPY $vgpr1185    %2:_(s16) = G_TRUNC %1186    %3:_(p3) = G_PTRMASK %0, %2187    $vgpr0 = COPY %3188...189 190---191name: ptrmask_p3_s32192body: |193  bb.0:194    liveins: $vgpr0, $vgpr1195 196    ; CHECK-LABEL: name: ptrmask_p3_s32197    ; CHECK: liveins: $vgpr0, $vgpr1198    ; CHECK-NEXT: {{  $}}199    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr0200    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr1201    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p3) = G_PTRMASK [[COPY]], [[COPY1]](s32)202    ; CHECK-NEXT: $vgpr0 = COPY [[PTRMASK]](p3)203    %0:_(p3) = COPY $vgpr0204    %1:_(s32) = COPY $vgpr1205    %2:_(p3) = G_PTRMASK %0, %1206    $vgpr0 = COPY %2207...208 209---210name: ptrmask_p3_s64211body: |212  bb.0:213    liveins: $vgpr0, $vgpr1_vgpr2214 215    ; CHECK-LABEL: name: ptrmask_p3_s64216    ; CHECK: liveins: $vgpr0, $vgpr1_vgpr2217    ; CHECK-NEXT: {{  $}}218    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr0219    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s64) = COPY $vgpr1_vgpr2220    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)221    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p3) = G_PTRMASK [[COPY]], [[TRUNC]](s32)222    ; CHECK-NEXT: $vgpr0 = COPY [[PTRMASK]](p3)223    %0:_(p3) = COPY $vgpr0224    %1:_(s64) = COPY $vgpr1_vgpr2225    %2:_(p3) = G_PTRMASK %0, %1226    $vgpr0 = COPY %2227...228 229---230name: ptrmask_p3_s96231body: |232  bb.0:233    liveins: $vgpr0, $vgpr1_vgpr2_vgpr3234 235    ; CHECK-LABEL: name: ptrmask_p3_s96236    ; CHECK: liveins: $vgpr0, $vgpr1_vgpr2_vgpr3237    ; CHECK-NEXT: {{  $}}238    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr0239    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s96) = COPY $vgpr1_vgpr2_vgpr3240    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s96)241    ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:_(p3) = G_PTRMASK [[COPY]], [[TRUNC]](s32)242    ; CHECK-NEXT: $vgpr0 = COPY [[PTRMASK]](p3)243    %0:_(p3) = COPY $vgpr0244    %1:_(s96) = COPY $vgpr1_vgpr2_vgpr3245    %2:_(p3) = G_PTRMASK %0, %1246    $vgpr0 = COPY %2247...248