aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetPassConfig.cpp
diff options
context:
space:
mode:
authorRahul Joshi <rjoshi@nvidia.com>2025-04-21 12:36:34 -0700
committerGitHub <noreply@github.com>2025-04-21 12:36:34 -0700
commit99e4b3927c5b8700b818ca2436f3c8394245e97c (patch)
treec8bd780452d1450730a303cbc48f3bc038ae8a39 /llvm/lib/CodeGen/TargetPassConfig.cpp
parent4b98955680e0aad33cad0e810f1daaa8bc7c0a23 (diff)
downloadllvm-99e4b3927c5b8700b818ca2436f3c8394245e97c.zip
llvm-99e4b3927c5b8700b818ca2436f3c8394245e97c.tar.gz
llvm-99e4b3927c5b8700b818ca2436f3c8394245e97c.tar.bz2
[LLVM] Cleanup pass initialization for Analysis passes (#135858)
- Do not call pass initialization from pass constructors. - Instead, pass initialization should happen in the `initializeAnalysis` function. - https://github.com/llvm/llvm-project/issues/111767
Diffstat (limited to 'llvm/lib/CodeGen/TargetPassConfig.cpp')
-rw-r--r--llvm/lib/CodeGen/TargetPassConfig.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/TargetPassConfig.cpp b/llvm/lib/CodeGen/TargetPassConfig.cpp
index 1bf6621..0095ce3 100644
--- a/llvm/lib/CodeGen/TargetPassConfig.cpp
+++ b/llvm/lib/CodeGen/TargetPassConfig.cpp
@@ -584,17 +584,18 @@ TargetPassConfig::TargetPassConfig(TargetMachine &TM, PassManagerBase &PM)
: ImmutablePass(ID), PM(&PM), TM(&TM) {
Impl = new PassConfigImpl();
+ PassRegistry &PR = *PassRegistry::getPassRegistry();
// Register all target independent codegen passes to activate their PassIDs,
// including this pass itself.
- initializeCodeGen(*PassRegistry::getPassRegistry());
+ initializeCodeGen(PR);
// Also register alias analysis passes required by codegen passes.
- initializeBasicAAWrapperPassPass(*PassRegistry::getPassRegistry());
- initializeAAResultsWrapperPassPass(*PassRegistry::getPassRegistry());
+ initializeBasicAAWrapperPassPass(PR);
+ initializeAAResultsWrapperPassPass(PR);
- if (EnableIPRA.getNumOccurrences())
+ if (EnableIPRA.getNumOccurrences()) {
TM.Options.EnableIPRA = EnableIPRA;
- else {
+ } else {
// If not explicitly specified, use target default.
TM.Options.EnableIPRA |= TM.useIPRA();
}