[llvm] [AMDGPU] Add amdgpu-sw-lower-lds pass to NPM codegen addIRPasses. (PR #124102)

via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 23 21:05:23 PST 2025


https://github.com/skc7 updated https://github.com/llvm/llvm-project/pull/124102

>From 73dbcc30dfa9e33b60cfc814117849b428f7ae0e Mon Sep 17 00:00:00 2001
From: skc7 <Krishna.Sankisa at amd.com>
Date: Thu, 23 Jan 2025 16:58:27 +0530
Subject: [PATCH] [AMDGPU] Add amdgpu-sw-lower-lds pass to NPM codegen
 addIRPasses.

---
 llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp                 | 3 +++
 .../test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-lds-test.ll | 1 +
 2 files changed, 4 insertions(+)

diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
index 3fe17457cb3606..b616e81e4b15e7 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
@@ -1950,6 +1950,9 @@ void AMDGPUCodeGenPassBuilder::addIRPasses(AddIRPass &addPass) const {
 
   addPass(AMDGPUOpenCLEnqueuedBlockLoweringPass());
 
+  if (EnableSwLowerLDS)
+    addPass(AMDGPUSwLowerLDSPass(TM));
+
   // Runs before PromoteAlloca so the latter can account for function uses
   if (EnableLowerModuleLDS)
     addPass(AMDGPULowerModuleLDSPass(TM));
diff --git a/llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-lds-test.ll b/llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-lds-test.ll
index 806a4aa70edcfa..066b9429425ac7 100644
--- a/llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-lds-test.ll
+++ b/llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-lds-test.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --check-globals all --version 4
 ; RUN: opt < %s -passes=amdgpu-sw-lower-lds -S -amdgpu-asan-instrument-lds=false -mtriple=amdgcn-amd-amdhsa | FileCheck %s
+; RUN: llc < %s -enable-new-pm -stop-after=amdgpu-sw-lower-lds -amdgpu-asan-instrument-lds=false -mtriple=amdgcn-amd-amdhsa | FileCheck %s
 
 ; Test to check if static LDS accesses in kernel are lowered correctly.
 @lds_1 = internal addrspace(3) global [1 x i8] poison, align 4



More information about the llvm-commits mailing list