brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.0 KiB · 4fb8e6a Raw
124 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=gfx900 -run-pass=instruction-select -global-isel-abort=2 -pass-remarks-missed='gisel*' -verify-machineinstrs %s -o - 2>%t | FileCheck -check-prefix=GFX9 %s3# RUN: FileCheck -check-prefixes=ERR-GFX910,ERR %s < %t4 5# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 -run-pass=instruction-select -global-isel-abort=2 -pass-remarks-missed='gisel*' -verify-machineinstrs %s -o - 2>%t | FileCheck -check-prefix=GFX10 %s6# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -run-pass=instruction-select -global-isel-abort=2 -pass-remarks-missed='gisel*' -verify-machineinstrs %s -o - 2>%t | FileCheck -check-prefix=GFX10 %s7# RUN: FileCheck -check-prefixes=ERR-GFX910,ERR %s < %t8 9# ERR-NOT: remark10# ERR-GFX910: remark: <unknown>:0:0: cannot select: %2:sgpr(<2 x s16>) = G_LSHR %0:sgpr, %1:sgpr(<2 x s16>) (in function: lshr_v2s16_ss)11# ERR-NOT: remark12 13---14name: lshr_v2s16_ss15legalized: true16regBankSelected: true17 18body: |19  bb.0:20    liveins: $sgpr0, $sgpr121    ; GFX9-LABEL: name: lshr_v2s16_ss22    ; GFX9: liveins: $sgpr0, $sgpr123    ; GFX9-NEXT: {{  $}}24    ; GFX9-NEXT: [[COPY:%[0-9]+]]:sgpr(<2 x s16>) = COPY $sgpr025    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:sgpr(<2 x s16>) = COPY $sgpr126    ; GFX9-NEXT: [[LSHR:%[0-9]+]]:sgpr(<2 x s16>) = G_LSHR [[COPY]], [[COPY1]](<2 x s16>)27    ; GFX9-NEXT: S_ENDPGM 0, implicit [[LSHR]](<2 x s16>)28    ; GFX10-LABEL: name: lshr_v2s16_ss29    ; GFX10: liveins: $sgpr0, $sgpr130    ; GFX10-NEXT: {{  $}}31    ; GFX10-NEXT: [[COPY:%[0-9]+]]:sgpr(<2 x s16>) = COPY $sgpr032    ; GFX10-NEXT: [[COPY1:%[0-9]+]]:sgpr(<2 x s16>) = COPY $sgpr133    ; GFX10-NEXT: [[LSHR:%[0-9]+]]:sgpr(<2 x s16>) = G_LSHR [[COPY]], [[COPY1]](<2 x s16>)34    ; GFX10-NEXT: S_ENDPGM 0, implicit [[LSHR]](<2 x s16>)35    %0:sgpr(<2 x s16>) = COPY $sgpr036    %1:sgpr(<2 x s16>) = COPY $sgpr137    %2:sgpr(<2 x s16>) = G_LSHR %0, %138    S_ENDPGM 0, implicit %239...40 41---42name: lshr_v2s16_sv43legalized: true44regBankSelected: true45 46body: |47  bb.0:48    liveins: $sgpr0, $vgpr049    ; GFX9-LABEL: name: lshr_v2s16_sv50    ; GFX9: liveins: $sgpr0, $vgpr051    ; GFX9-NEXT: {{  $}}52    ; GFX9-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr053    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr054    ; GFX9-NEXT: [[V_PK_LSHRREV_B16_:%[0-9]+]]:vgpr_32 = V_PK_LSHRREV_B16 8, [[COPY1]], 8, [[COPY]], 0, 0, 0, 0, 0, implicit $exec55    ; GFX9-NEXT: S_ENDPGM 0, implicit [[V_PK_LSHRREV_B16_]]56    ; GFX10-LABEL: name: lshr_v2s16_sv57    ; GFX10: liveins: $sgpr0, $vgpr058    ; GFX10-NEXT: {{  $}}59    ; GFX10-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr060    ; GFX10-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr061    ; GFX10-NEXT: [[V_PK_LSHRREV_B16_:%[0-9]+]]:vgpr_32 = V_PK_LSHRREV_B16 8, [[COPY1]], 8, [[COPY]], 0, 0, 0, 0, 0, implicit $exec62    ; GFX10-NEXT: S_ENDPGM 0, implicit [[V_PK_LSHRREV_B16_]]63    %0:sgpr(<2 x s16>) = COPY $sgpr064    %1:vgpr(<2 x s16>) = COPY $vgpr065    %2:vgpr(<2 x s16>) = G_LSHR %0, %166    S_ENDPGM 0, implicit %267...68 69---70name: lshr_v2s16_vs71legalized: true72regBankSelected: true73 74body: |75  bb.0:76    liveins: $sgpr0, $vgpr077    ; GFX9-LABEL: name: lshr_v2s16_vs78    ; GFX9: liveins: $sgpr0, $vgpr079    ; GFX9-NEXT: {{  $}}80    ; GFX9-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr081    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr082    ; GFX9-NEXT: [[V_PK_LSHRREV_B16_:%[0-9]+]]:vgpr_32 = V_PK_LSHRREV_B16 8, [[COPY1]], 8, [[COPY]], 0, 0, 0, 0, 0, implicit $exec83    ; GFX9-NEXT: S_ENDPGM 0, implicit [[V_PK_LSHRREV_B16_]]84    ; GFX10-LABEL: name: lshr_v2s16_vs85    ; GFX10: liveins: $sgpr0, $vgpr086    ; GFX10-NEXT: {{  $}}87    ; GFX10-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr088    ; GFX10-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr089    ; GFX10-NEXT: [[V_PK_LSHRREV_B16_:%[0-9]+]]:vgpr_32 = V_PK_LSHRREV_B16 8, [[COPY1]], 8, [[COPY]], 0, 0, 0, 0, 0, implicit $exec90    ; GFX10-NEXT: S_ENDPGM 0, implicit [[V_PK_LSHRREV_B16_]]91    %0:vgpr(<2 x s16>) = COPY $vgpr092    %1:sgpr(<2 x s16>) = COPY $sgpr093    %2:vgpr(<2 x s16>) = G_LSHR %0, %194    S_ENDPGM 0, implicit %295...96 97---98name: lshr_v2s16_vv99legalized: true100regBankSelected: true101 102body: |103  bb.0:104    liveins: $vgpr0, $vgpr1105    ; GFX9-LABEL: name: lshr_v2s16_vv106    ; GFX9: liveins: $vgpr0, $vgpr1107    ; GFX9-NEXT: {{  $}}108    ; GFX9-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0109    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr1110    ; GFX9-NEXT: [[V_PK_LSHRREV_B16_:%[0-9]+]]:vgpr_32 = V_PK_LSHRREV_B16 8, [[COPY1]], 8, [[COPY]], 0, 0, 0, 0, 0, implicit $exec111    ; GFX9-NEXT: S_ENDPGM 0, implicit [[V_PK_LSHRREV_B16_]]112    ; GFX10-LABEL: name: lshr_v2s16_vv113    ; GFX10: liveins: $vgpr0, $vgpr1114    ; GFX10-NEXT: {{  $}}115    ; GFX10-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0116    ; GFX10-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr1117    ; GFX10-NEXT: [[V_PK_LSHRREV_B16_:%[0-9]+]]:vgpr_32 = V_PK_LSHRREV_B16 8, [[COPY1]], 8, [[COPY]], 0, 0, 0, 0, 0, implicit $exec118    ; GFX10-NEXT: S_ENDPGM 0, implicit [[V_PK_LSHRREV_B16_]]119    %0:vgpr(<2 x s16>) = COPY $vgpr0120    %1:vgpr(<2 x s16>) = COPY $vgpr1121    %2:vgpr(<2 x s16>) = G_LSHR %0, %1122    S_ENDPGM 0, implicit %2123...124