[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