Skip to content

Commit 8e293fe

Browse files
committed
[NewPM][AMDGPU] Pass TargetMachine to AMDGPUSimplifyLibCallsPass
Missed in https://reviews.llvm.org/D93863.
1 parent aa16903 commit 8e293fe

File tree

4 files changed

+8
-3
lines changed

4 files changed

+8
-3
lines changed

llvm/lib/Target/AMDGPU/AMDGPU.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,11 @@ FunctionPass *createAMDGPURewriteOutArgumentsPass();
7777
FunctionPass *createSIModeRegisterPass();
7878

7979
struct AMDGPUSimplifyLibCallsPass : PassInfoMixin<AMDGPUSimplifyLibCallsPass> {
80+
AMDGPUSimplifyLibCallsPass(TargetMachine &TM) : TM(TM) {}
8081
PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
82+
83+
private:
84+
TargetMachine &TM;
8185
};
8286

8387
struct AMDGPUUseNativeCallsPass : PassInfoMixin<AMDGPUUseNativeCallsPass> {

llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1753,7 +1753,7 @@ bool AMDGPUSimplifyLibCalls::runOnFunction(Function &F) {
17531753

17541754
PreservedAnalyses AMDGPUSimplifyLibCallsPass::run(Function &F,
17551755
FunctionAnalysisManager &AM) {
1756-
AMDGPULibCalls Simplifier;
1756+
AMDGPULibCalls Simplifier(&TM);
17571757
Simplifier.initNativeFuncs();
17581758

17591759
bool Changed = false;

llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,7 @@ void AMDGPUTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB,
520520
[this](StringRef PassName, FunctionPassManager &PM,
521521
ArrayRef<PassBuilder::PipelineElement>) {
522522
if (PassName == "amdgpu-simplifylib") {
523-
PM.addPass(AMDGPUSimplifyLibCallsPass());
523+
PM.addPass(AMDGPUSimplifyLibCallsPass(*this));
524524
return true;
525525
}
526526
if (PassName == "amdgpu-usenative") {
@@ -566,7 +566,7 @@ void AMDGPUTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB,
566566
FPM.addPass(AMDGPUPropagateAttributesEarlyPass(*this));
567567
FPM.addPass(AMDGPUUseNativeCallsPass());
568568
if (EnableLibCallSimplify && Level != PassBuilder::OptimizationLevel::O0)
569-
FPM.addPass(AMDGPUSimplifyLibCallsPass());
569+
FPM.addPass(AMDGPUSimplifyLibCallsPass(*this));
570570
PM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
571571
});
572572

llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wavefrontsize.ll

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
; RUN: opt -O3 -S < %s | FileCheck -check-prefixes=OPT,OPT-WXX %s
66
; RUN: opt -mtriple=amdgcn-- -O3 -S < %s | FileCheck -check-prefixes=OPT,OPT-WXX %s
77
; RUN: opt -mtriple=amdgcn-- -O3 -mattr=+wavefrontsize32 -S < %s | FileCheck -check-prefixes=OPT,OPT-W32 %s
8+
; RUN: opt -mtriple=amdgcn-- -passes='default<O3>' -mattr=+wavefrontsize32 -S < %s | FileCheck -check-prefixes=OPT,OPT-W32 %s
89
; RUN: opt -mtriple=amdgcn-- -O3 -mattr=+wavefrontsize64 -S < %s | FileCheck -check-prefixes=OPT,OPT-W64 %s
910
; RUN: opt -mtriple=amdgcn-- -mcpu=tonga -O3 -S < %s | FileCheck -check-prefixes=OPT,OPT-W64 %s
1011
; RUN: opt -mtriple=amdgcn-- -mcpu=gfx1010 -O3 -mattr=+wavefrontsize32,-wavefrontsize64 -S < %s | FileCheck -check-prefixes=OPT,OPT-W32 %s

0 commit comments

Comments
 (0)