[llvm] [AMDGPU] Update sendmsg types for GFX12 (PR #74888)
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 8 13:10:56 PST 2023
https://github.com/jayfoad created https://github.com/llvm/llvm-project/pull/74888
None
>From c9a98be630903e180df7cf4c7b0c7ce5c119ea74 Mon Sep 17 00:00:00 2001
From: Jay Foad <jay.foad at amd.com>
Date: Wed, 25 Jan 2023 14:52:24 +0000
Subject: [PATCH] [AMDGPU] Update sendmsg types for GFX12
---
llvm/lib/Target/AMDGPU/SIDefines.h | 5 +-
.../Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp | 5 +-
llvm/test/MC/AMDGPU/gfx12_asm_sop1.s | 3 +
llvm/test/MC/AMDGPU/sopp-err.s | 107 ++++++++++--------
.../Disassembler/AMDGPU/gfx12_dasm_sop1.txt | 3 +
5 files changed, 69 insertions(+), 54 deletions(-)
diff --git a/llvm/lib/Target/AMDGPU/SIDefines.h b/llvm/lib/Target/AMDGPU/SIDefines.h
index 47dc59e77dc4e7..29397e109706a0 100644
--- a/llvm/lib/Target/AMDGPU/SIDefines.h
+++ b/llvm/lib/Target/AMDGPU/SIDefines.h
@@ -413,8 +413,8 @@ enum Id { // Message ID, width(4) [3:0].
ID_DEALLOC_VGPRS_GFX11Plus = 3, // reused in GFX11
ID_SAVEWAVE = 4, // added in GFX8, removed in GFX11
- ID_STALL_WAVE_GEN = 5, // added in GFX9
- ID_HALT_WAVES = 6, // added in GFX9
+ ID_STALL_WAVE_GEN = 5, // added in GFX9, removed in GFX12
+ ID_HALT_WAVES = 6, // added in GFX9, removed in GFX12
ID_ORDERED_PS_DONE = 7, // added in GFX9, removed in GFX11
ID_EARLY_PRIM_DEALLOC = 8, // added in GFX9, removed in GFX10
ID_GS_ALLOC_REQ = 9, // added in GFX9
@@ -428,6 +428,7 @@ enum Id { // Message ID, width(4) [3:0].
ID_RTN_GET_REALTIME = 131,
ID_RTN_SAVE_WAVE = 132,
ID_RTN_GET_TBA = 133,
+ ID_RTN_GET_SE_AID_ID = 134,
ID_MASK_PreGFX11_ = 0xF,
ID_MASK_GFX11Plus_ = 0xFF
diff --git a/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp b/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
index 403efd6ffed35e..a751efdc753f14 100644
--- a/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
+++ b/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
@@ -42,8 +42,8 @@ const CustomOperand<const MCSubtargetInfo &> Msg[] = {
{{"MSG_GS"}, ID_GS_PreGFX11, isNotGFX11Plus},
{{"MSG_GS_DONE"}, ID_GS_DONE_PreGFX11, isNotGFX11Plus},
{{"MSG_SAVEWAVE"}, ID_SAVEWAVE, isGFX8_GFX9_GFX10},
- {{"MSG_STALL_WAVE_GEN"}, ID_STALL_WAVE_GEN, isGFX9Plus},
- {{"MSG_HALT_WAVES"}, ID_HALT_WAVES, isGFX9Plus},
+ {{"MSG_STALL_WAVE_GEN"}, ID_STALL_WAVE_GEN, isGFX9_GFX10_GFX11},
+ {{"MSG_HALT_WAVES"}, ID_HALT_WAVES, isGFX9_GFX10_GFX11},
{{"MSG_ORDERED_PS_DONE"}, ID_ORDERED_PS_DONE, isGFX9_GFX10},
{{"MSG_EARLY_PRIM_DEALLOC"}, ID_EARLY_PRIM_DEALLOC, isGFX9_GFX10},
{{"MSG_GS_ALLOC_REQ"}, ID_GS_ALLOC_REQ, isGFX9Plus},
@@ -59,6 +59,7 @@ const CustomOperand<const MCSubtargetInfo &> Msg[] = {
{{"MSG_RTN_GET_REALTIME"}, ID_RTN_GET_REALTIME, isGFX11Plus},
{{"MSG_RTN_SAVE_WAVE"}, ID_RTN_SAVE_WAVE, isGFX11Plus},
{{"MSG_RTN_GET_TBA"}, ID_RTN_GET_TBA, isGFX11Plus},
+ {{"MSG_RTN_GET_SE_AID_ID"}, ID_RTN_GET_SE_AID_ID, isGFX12Plus},
};
// NOLINTEND
diff --git a/llvm/test/MC/AMDGPU/gfx12_asm_sop1.s b/llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
index 494b8399a26fb5..db166e8ffc104f 100644
--- a/llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
+++ b/llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
@@ -3648,6 +3648,9 @@ s_sendmsg_rtn_b32 s0, sendmsg(MSG_RTN_SAVE_WAVE)
s_sendmsg_rtn_b32 s0, sendmsg(MSG_RTN_GET_TBA)
// GFX12: encoding: [0x85,0x4c,0x80,0xbe]
+s_sendmsg_rtn_b32 s0, sendmsg(MSG_RTN_GET_SE_AID_ID)
+// GFX12: encoding: [0x86,0x4c,0x80,0xbe]
+
s_ctz_i32_b32 s5, s1
// GFX12: encoding: [0x01,0x08,0x85,0xbe]
diff --git a/llvm/test/MC/AMDGPU/sopp-err.s b/llvm/test/MC/AMDGPU/sopp-err.s
index c7f28faa55763b..bd044cb7434025 100644
--- a/llvm/test/MC/AMDGPU/sopp-err.s
+++ b/llvm/test/MC/AMDGPU/sopp-err.s
@@ -2,7 +2,8 @@
// RUN: not llvm-mc -triple=amdgcn -mcpu=tahiti %s 2>&1 | FileCheck --check-prefixes=GCN,PREGFX11,SICI,SICIVI --implicit-check-not=error: %s
// RUN: not llvm-mc -triple=amdgcn -mcpu=fiji %s 2>&1 | FileCheck --check-prefixes=GCN,PREGFX11,VI,SICIVI --implicit-check-not=error: %s
// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1010 %s 2>&1 | FileCheck --check-prefixes=GCN,PREGFX11,GFX10 --implicit-check-not=error: %s
-// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1100 %s 2>&1 | FileCheck --check-prefixes=GCN,GFX11 --implicit-check-not=error: %s
+// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1100 %s 2>&1 | FileCheck --check-prefixes=GCN,GFX11PLUS,GFX11 --implicit-check-not=error: %s
+// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1200 %s 2>&1 | FileCheck --check-prefixes=GCN,GFX11PLUS,GFX12 --implicit-check-not=error: %s
//===----------------------------------------------------------------------===//
// sendmsg
@@ -22,30 +23,30 @@ s_sendmsg sendmsg(MSG_INTERRUPT, 0, 0)
s_sendmsg sendmsg(MSG_GS)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: missing message operation
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS, GS_OP_NOP)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operation id
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS, SYSMSG_OP_ECC_ERR_INTERRUPT)
// GCN: :[[@LINE-1]]:{{[0-9]+}}: error: expected an operation name or an absolute expression
s_sendmsg sendmsg(MSG_GS, 0)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operation id
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS, -1)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operation id
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS, 4)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operation id
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS, 8)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operation id
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(15, -1)
// GCN: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operation id
@@ -67,7 +68,7 @@ s_sendmsg sendmsg(MSG_GS, 1 -)
s_sendmsg sendmsg(MSG_GS, GS_OP_CUT, 4)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: invalid message stream id
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS, GS_OP_CUT, 1 -)
// GCN: :[[@LINE-1]]:{{[0-9]+}}: error: unknown token in expression
@@ -86,11 +87,11 @@ s_sendmsg sendmsg(2, 2, 0, 0)
s_sendmsg sendmsg(MSG_GS_DONE, GS_OP_NOP, 0)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: message operation does not support streams
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS_DONE, 0, 0)
// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: message operation does not support streams
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_HS_TESSFACTOR)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
@@ -104,25 +105,27 @@ s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
s_sendmsg sendmsg(MSG_SAVEWAVE)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_STALL_WAVE_GEN)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX12: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_HALT_WAVES)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX12: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_ORDERED_PS_DONE)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
-// GFX11: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_EARLY_PRIM_DEALLOC)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
-// GFX11: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GS_ALLOC_REQ)
// VI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
@@ -132,17 +135,17 @@ s_sendmsg sendmsg(MSG_GS_ALLOC_REQ, 0)
// VI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// SICI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// GFX10: :[[@LINE-3]]:{{[0-9]+}}: error: message does not support operations
-// GFX11: :[[@LINE-4]]:{{[0-9]+}}: error: message does not support operations
+// GFX11PLUS: :[[@LINE-4]]:{{[0-9]+}}: error: message does not support operations
s_sendmsg sendmsg(MSG_GET_DOORBELL)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
-// GFX11: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_GET_DDID)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
-// GFX11: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11PLUS: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
s_sendmsg sendmsg(MSG_RTN_GET_DOORBELL)
// SICI: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
@@ -174,6 +177,10 @@ s_sendmsg sendmsg(MSG_RTN_GET_TBA)
// VI: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
// GFX10: :[[@LINE-3]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+s_sendmsg sendmsg(MSG_RTN_GET_SE_AID_ID)
+// PREGFX11: :[[@LINE-1]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: specified message id is not supported on this GPU
+
s_sendmsg sendmsg(-1)
// GCN: :[[@LINE-1]]:{{[0-9]+}}: error: invalid message id
@@ -252,12 +259,12 @@ s_waitcnt vmcnt(0
s_waitcnt_depctr 65536
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr -32769
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_hold_cnt(0)
@@ -266,162 +273,162 @@ s_waitcnt_depctr depctr_hold_cnt(0)
s_waitcnt_depctr depctr_sa_sdst(-1)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_sa_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_sa_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_sa_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vdst(-1)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_vdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(-1)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_ssrc(-1)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_ssrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_ssrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_ssrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vcc(-1)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_vcc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vcc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vcc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(-1)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_vm_vsrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_vm_vsrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_vm_vsrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_sa_sdst(2)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_sa_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_sa_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_sa_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vdst(16)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_vdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(8)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_ssrc(2)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_ssrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_ssrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_ssrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vcc(2)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_va_vcc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vcc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_va_vcc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(8)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid value for depctr_vm_vsrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_vm_vsrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid value for depctr_vm_vsrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_(8)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: invalid counter name depctr_vm_
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: invalid counter name depctr_vm_
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: invalid counter name depctr_vm_
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_sa_sdst(0) depctr_sa_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_sa_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_sa_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_sa_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vdst(0) depctr_va_vdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(0) depctr_va_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_va_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_ssrc(0) depctr_va_ssrc(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_va_ssrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_ssrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_ssrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vcc(0) depctr_va_vcc(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vcc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vcc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vcc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(0) depctr_vm_vsrc(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_vm_vsrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_vm_vsrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_vm_vsrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_sa_sdst(0) depctr_va_sdst(0) depctr_sa_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_sa_sdst
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_sa_sdst
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_sa_sdst
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_ssrc(0) depctr_va_sdst(0) depctr_va_ssrc(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_va_ssrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_ssrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_ssrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_vcc(0) depctr_va_vcc(0) depctr_va_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vcc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vcc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_va_vcc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(0) depctr_vm_vsrc(0) depctr_va_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: duplicate counter name depctr_vm_vsrc
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_vm_vsrc
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: duplicate counter name depctr_vm_vsrc
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(0) depctr_vm_vsrc 0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a left parenthesis
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a left parenthesis
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a left parenthesis
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(0) 0depctr_vm_vsrc(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a counter name
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(0) depctr_vm_vsrc(x)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected absolute expression
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected absolute expression
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected absolute expression
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_va_sdst(0) depctr_vm_vsrc(0; & depctr_va_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a closing parenthesis
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a closing parenthesis
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a closing parenthesis
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc 0) depctr_vm_vsrc(0) depctr_va_sdst(0)
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected absolute expression
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected absolute expression
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected absolute expression
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(0) ,
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a counter name
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(0) , &
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a counter name
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(0) &
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a counter name
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
s_waitcnt_depctr depctr_vm_vsrc(0) & &
// GFX10: :[[@LINE-1]]:{{[0-9]+}}: error: expected a counter name
-// GFX11: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
+// GFX11PLUS: :[[@LINE-2]]:{{[0-9]+}}: error: expected a counter name
// SICIVI: :[[@LINE-3]]:{{[0-9]+}}: error: instruction not supported on this GPU
//===----------------------------------------------------------------------===//
diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
index 7029f090faa4b9..c061462339b66c 100644
--- a/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
+++ b/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
@@ -3219,6 +3219,9 @@
# GFX12: s_sendmsg_rtn_b32 s0, sendmsg(MSG_RTN_GET_TBA) ; encoding: [0x85,0x4c,0x80,0xbe]
0x85,0x4c,0x80,0xbe
+# GFX12: s_sendmsg_rtn_b32 s0, sendmsg(MSG_RTN_GET_SE_AID_ID) ; encoding: [0x86,0x4c,0x80,0xbe]
+0x86,0x4c,0x80,0xbe
+
# GFX12: s_setpc_b64 s[0:1] ; encoding: [0x00,0x48,0x80,0xbe]
0x00,0x48,0x80,0xbe
More information about the llvm-commits
mailing list