Skip to content

Commit 36dece0

Browse files
authored
[AMDGPU] Add missing GFX10 buffer format d16 hi instructions (llvm#84809)
1 parent 8e0f4b9 commit 36dece0

File tree

3 files changed

+14
-3
lines changed

3 files changed

+14
-3
lines changed

llvm/lib/Target/AMDGPU/BUFInstructions.td

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2691,9 +2691,8 @@ defm BUFFER_LOAD_SBYTE_D16 : MUBUF_Real_AllAddr_gfx10<0x022>;
26912691
defm BUFFER_LOAD_SBYTE_D16_HI : MUBUF_Real_AllAddr_gfx10<0x023>;
26922692
defm BUFFER_LOAD_SHORT_D16 : MUBUF_Real_AllAddr_gfx10<0x024>;
26932693
defm BUFFER_LOAD_SHORT_D16_HI : MUBUF_Real_AllAddr_gfx10<0x025>;
2694-
// FIXME-GFX10: Add following instructions:
2695-
//defm BUFFER_LOAD_FORMAT_D16_HI_X : MUBUF_Real_AllAddr_gfx10<0x026>;
2696-
//defm BUFFER_STORE_FORMAT_D16_HI_X : MUBUF_Real_AllAddr_gfx10<0x027>;
2694+
defm BUFFER_LOAD_FORMAT_D16_HI_X : MUBUF_Real_AllAddr_gfx10<0x026>;
2695+
defm BUFFER_STORE_FORMAT_D16_HI_X : MUBUF_Real_AllAddr_gfx10<0x027>;
26972696
defm BUFFER_LOAD_FORMAT_D16_X : MUBUF_Real_AllAddr_gfx10<0x080>;
26982697
defm BUFFER_LOAD_FORMAT_D16_XY : MUBUF_Real_AllAddr_gfx10<0x081>;
26992698
defm BUFFER_LOAD_FORMAT_D16_XYZ : MUBUF_Real_AllAddr_gfx10<0x082>;

llvm/test/MC/AMDGPU/gfx10_asm_mubuf.s

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ buffer_load_format_d16_xyz v[1:2], off, s[4:7], s1
1717
buffer_load_format_d16_xyzw v[1:2], off, s[4:7], s1
1818
// GFX10: encoding: [0x00,0x00,0x0c,0xe2,0x00,0x01,0x01,0x01]
1919

20+
buffer_load_format_d16_hi_x v1, off, s[4:7], s1
21+
// GFX10: encoding: [0x00,0x00,0x98,0xe0,0x00,0x01,0x01,0x01]
22+
2023
buffer_load_format_x v5, off, s[8:11], s3 offset:4095
2124
// GFX10: encoding: [0xff,0x0f,0x00,0xe0,0x00,0x05,0x02,0x03]
2225

@@ -245,6 +248,9 @@ buffer_store_format_d16_xyz v[1:2], off, s[4:7], s1
245248
buffer_store_format_d16_xyzw v[1:2], off, s[4:7], s1
246249
// GFX10: encoding: [0x00,0x00,0x1c,0xe2,0x00,0x01,0x01,0x01]
247250

251+
buffer_store_format_d16_hi_x v1, off, s[4:7], s1
252+
// GFX10: encoding: [0x00,0x00,0x9c,0xe0,0x00,0x01,0x01,0x01]
253+
248254
buffer_store_format_x v1, off, s[12:15], s4 offset:4095
249255
// GFX10: encoding: [0xff,0x0f,0x10,0xe0,0x00,0x01,0x03,0x04]
250256

llvm/test/MC/Disassembler/AMDGPU/gfx10_mubuf.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1328,6 +1328,9 @@
13281328
# GFX10: buffer_load_format_d16_xyzw v[1:2], off, s[4:7], s1 ; encoding: [0x00,0x00,0x0c,0xe2,0x00,0x01,0x01,0x01]
13291329
0x00,0x00,0x0c,0xe2,0x00,0x01,0x01,0x01
13301330

1331+
# GFX10: buffer_load_format_d16_hi_x v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x98,0xe0,0x00,0x01,0x01,0x01]
1332+
0x00,0x00,0x98,0xe0,0x00,0x01,0x01,0x01
1333+
13311334
# GFX10: buffer_load_format_x v255, off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0x00,0xe0,0x00,0xff,0x02,0x03]
13321335
0xff,0x0f,0x00,0xe0,0x00,0xff,0x02,0x03
13331336

@@ -2039,6 +2042,9 @@
20392042
# GFX10: buffer_store_format_d16_xyzw v[1:2], off, s[4:7], s1 ; encoding: [0x00,0x00,0x1c,0xe2,0x00,0x01,0x01,0x01]
20402043
0x00,0x00,0x1c,0xe2,0x00,0x01,0x01,0x01
20412044

2045+
# GFX10: buffer_store_format_d16_hi_x v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x9c,0xe0,0x00,0x01,0x01,0x01]
2046+
0x00,0x00,0x9c,0xe0,0x00,0x01,0x01,0x01
2047+
20422048
# GFX10: buffer_store_format_x v1, off, s[12:15], -1 offset:4095 ; encoding: [0xff,0x0f,0x10,0xe0,0x00,0x01,0x03,0xc1]
20432049
0xff,0x0f,0x10,0xe0,0x00,0x01,0x03,0xc1
20442050

0 commit comments

Comments
 (0)