From 94f73fd6f834b3c67dc29249f54931c54dbe14c7 Mon Sep 17 00:00:00 2001 From: Matt Arsenault Date: Mon, 28 Nov 2022 15:34:12 -0500 Subject: [PATCH] AMDGPU: Code simplification for ctor/dtor lowering Move the shared global variable lookup into the function. --- llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp b/llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp index 8fcf669..40476ce 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp @@ -49,7 +49,8 @@ public: return InitOrFiniKernel; } - bool createInitOrFiniKernel(Module &M, GlobalVariable *GV, bool IsCtor) { + bool createInitOrFiniKernel(Module &M, StringRef GlobalName, bool IsCtor) { + GlobalVariable *GV = M.getGlobalVariable(GlobalName); if (!GV || !GV->hasInitializer()) return false; ConstantArray *GA = dyn_cast(GV->getInitializer()); @@ -85,11 +86,7 @@ ModulePass *llvm::createAMDGPUCtorDtorLoweringPass() { bool AMDGPUCtorDtorLowering::runOnModule(Module &M) { bool Modified = false; - Modified |= - createInitOrFiniKernel(M, M.getGlobalVariable("llvm.global_ctors"), - /*IsCtor =*/true); - Modified |= - createInitOrFiniKernel(M, M.getGlobalVariable("llvm.global_dtors"), - /*IsCtor =*/false); + Modified |= createInitOrFiniKernel(M, "llvm.global_ctors", /*IsCtor =*/true); + Modified |= createInitOrFiniKernel(M, "llvm.global_dtors", /*IsCtor =*/false); return Modified; } -- 2.7.4