[llvm] AMDGPU: Add codegen for atomicrmw operations usub_cond and usub_sat (PR #141068)

via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 24 07:35:26 PDT 2025


================
@@ -1089,7 +1089,31 @@ multiclass DSAtomicRetNoRetPat_mc<DS_Pseudo inst, DS_Pseudo noRetInst,
   }
 }
 
+multiclass DSAtomicRetNoRetPatCondSub_mc<DS_Pseudo inst, DS_Pseudo noRetInst,
+                                         ValueType vt, string frag> {
+  let OtherPredicates = [LDSRequiresM0Init] in {
+    def : DSAtomicRetPat<inst, vt,
+                         !cast<PatFrag>(frag#"_local_m0_"#vt)>;
+    def : DSAtomicRetPat<noRetInst, vt,
+                         !cast<PatFrag>(frag#"_local_m0_noret_"#vt), /* complexity */ 1>;
+  }
+
----------------
anjenner wrote:

I have now removed DSAtomicRetNoRetPatCondSub_mc from the latest version of my patch as it was the same as DSAtomicRetNoRetPat_mc - I think it's best to just use DSAtomicRetNoRetPat_mc here.

https://github.com/llvm/llvm-project/pull/141068


More information about the llvm-commits mailing list