[llvm] AMDGPU: share LDS budget logic and add experimental LDS buffering pass (PR #166388)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 4 17:58:48 PST 2025


================
@@ -270,6 +270,21 @@ struct AMDGPUPromoteAllocaToVectorPass
   TargetMachine &TM;
 };
 
+// Buffer selected per-thread global memory through LDS to improve
+// performance in memory-bound kernels. This runs late and is separate
+// from alloca promotion.
+struct AMDGPULDSBufferingPass : PassInfoMixin<AMDGPULDSBufferingPass> {
+  AMDGPULDSBufferingPass(const TargetMachine &TM) : TM(TM) {}
+  PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
+
+private:
+  const TargetMachine &TM;
----------------
arsenm wrote:

Use target subclass 

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


More information about the llvm-commits mailing list