brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.5 KiB · 3a9c023 Raw
60 lines · plain
1# RUN: not --crash llc -mtriple=amdgcn -mcpu=gfx1200 -run-pass=machineverifier -filetype=null %s 2>&1 | FileCheck -check-prefix=GFX12-ERR %s2# RUN: not --crash llc -mtriple=amdgcn -mcpu=gfx1200 --passes='machine-function(verify)' -filetype=null %s 2>&1 | FileCheck -check-prefix=GFX12-ERR %s3 4---5name: vimage_vsample_verify6body:             |7  bb.0:8    liveins: $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, $sgpr8_sgpr9_sgpr10_sgpr11, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr99 10    ; GFX12-ERR: *** Bad machine code: missing memory operand from image instruction. ***11    ; GFX12-ERR: - instruction: renamable $vgpr10 = IMAGE_LOAD_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 1, 0, 0, 0, 0, 0, 0, implicit $exec12    renamable $vgpr10 = IMAGE_LOAD_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 1, 0, 0, 0, 0, 0, 0, implicit $exec13 14    ; GFX12-ERR: *** Bad machine code: Image instruction returns too many registers for dst register class ***15    ; GFX12-ERR: - instruction: renamable $vgpr12 = IMAGE_SAMPLE_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, killed renamable $sgpr8_sgpr9_sgpr10_sgpr11, 3, 0, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)16    renamable $vgpr12 = IMAGE_SAMPLE_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, killed renamable $sgpr8_sgpr9_sgpr10_sgpr11, 3, 0, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)17 18    ; GFX12-ERR: *** Bad machine code: Image instruction returns too many registers for dst register class ***19    ; GFX12-ERR: - instruction: renamable $vgpr15_vgpr16 = IMAGE_LOAD_V2_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 13, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)20    renamable $vgpr15_vgpr16 = IMAGE_LOAD_V2_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 13, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)21 22    ; dmask + lwe23    ; GFX12-ERR: *** Bad machine code: Image instruction returns too many registers for dst register class ***24    ; GFX12-ERR: - instruction: renamable $vgpr17_vgpr18_vgpr19 = IMAGE_SAMPLE_V3_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, killed renamable $sgpr8_sgpr9_sgpr10_sgpr11, 7, 0, 0, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)25    renamable $vgpr17_vgpr18_vgpr19 = IMAGE_SAMPLE_V3_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, killed renamable $sgpr8_sgpr9_sgpr10_sgpr11, 7, 0, 0, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)26 27    ; dmask + tfe28    ; GFX12-ERR: *** Bad machine code: Image instruction returns too many registers for dst register class ***29    ; GFX12-ERR: - instruction: renamable $vgpr23_vgpr24_vgpr25 = IMAGE_LOAD_V3_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 7, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)30    renamable $vgpr23_vgpr24_vgpr25 = IMAGE_LOAD_V3_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 7, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)31 32    ; dmask + d1633    ; GFX12-ERR: *** Bad machine code: Image instruction returns too many registers for dst register class ***34    ; GFX12-ERR: - instruction: renamable $vgpr26 = IMAGE_SAMPLE_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, killed renamable $sgpr8_sgpr9_sgpr10_sgpr11, 15, 0, 0, 0, 0, 0, 0, 0, -1, implicit $exec :: (dereferenceable load (s128), addrspace 7)35    renamable $vgpr26 = IMAGE_SAMPLE_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, killed renamable $sgpr8_sgpr9_sgpr10_sgpr11, 15, 0, 0, 0, 0, 0, 0, 0, -1, implicit $exec :: (dereferenceable load (s128), addrspace 7)36 37    ; GFX12-ERR: *** Bad machine code: Operand has incorrect register class. ***38    ; GFX12-ERR: - instruction: renamable $vgpr27 = IMAGE_SAMPLE_D_V1_V9_gfx12 renamable $vgpr0, renamable $vgpr1, renamable $vgpr2, renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, renamable $sgpr8_sgpr9_sgpr10_sgpr11, 1, 2, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)39    ; GFX12-ERR: *** Bad machine code: Illegal physical register for instruction ***40    ; GFX12-ERR: - instruction: renamable $vgpr27 = IMAGE_SAMPLE_D_V1_V9_gfx12 renamable $vgpr0, renamable $vgpr1, renamable $vgpr2, renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, renamable $sgpr8_sgpr9_sgpr10_sgpr11, 1, 2, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)41    ; GFX12-ERR: - operand 4:   renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr742    ; GFX12-ERR: $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 is not a VReg_192 register.43    renamable $vgpr27 = IMAGE_SAMPLE_D_V1_V9_gfx12 renamable $vgpr0, renamable $vgpr1, renamable $vgpr2, renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, renamable $sgpr8_sgpr9_sgpr10_sgpr11, 1, 2, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)44 45    ; GFX12-ERR: *** Bad machine code: Operand has incorrect register class. ***46    ; GFX12-ERR: - instruction: renamable $vgpr28 = IMAGE_SAMPLE_D_V1_V9_gfx12 renamable $vgpr0, renamable $vgpr1, renamable $vgpr2, renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9, renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, renamable $sgpr8_sgpr9_sgpr10_sgpr11, 1, 2, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)47    ; GFX12-ERR: *** Bad machine code: Illegal physical register for instruction ***48    ; GFX12-ERR: - instruction: renamable $vgpr28 = IMAGE_SAMPLE_D_V1_V9_gfx12 renamable $vgpr0, renamable $vgpr1, renamable $vgpr2, renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9, renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, renamable $sgpr8_sgpr9_sgpr10_sgpr11, 1, 2, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)49    ; GFX12-ERR: - operand 4:   renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr950    ; GFX12-ERR: $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9 is not a VReg_192 register.51    renamable $vgpr28 = IMAGE_SAMPLE_D_V1_V9_gfx12 renamable $vgpr0, renamable $vgpr1, renamable $vgpr2, renamable $vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9, renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, renamable $sgpr8_sgpr9_sgpr10_sgpr11, 1, 2, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)52 53    ; GFX12-ERR: *** Bad machine code: dim is out of range ***54    ; GFX12-ERR: - instruction: renamable $vgpr29 = IMAGE_LOAD_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 1, 8, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)55    renamable $vgpr29 = IMAGE_LOAD_V1_V1_gfx12 killed renamable $vgpr0, killed renamable $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7, 1, 8, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s128), addrspace 7)56 57...58 59# GFX12-ERR-NOT: *** Bad machine code60