[llvm] 4693efe - [AMDGPU] Remove Base_MUBUF_Real_Atomic_gfx11. NFC. (#83994)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 5 03:58:20 PST 2024
Author: Jay Foad
Date: 2024-03-05T11:58:17Z
New Revision: 4693efe19c1cbb19ecac61e46802ffe74bd1a7ce
URL: https://github.com/llvm/llvm-project/commit/4693efe19c1cbb19ecac61e46802ffe74bd1a7ce
DIFF: https://github.com/llvm/llvm-project/commit/4693efe19c1cbb19ecac61e46802ffe74bd1a7ce.diff
LOG: [AMDGPU] Remove Base_MUBUF_Real_Atomic_gfx11. NFC. (#83994)
This class only existed to set the dlc bit for GFX11 atomics. It is
simpler to set dlc for all loads/stores/atomics in the base class.
Added:
Modified:
llvm/lib/Target/AMDGPU/BUFInstructions.td
Removed:
################################################################################
diff --git a/llvm/lib/Target/AMDGPU/BUFInstructions.td b/llvm/lib/Target/AMDGPU/BUFInstructions.td
index a2ff56d68218cd..20e91da4995b7b 100644
--- a/llvm/lib/Target/AMDGPU/BUFInstructions.td
+++ b/llvm/lib/Target/AMDGPU/BUFInstructions.td
@@ -2301,7 +2301,8 @@ class MUBUF_Real_gfx11<bits<8> op, MUBUF_Pseudo ps,
string real_name = ps.Mnemonic> :
Base_MUBUF_Real_gfx6_gfx7_gfx10_gfx11<ps, SIEncodingFamily.GFX11, real_name> {
let Inst{12} = !if(ps.has_slc, cpol{CPolBit.SLC}, ?);
- let Inst{13} = !if(ps.has_dlc, cpol{CPolBit.DLC}, ps.dlc_value);
+ // In GFX11 dlc is applicable to all loads/stores/atomics.
+ let Inst{13} = !if(!or(ps.mayLoad, ps.mayStore), cpol{CPolBit.DLC}, ps.dlc_value);
let Inst{14} = !if(ps.has_glc, cpol{CPolBit.GLC}, ps.glc_value);
let Inst{25-18} = op;
let Inst{53} = ps.tfe;
@@ -2311,12 +2312,6 @@ class MUBUF_Real_gfx11<bits<8> op, MUBUF_Pseudo ps,
let DecoderNamespace = "GFX11";
}
-class Base_MUBUF_Real_Atomic_gfx11<bits<8> op, MUBUF_Pseudo ps,
- string real_name> :
- MUBUF_Real_gfx11<op, ps, real_name> {
- let Inst{13} = cpol{CPolBit.DLC};
-}
-
class Base_MUBUF_Real_gfx6_gfx7_gfx10<bits<7> op, MUBUF_Pseudo ps, int ef> :
Base_MUBUF_Real_gfx6_gfx7_gfx10_gfx11<ps, ef> {
let Inst{12} = ps.offen;
@@ -2499,7 +2494,7 @@ multiclass MUBUF_Real_AllAddr_gfx11_gfx12_Renamed<bits<8> op, string real_name>
class MUBUF_Real_Atomic_gfx11_impl<bits<8> op, string ps_name,
string real_name> :
- Base_MUBUF_Real_Atomic_gfx11<op, !cast<MUBUF_Pseudo>(ps_name), real_name>;
+ MUBUF_Real_gfx11<op, !cast<MUBUF_Pseudo>(ps_name), real_name>;
class MUBUF_Real_Atomic_gfx12_impl<bits<8> op, string ps_name,
string real_name> :
More information about the llvm-commits
mailing list