[llvm] 561af89 - [AMDGPU] Use a wrapper multiclass for buffer atomic intrinsic patterns. NFC
Abinav Puthan Purayil via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 22 01:30:02 PDT 2022
Author: Abinav Puthan Purayil
Date: 2022-04-22T13:59:34+05:30
New Revision: 561af89fed104c454831693d7965b64c8cee9db6
URL: https://github.com/llvm/llvm-project/commit/561af89fed104c454831693d7965b64c8cee9db6
DIFF: https://github.com/llvm/llvm-project/commit/561af89fed104c454831693d7965b64c8cee9db6.diff
LOG: [AMDGPU] Use a wrapper multiclass for buffer atomic intrinsic patterns. NFC
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 0d8a84ccd6289..f0e161691cfce 100644
--- a/llvm/lib/Target/AMDGPU/BUFInstructions.td
+++ b/llvm/lib/Target/AMDGPU/BUFInstructions.td
@@ -1404,6 +1404,10 @@ multiclass BufferAtomicPat<string OpPrefix, ValueType vt, string Inst, bit isInt
} // end foreach RtnMode
}
+multiclass BufferAtomicIntrPat<string OpPrefix, ValueType vt, string Inst> {
+ defm : BufferAtomicPat<OpPrefix, vt, Inst, /* isIntr */ 1>;
+}
+
multiclass BufferAtomicCmpSwapPat<ValueType vt, ValueType data_vt, string Inst> {
foreach RtnMode = ["ret", "noret"] in {
@@ -1593,9 +1597,9 @@ defm : BufferAtomicPatterns_NO_RTN<SIbuffer_atomic_fadd, v2f16, "BUFFER_ATOMIC_P
}
let SubtargetPredicate = isGFX90APlus in {
- defm : BufferAtomicPat<"int_amdgcn_global_atomic_fadd", f64, "BUFFER_ATOMIC_ADD_F64", 1>;
- defm : BufferAtomicPat<"int_amdgcn_global_atomic_fmin", f64, "BUFFER_ATOMIC_MIN_F64", 1>;
- defm : BufferAtomicPat<"int_amdgcn_global_atomic_fmax", f64, "BUFFER_ATOMIC_MAX_F64", 1>;
+ defm : BufferAtomicIntrPat<"int_amdgcn_global_atomic_fadd", f64, "BUFFER_ATOMIC_ADD_F64">;
+ defm : BufferAtomicIntrPat<"int_amdgcn_global_atomic_fmin", f64, "BUFFER_ATOMIC_MIN_F64">;
+ defm : BufferAtomicIntrPat<"int_amdgcn_global_atomic_fmax", f64, "BUFFER_ATOMIC_MAX_F64">;
defm : SIBufferAtomicPat<"SIbuffer_atomic_fadd", f32, "BUFFER_ATOMIC_ADD_F32">;
defm : SIBufferAtomicPat<"SIbuffer_atomic_fadd", v2f16, "BUFFER_ATOMIC_PK_ADD_F16">;
More information about the llvm-commits
mailing list