[llvm] [NewPM] Remove AAEval Legacy Pass (PR #71358)

Aiden Grossman via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 6 21:42:34 PST 2023


https://github.com/boomanaiden154 updated https://github.com/llvm/llvm-project/pull/71358

>From f8814d9293177eab37b80345f13a8a16faf41ca4 Mon Sep 17 00:00:00 2001
From: Aiden Grossman <agrossman154 at yahoo.com>
Date: Wed, 25 Oct 2023 21:21:52 -0700
Subject: [PATCH 1/2] [NewPM] Remove AAEval Legacy Pass

This patch removes the AAEval legacy pass and associated plumbing. This
pass was migrated over to the new pass manager about 11 years ago at
this point and there are currently no in-tree users of the legacy pass,
so it's essentially just dead code.
---
 .../llvm/Analysis/AliasAnalysisEvaluator.h    |  7 ----
 llvm/include/llvm/InitializePasses.h          |  1 -
 llvm/include/llvm/LinkAllPasses.h             |  1 -
 llvm/lib/Analysis/AliasAnalysisEvaluator.cpp  | 42 -------------------
 llvm/lib/Analysis/Analysis.cpp                |  1 -
 5 files changed, 52 deletions(-)

diff --git a/llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h b/llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h
index 113115b871448b2..20bcbc592afbdbf 100644
--- a/llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h
+++ b/llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h
@@ -54,15 +54,8 @@ class AAEvaluator : public PassInfoMixin<AAEvaluator> {
   PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
 
 private:
-  // Allow the legacy pass to run this using an internal API.
-  friend class AAEvalLegacyPass;
-
   void runInternal(Function &F, AAResults &AA);
 };
-
-/// Create a wrapper of the above for the legacy pass manager.
-FunctionPass *createAAEvalPass();
-
 }
 
 #endif
diff --git a/llvm/include/llvm/InitializePasses.h b/llvm/include/llvm/InitializePasses.h
index fafae8b5ecd7a7f..da38a38b87ebc4d 100644
--- a/llvm/include/llvm/InitializePasses.h
+++ b/llvm/include/llvm/InitializePasses.h
@@ -48,7 +48,6 @@ void initializeGlobalISel(PassRegistry&);
 /// Initialize all passes linked into the CodeGen library.
 void initializeTarget(PassRegistry&);
 
-void initializeAAEvalLegacyPassPass(PassRegistry&);
 void initializeAAResultsWrapperPassPass(PassRegistry&);
 void initializeAlwaysInlinerLegacyPassPass(PassRegistry&);
 void initializeAssignmentTrackingAnalysisPass(PassRegistry &);
diff --git a/llvm/include/llvm/LinkAllPasses.h b/llvm/include/llvm/LinkAllPasses.h
index 31adefe105f4d35..3fc90e85c3533e2 100644
--- a/llvm/include/llvm/LinkAllPasses.h
+++ b/llvm/include/llvm/LinkAllPasses.h
@@ -61,7 +61,6 @@ namespace {
       if (std::getenv("bar") != (char*) -1)
         return;
 
-      (void) llvm::createAAEvalPass();
       (void) llvm::createBasicAAWrapperPass();
       (void) llvm::createSCEVAAWrapperPass();
       (void) llvm::createTypeBasedAAWrapperPass();
diff --git a/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp b/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
index a551ea6b69c5a40..6bfba46f1e96fd0 100644
--- a/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
+++ b/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
@@ -319,45 +319,3 @@ AAEvaluator::~AAEvaluator() {
            << "%/" << ModRefCount * 100 / ModRefSum << "%\n";
   }
 }
-
-namespace llvm {
-class AAEvalLegacyPass : public FunctionPass {
-  std::unique_ptr<AAEvaluator> P;
-
-public:
-  static char ID; // Pass identification, replacement for typeid
-  AAEvalLegacyPass() : FunctionPass(ID) {
-    initializeAAEvalLegacyPassPass(*PassRegistry::getPassRegistry());
-  }
-
-  void getAnalysisUsage(AnalysisUsage &AU) const override {
-    AU.addRequired<AAResultsWrapperPass>();
-    AU.setPreservesAll();
-  }
-
-  bool doInitialization(Module &M) override {
-    P.reset(new AAEvaluator());
-    return false;
-  }
-
-  bool runOnFunction(Function &F) override {
-    P->runInternal(F, getAnalysis<AAResultsWrapperPass>().getAAResults());
-    return false;
-  }
-  bool doFinalization(Module &M) override {
-    P.reset();
-    return false;
-  }
-};
-}
-
-char AAEvalLegacyPass::ID = 0;
-INITIALIZE_PASS_BEGIN(AAEvalLegacyPass, "aa-eval",
-                      "Exhaustive Alias Analysis Precision Evaluator", false,
-                      true)
-INITIALIZE_PASS_DEPENDENCY(AAResultsWrapperPass)
-INITIALIZE_PASS_END(AAEvalLegacyPass, "aa-eval",
-                    "Exhaustive Alias Analysis Precision Evaluator", false,
-                    true)
-
-FunctionPass *llvm::createAAEvalPass() { return new AAEvalLegacyPass(); }
diff --git a/llvm/lib/Analysis/Analysis.cpp b/llvm/lib/Analysis/Analysis.cpp
index 5461ce07af0b9f4..80ea80303644449 100644
--- a/llvm/lib/Analysis/Analysis.cpp
+++ b/llvm/lib/Analysis/Analysis.cpp
@@ -18,7 +18,6 @@ using namespace llvm;
 
 /// initializeAnalysis - Initialize all passes linked into the Analysis library.
 void llvm::initializeAnalysis(PassRegistry &Registry) {
-  initializeAAEvalLegacyPassPass(Registry);
   initializeBasicAAWrapperPassPass(Registry);
   initializeBlockFrequencyInfoWrapperPassPass(Registry);
   initializeBranchProbabilityInfoWrapperPassPass(Registry);

>From 556e8c356351673b9517bc9612d3a70a41a2f13f Mon Sep 17 00:00:00 2001
From: Aiden Grossman <agrossman154 at yahoo.com>
Date: Mon, 6 Nov 2023 21:42:18 -0800
Subject: [PATCH 2/2] Remove unused includes

---
 llvm/lib/Analysis/AliasAnalysisEvaluator.cpp | 2 --
 1 file changed, 2 deletions(-)

diff --git a/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp b/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
index 6bfba46f1e96fd0..f4b4d8888a54729 100644
--- a/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
+++ b/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
@@ -14,8 +14,6 @@
 #include "llvm/IR/InstIterator.h"
 #include "llvm/IR/Instructions.h"
 #include "llvm/IR/Module.h"
-#include "llvm/InitializePasses.h"
-#include "llvm/Pass.h"
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Support/raw_ostream.h"
 using namespace llvm;



More information about the llvm-commits mailing list