From db33978c467c6d794fc768e14a18abcc089e6ba5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juan=20Manuel=20Martinez=20Caama=C3=B1o?= Date: Tue, 25 Mar 2025 15:24:06 +0100 Subject: [PATCH] [AMDGPU][GFX11] buffer_load_lds_{size} instructions do not exist (#132916) According to the shader manual there are not buffer load lds instructions of gfx11. The tests for the regular `buffer_load ... lds` instructions for gfx11 are already present in AMDGPU/gfx11_asm_mubuf.s, where the compiler fails to encode the instructions for this target. --- llvm/docs/AMDGPU/AMDGPUAsmGFX11.rst | 6 - llvm/lib/Target/AMDGPU/BUFInstructions.td | 44 --- llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s | 345 ------------------ llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s | 18 - llvm/test/MC/AMDGPU/gfx12_unsupported.s | 18 - .../Disassembler/AMDGPU/gfx11_dasm_mubuf.txt | 342 ----------------- 6 files changed, 773 deletions(-) diff --git a/llvm/docs/AMDGPU/AMDGPUAsmGFX11.rst b/llvm/docs/AMDGPU/AMDGPUAsmGFX11.rst index c3eb05bdbd29..85e9c47a5c97 100644 --- a/llvm/docs/AMDGPU/AMDGPUAsmGFX11.rst +++ b/llvm/docs/AMDGPU/AMDGPUAsmGFX11.rst @@ -695,12 +695,6 @@ MUBUF buffer_load_format_xyzw :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` :ref:`tfe` buffer_load_i16 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` :ref:`tfe` buffer_load_i8 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` :ref:`tfe` - buffer_load_lds_b32 :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` - buffer_load_lds_format_x :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` - buffer_load_lds_i16 :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` - buffer_load_lds_i8 :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` - buffer_load_lds_u16 :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` - buffer_load_lds_u8 :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` buffer_load_sbyte :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` :ref:`tfe` buffer_load_sbyte_d16 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` :ref:`tfe` buffer_load_sbyte_d16_hi :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`offset12` :ref:`glc` :ref:`slc` :ref:`dlc` :ref:`tfe` diff --git a/llvm/lib/Target/AMDGPU/BUFInstructions.td b/llvm/lib/Target/AMDGPU/BUFInstructions.td index f2686bdf56b4..f4edfe138773 100644 --- a/llvm/lib/Target/AMDGPU/BUFInstructions.td +++ b/llvm/lib/Target/AMDGPU/BUFInstructions.td @@ -588,25 +588,6 @@ multiclass MUBUF_Pseudo_Loads_Lds { - - defvar legal_load_vt = !if(!eq(!cast(load_vt), !cast(v3f16)), v4f16, load_vt); - - def _OFFSET : MUBUF_Load_Pseudo ; - def _OFFEN : MUBUF_Load_Pseudo ; - def _IDXEN : MUBUF_Load_Pseudo ; - def _BOTHEN : MUBUF_Load_Pseudo ; - - def _VBUFFER_OFFSET : MUBUF_Load_Pseudo ; - def _VBUFFER_OFFEN : MUBUF_Load_Pseudo ; - def _VBUFFER_IDXEN : MUBUF_Load_Pseudo ; - def _VBUFFER_BOTHEN : MUBUF_Load_Pseudo ; -} - class MUBUF_Store_Pseudo ; -defm BUFFER_LOAD_LDS_B32 : MUBUF_Pseudo_Loads_LDSOpc < - "buffer_load_lds_b32", i32 ->; -defm BUFFER_LOAD_LDS_FORMAT_X : MUBUF_Pseudo_Loads_LDSOpc < - "buffer_load_lds_format_x", f32 ->; -defm BUFFER_LOAD_LDS_I8 : MUBUF_Pseudo_Loads_LDSOpc < - "buffer_load_lds_i8", i32 ->; -defm BUFFER_LOAD_LDS_I16 : MUBUF_Pseudo_Loads_LDSOpc < - "buffer_load_lds_i16", i32 ->; -defm BUFFER_LOAD_LDS_U8 : MUBUF_Pseudo_Loads_LDSOpc < - "buffer_load_lds_u8", i32 ->; -defm BUFFER_LOAD_LDS_U16 : MUBUF_Pseudo_Loads_LDSOpc < - "buffer_load_lds_u16", i32 ->; - defm : MUBUF_Pseudo_Load_Pats<"BUFFER_LOAD_UBYTE", i32, atomic_load_8_global>; defm : MUBUF_Pseudo_Load_Pats<"BUFFER_LOAD_UBYTE", i32, atomic_load_zext_8_global>; defm : MUBUF_Pseudo_Load_Pats<"BUFFER_LOAD_USHORT", i32, atomic_load_16_global>; @@ -2648,12 +2610,6 @@ defm BUFFER_LOAD_SBYTE : MUBUF_Real_AllAddr_gfx11_gfx12<0x011, "buffe defm BUFFER_LOAD_SSHORT : MUBUF_Real_AllAddr_gfx11_gfx12<0x013, "buffer_load_i16">; defm BUFFER_LOAD_UBYTE : MUBUF_Real_AllAddr_gfx11_gfx12<0x010, "buffer_load_u8">; defm BUFFER_LOAD_USHORT : MUBUF_Real_AllAddr_gfx11_gfx12<0x012, "buffer_load_u16">; -defm BUFFER_LOAD_LDS_B32 : MUBUF_Real_AllAddr_gfx11<0x031, 0>; -defm BUFFER_LOAD_LDS_FORMAT_X : MUBUF_Real_AllAddr_gfx11<0x032, 0>; -defm BUFFER_LOAD_LDS_I8 : MUBUF_Real_AllAddr_gfx11<0x02e, 0>; -defm BUFFER_LOAD_LDS_I16 : MUBUF_Real_AllAddr_gfx11<0x030, 0>; -defm BUFFER_LOAD_LDS_U8 : MUBUF_Real_AllAddr_gfx11<0x02d, 0>; -defm BUFFER_LOAD_LDS_U16 : MUBUF_Real_AllAddr_gfx11<0x02f, 0>; defm BUFFER_STORE_BYTE : MUBUF_Real_AllAddr_gfx11_gfx12<0x018, "buffer_store_b8">; defm BUFFER_STORE_SHORT : MUBUF_Real_AllAddr_gfx11_gfx12<0x019, "buffer_store_b16">; defm BUFFER_STORE_DWORD : MUBUF_Real_AllAddr_gfx11_gfx12<0x01A, "buffer_store_b32">; diff --git a/llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s b/llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s index 6dfb23771301..dfc017acfc57 100644 --- a/llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s +++ b/llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s @@ -1324,351 +1324,6 @@ buffer_load_u16 v5, off, s[8:11], s3 offset:4095 dlc buffer_load_u16 v5, off, s[8:11], s3 offset:4095 glc slc dlc // GFX11: encoding: [0xff,0x7f,0x48,0xe0,0x00,0x05,0x02,0x03] -buffer_load_lds_b32 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[12:15], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x03,0x03] - -buffer_load_lds_b32 off, s[96:99], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x18,0x03] - -buffer_load_lds_b32 off, s[8:11], s101 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x65] - -buffer_load_lds_b32 off, s[8:11], m0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x7d] - -buffer_load_lds_b32 off, s[8:11], 0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x80] - -buffer_load_lds_b32 off, s[8:11], -1 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xc1] - -buffer_load_lds_b32 off, s[8:11], 0.5 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xf0] - -buffer_load_lds_b32 off, s[8:11], -4.0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xf7] - -buffer_load_lds_b32 v0, s[8:11], s3 idxen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x82,0x03] - -buffer_load_lds_b32 v0, s[8:11], s3 offen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x42,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 -// GFX11: encoding: [0x00,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:0 -// GFX11: encoding: [0x00,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:7 -// GFX11: encoding: [0x07,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:4095 glc -// GFX11: encoding: [0xff,0x4f,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:4095 slc -// GFX11: encoding: [0xff,0x1f,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:4095 dlc -// GFX11: encoding: [0xff,0x2f,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 offset:4095 glc slc dlc -// GFX11: encoding: [0xff,0x7f,0xc4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_b32 off, s[8:11], s3 lds -// GFX11-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - -buffer_load_lds_format_x off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[12:15], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x03,0x03] - -buffer_load_lds_format_x off, s[96:99], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x18,0x03] - -buffer_load_lds_format_x off, s[8:11], s101 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x65] - -buffer_load_lds_format_x off, s[8:11], m0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x7d] - -buffer_load_lds_format_x off, s[8:11], 0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x80] - -buffer_load_lds_format_x off, s[8:11], -1 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xc1] - -buffer_load_lds_format_x off, s[8:11], 0.5 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xf0] - -buffer_load_lds_format_x off, s[8:11], -4.0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xf7] - -buffer_load_lds_format_x v0, s[8:11], s3 idxen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x82,0x03] - -buffer_load_lds_format_x v0, s[8:11], s3 offen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x42,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 -// GFX11: encoding: [0x00,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:0 -// GFX11: encoding: [0x00,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:7 -// GFX11: encoding: [0x07,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:4095 glc -// GFX11: encoding: [0xff,0x4f,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:4095 slc -// GFX11: encoding: [0xff,0x1f,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:4095 dlc -// GFX11: encoding: [0xff,0x2f,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_format_x off, s[8:11], s3 offset:4095 glc slc dlc -// GFX11: encoding: [0xff,0x7f,0xc8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[12:15], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x03,0x03] - -buffer_load_lds_i8 off, s[96:99], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x18,0x03] - -buffer_load_lds_i8 off, s[8:11], s101 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x65] - -buffer_load_lds_i8 off, s[8:11], m0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x7d] - -buffer_load_lds_i8 off, s[8:11], 0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x80] - -buffer_load_lds_i8 off, s[8:11], -1 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xc1] - -buffer_load_lds_i8 off, s[8:11], 0.5 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xf0] - -buffer_load_lds_i8 off, s[8:11], -4.0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xf7] - -buffer_load_lds_i8 v0, s[8:11], s3 idxen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x82,0x03] - -buffer_load_lds_i8 v0, s[8:11], s3 offen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x42,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 -// GFX11: encoding: [0x00,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:0 -// GFX11: encoding: [0x00,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:7 -// GFX11: encoding: [0x07,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:4095 glc -// GFX11: encoding: [0xff,0x4f,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:4095 slc -// GFX11: encoding: [0xff,0x1f,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:4095 dlc -// GFX11: encoding: [0xff,0x2f,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i8 off, s[8:11], s3 offset:4095 glc slc dlc -// GFX11: encoding: [0xff,0x7f,0xb8,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[12:15], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x03,0x03] - -buffer_load_lds_i16 off, s[96:99], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x18,0x03] - -buffer_load_lds_i16 off, s[8:11], s101 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x65] - -buffer_load_lds_i16 off, s[8:11], m0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x7d] - -buffer_load_lds_i16 off, s[8:11], 0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x80] - -buffer_load_lds_i16 off, s[8:11], -1 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xc1] - -buffer_load_lds_i16 off, s[8:11], 0.5 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xf0] - -buffer_load_lds_i16 off, s[8:11], -4.0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xf7] - -buffer_load_lds_i16 v0, s[8:11], s3 idxen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x82,0x03] - -buffer_load_lds_i16 v0, s[8:11], s3 offen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x42,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 -// GFX11: encoding: [0x00,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:0 -// GFX11: encoding: [0x00,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:7 -// GFX11: encoding: [0x07,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:4095 glc -// GFX11: encoding: [0xff,0x4f,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:4095 slc -// GFX11: encoding: [0xff,0x1f,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:4095 dlc -// GFX11: encoding: [0xff,0x2f,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_i16 off, s[8:11], s3 offset:4095 glc slc dlc -// GFX11: encoding: [0xff,0x7f,0xc0,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[12:15], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x03,0x03] - -buffer_load_lds_u8 off, s[96:99], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x18,0x03] - -buffer_load_lds_u8 off, s[8:11], s101 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x65] - -buffer_load_lds_u8 off, s[8:11], m0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x7d] - -buffer_load_lds_u8 off, s[8:11], 0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x80] - -buffer_load_lds_u8 off, s[8:11], -1 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xc1] - -buffer_load_lds_u8 off, s[8:11], 0.5 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xf0] - -buffer_load_lds_u8 off, s[8:11], -4.0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xf7] - -buffer_load_lds_u8 v0, s[8:11], s3 idxen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x82,0x03] - -buffer_load_lds_u8 v0, s[8:11], s3 offen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x42,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 -// GFX11: encoding: [0x00,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:0 -// GFX11: encoding: [0x00,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:7 -// GFX11: encoding: [0x07,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:4095 glc -// GFX11: encoding: [0xff,0x4f,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:4095 slc -// GFX11: encoding: [0xff,0x1f,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:4095 dlc -// GFX11: encoding: [0xff,0x2f,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u8 off, s[8:11], s3 offset:4095 glc slc dlc -// GFX11: encoding: [0xff,0x7f,0xb4,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[12:15], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x03,0x03] - -buffer_load_lds_u16 off, s[96:99], s3 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x18,0x03] - -buffer_load_lds_u16 off, s[8:11], s101 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x65] - -buffer_load_lds_u16 off, s[8:11], m0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x7d] - -buffer_load_lds_u16 off, s[8:11], 0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x80] - -buffer_load_lds_u16 off, s[8:11], -1 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xc1] - -buffer_load_lds_u16 off, s[8:11], 0.5 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xf0] - -buffer_load_lds_u16 off, s[8:11], -4.0 offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xf7] - -buffer_load_lds_u16 v0, s[8:11], s3 idxen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x82,0x03] - -buffer_load_lds_u16 v0, s[8:11], s3 offen offset:4095 -// GFX11: encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x42,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 -// GFX11: encoding: [0x00,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:0 -// GFX11: encoding: [0x00,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:7 -// GFX11: encoding: [0x07,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:4095 glc -// GFX11: encoding: [0xff,0x4f,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:4095 slc -// GFX11: encoding: [0xff,0x1f,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:4095 dlc -// GFX11: encoding: [0xff,0x2f,0xbc,0xe0,0x00,0x00,0x02,0x03] - -buffer_load_lds_u16 off, s[8:11], s3 offset:4095 glc slc dlc -// GFX11: encoding: [0xff,0x7f,0xbc,0xe0,0x00,0x00,0x02,0x03] - buffer_store_b8 v1, off, s[12:15], s4 offset:4095 // GFX11: encoding: [0xff,0x0f,0x60,0xe0,0x00,0x01,0x03,0x04] diff --git a/llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s b/llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s index d3d74467d809..8c0d17075318 100644 --- a/llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s +++ b/llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s @@ -156,24 +156,6 @@ buffer_load_i16 v3, v0, null, s1 offen offset:4095 buffer_load_i8 v3, v0, null, s1 offen offset:4095 // NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction -buffer_load_lds_b32 v3, v0, null, s1 offen offset:4095 -// NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - -buffer_load_lds_format_x v3, v0, null, s1 offen offset:4095 -// NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - -buffer_load_lds_i16 v3, v0, null, s1 offen offset:4095 -// NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - -buffer_load_lds_i8 v3, v0, null, s1 offen offset:4095 -// NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - -buffer_load_lds_u16 v3, v0, null, s1 offen offset:4095 -// NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - -buffer_load_lds_u8 v3, v0, null, s1 offen offset:4095 -// NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction - buffer_load_u16 v3, v0, null, s1 offen offset:4095 // NOGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction diff --git a/llvm/test/MC/AMDGPU/gfx12_unsupported.s b/llvm/test/MC/AMDGPU/gfx12_unsupported.s index c34cb9e29c19..c9c15e650701 100644 --- a/llvm/test/MC/AMDGPU/gfx12_unsupported.s +++ b/llvm/test/MC/AMDGPU/gfx12_unsupported.s @@ -246,21 +246,3 @@ flat_atomic_csub v1, v[0:1], v2 offset:64 th:TH_ATOMIC_RETURN ds_add_f32 v255, v255 offset:4 gds // CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: gds modifier is not supported on this GPU - -buffer_load_lds_b32 off, s[8:11], s3 -// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU - -buffer_load_lds_format_x off, s[8:11], s3 -// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU - -buffer_load_lds_i8 off, s[8:11], s3 -// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU - -buffer_load_lds_i16 off, s[8:11], s3 -// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU - -buffer_load_lds_u8 off, s[8:11], s3 -// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU - -buffer_load_lds_u16 off, s[8:11], s3 -// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mubuf.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mubuf.txt index 5f4d40a9f809..38fc50a2d8ea 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mubuf.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mubuf.txt @@ -1317,348 +1317,6 @@ # GFX11: buffer_load_u16 v5, off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0x48,0xe0,0x00,0x05,0x02,0x03] 0xff,0x7f,0x48,0xe0,0x00,0x05,0x02,0x03 -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x03,0x03] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x03,0x03 - -# GFX11: buffer_load_lds_b32 off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x18,0x03] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x18,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x65] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x65 - -# GFX11: buffer_load_lds_b32 off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x7d] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x7d - -# GFX11: buffer_load_lds_b32 off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x80] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0x80 - -# GFX11: buffer_load_lds_b32 off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xc1] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xc1 - -# GFX11: buffer_load_lds_b32 off, s[8:11], 0.5 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xf0] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xf0 - -# GFX11: buffer_load_lds_b32 off, s[8:11], -4.0 offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xf7] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x02,0xf7 - -# GFX11: buffer_load_lds_b32 v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x82,0x03] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x82,0x03 - -# GFX11: buffer_load_lds_b32 v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x0f,0xc4,0xe0,0x00,0x00,0x42,0x03] -0xff,0x0f,0xc4,0xe0,0x00,0x00,0x42,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 ; encoding: [0x00,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 ; encoding: [0x00,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03] -0x07,0x00,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:4095 glc ; encoding: [0xff,0x4f,0xc4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x4f,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x1f,0xc4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x1f,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:4095 dlc ; encoding: [0xff,0x2f,0xc4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x2f,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_b32 off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0xc4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x7f,0xc4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x03,0x03] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x03,0x03 - -# GFX11: buffer_load_lds_format_x off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x18,0x03] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x18,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x65] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x65 - -# GFX11: buffer_load_lds_format_x off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x7d] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x7d - -# GFX11: buffer_load_lds_format_x off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x80] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0x80 - -# GFX11: buffer_load_lds_format_x off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xc1] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xc1 - -# GFX11: buffer_load_lds_format_x off, s[8:11], 0.5 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xf0] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xf0 - -# GFX11: buffer_load_lds_format_x off, s[8:11], -4.0 offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xf7] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x02,0xf7 - -# GFX11: buffer_load_lds_format_x v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x82,0x03] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x82,0x03 - -# GFX11: buffer_load_lds_format_x v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x42,0x03] -0xff,0x0f,0xc8,0xe0,0x00,0x00,0x42,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 ; encoding: [0x00,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 ; encoding: [0x00,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03] -0x07,0x00,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:4095 glc ; encoding: [0xff,0x4f,0xc8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x4f,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x1f,0xc8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x1f,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:4095 dlc ; encoding: [0xff,0x2f,0xc8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x2f,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_format_x off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0xc8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x7f,0xc8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x03,0x03] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x03,0x03 - -# GFX11: buffer_load_lds_i8 off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x18,0x03] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x18,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x65] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x65 - -# GFX11: buffer_load_lds_i8 off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x7d] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x7d - -# GFX11: buffer_load_lds_i8 off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x80] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0x80 - -# GFX11: buffer_load_lds_i8 off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xc1] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xc1 - -# GFX11: buffer_load_lds_i8 off, s[8:11], 0.5 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xf0] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xf0 - -# GFX11: buffer_load_lds_i8 off, s[8:11], -4.0 offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xf7] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x02,0xf7 - -# GFX11: buffer_load_lds_i8 v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x82,0x03] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x82,0x03 - -# GFX11: buffer_load_lds_i8 v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x0f,0xb8,0xe0,0x00,0x00,0x42,0x03] -0xff,0x0f,0xb8,0xe0,0x00,0x00,0x42,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 ; encoding: [0x00,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 ; encoding: [0x00,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03] -0x07,0x00,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:4095 glc ; encoding: [0xff,0x4f,0xb8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x4f,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x1f,0xb8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x1f,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:4095 dlc ; encoding: [0xff,0x2f,0xb8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x2f,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i8 off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0xb8,0xe0,0x00,0x00,0x02,0x03] -0xff,0x7f,0xb8,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x03,0x03] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x03,0x03 - -# GFX11: buffer_load_lds_i16 off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x18,0x03] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x18,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x65] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x65 - -# GFX11: buffer_load_lds_i16 off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x7d] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x7d - -# GFX11: buffer_load_lds_i16 off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x80] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0x80 - -# GFX11: buffer_load_lds_i16 off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xc1] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xc1 - -# GFX11: buffer_load_lds_i16 off, s[8:11], 0.5 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xf0] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xf0 - -# GFX11: buffer_load_lds_i16 off, s[8:11], -4.0 offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xf7] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x02,0xf7 - -# GFX11: buffer_load_lds_i16 v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x82,0x03] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x82,0x03 - -# GFX11: buffer_load_lds_i16 v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x0f,0xc0,0xe0,0x00,0x00,0x42,0x03] -0xff,0x0f,0xc0,0xe0,0x00,0x00,0x42,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 ; encoding: [0x00,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 ; encoding: [0x00,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03] -0x07,0x00,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:4095 glc ; encoding: [0xff,0x4f,0xc0,0xe0,0x00,0x00,0x02,0x03] -0xff,0x4f,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x1f,0xc0,0xe0,0x00,0x00,0x02,0x03] -0xff,0x1f,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:4095 dlc ; encoding: [0xff,0x2f,0xc0,0xe0,0x00,0x00,0x02,0x03] -0xff,0x2f,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_i16 off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0xc0,0xe0,0x00,0x00,0x02,0x03] -0xff,0x7f,0xc0,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x03,0x03] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x03,0x03 - -# GFX11: buffer_load_lds_u8 off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x18,0x03] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x18,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x65] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x65 - -# GFX11: buffer_load_lds_u8 off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x7d] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x7d - -# GFX11: buffer_load_lds_u8 off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x80] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0x80 - -# GFX11: buffer_load_lds_u8 off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xc1] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xc1 - -# GFX11: buffer_load_lds_u8 off, s[8:11], 0.5 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xf0] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xf0 - -# GFX11: buffer_load_lds_u8 off, s[8:11], -4.0 offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xf7] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x02,0xf7 - -# GFX11: buffer_load_lds_u8 v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x82,0x03] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x82,0x03 - -# GFX11: buffer_load_lds_u8 v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x0f,0xb4,0xe0,0x00,0x00,0x42,0x03] -0xff,0x0f,0xb4,0xe0,0x00,0x00,0x42,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 ; encoding: [0x00,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 ; encoding: [0x00,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03] -0x07,0x00,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:4095 glc ; encoding: [0xff,0x4f,0xb4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x4f,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x1f,0xb4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x1f,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:4095 dlc ; encoding: [0xff,0x2f,0xb4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x2f,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u8 off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0xb4,0xe0,0x00,0x00,0x02,0x03] -0xff,0x7f,0xb4,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x03] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x03,0x03] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x03,0x03 - -# GFX11: buffer_load_lds_u16 off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x18,0x03] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x18,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x65] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x65 - -# GFX11: buffer_load_lds_u16 off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x7d] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x7d - -# GFX11: buffer_load_lds_u16 off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x80] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0x80 - -# GFX11: buffer_load_lds_u16 off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xc1] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xc1 - -# GFX11: buffer_load_lds_u16 off, s[8:11], 0.5 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xf0] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xf0 - -# GFX11: buffer_load_lds_u16 off, s[8:11], -4.0 offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xf7] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x02,0xf7 - -# GFX11: buffer_load_lds_u16 v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x82,0x03] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x82,0x03 - -# GFX11: buffer_load_lds_u16 v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x0f,0xbc,0xe0,0x00,0x00,0x42,0x03] -0xff,0x0f,0xbc,0xe0,0x00,0x00,0x42,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 ; encoding: [0x00,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 ; encoding: [0x00,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03] -0x00,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03] -0x07,0x00,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:4095 glc ; encoding: [0xff,0x4f,0xbc,0xe0,0x00,0x00,0x02,0x03] -0xff,0x4f,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x1f,0xbc,0xe0,0x00,0x00,0x02,0x03] -0xff,0x1f,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:4095 dlc ; encoding: [0xff,0x2f,0xbc,0xe0,0x00,0x00,0x02,0x03] -0xff,0x2f,0xbc,0xe0,0x00,0x00,0x02,0x03 - -# GFX11: buffer_load_lds_u16 off, s[8:11], s3 offset:4095 glc slc dlc ; encoding: [0xff,0x7f,0xbc,0xe0,0x00,0x00,0x02,0x03] -0xff,0x7f,0xbc,0xe0,0x00,0x00,0x02,0x03 - # GFX11: buffer_store_b8 v1, off, s[12:15], s4 offset:4095 ; encoding: [0xff,0x0f,0x60,0xe0,0x00,0x01,0x03,0x04] 0xff,0x0f,0x60,0xe0,0x00,0x01,0x03,0x04