[llvm] c8b8d6b - [Passes] Remove some legacy passes
Arthur Eubanks via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 10 10:46:52 PST 2023
Author: Arthur Eubanks
Date: 2023-02-10T10:46:45-08:00
New Revision: c8b8d6baddf9a744594a69e9fb266b724e2e99b2
URL: https://github.com/llvm/llvm-project/commit/c8b8d6baddf9a744594a69e9fb266b724e2e99b2
DIFF: https://github.com/llvm/llvm-project/commit/c8b8d6baddf9a744594a69e9fb266b724e2e99b2.diff
LOG: [Passes] Remove some legacy passes
Namely CrossDSOCFI and GlobalSplit.
These are part of the optimization pipeline, of which the legacy pass manager version is deprecated.
Added:
Modified:
llvm/include/llvm/Transforms/IPO.h
llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
llvm/lib/Transforms/IPO/GlobalSplit.cpp
llvm/lib/Transforms/IPO/IPO.cpp
Removed:
################################################################################
diff --git a/llvm/include/llvm/Transforms/IPO.h b/llvm/include/llvm/Transforms/IPO.h
index 59a659c76cd3..bd68454c2a82 100644
--- a/llvm/include/llvm/Transforms/IPO.h
+++ b/llvm/include/llvm/Transforms/IPO.h
@@ -113,13 +113,6 @@ enum class PassSummaryAction {
Export, ///< Export information to summary.
};
-/// This pass export CFI checks for use by external modules.
-ModulePass *createCrossDSOCFIPass();
-
-/// This pass splits globals into pieces for the benefit of whole-program
-/// devirtualization and control-flow integrity.
-ModulePass *createGlobalSplitPass();
-
} // End llvm namespace
#endif
diff --git a/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp b/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
index 86d53085edee..25e87e298f7d 100644
--- a/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
+++ b/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
@@ -35,28 +35,16 @@ STATISTIC(NumTypeIds, "Number of unique type identifiers");
namespace {
-struct CrossDSOCFI : public ModulePass {
- static char ID;
- CrossDSOCFI() : ModulePass(ID) {
- initializeCrossDSOCFIPass(*PassRegistry::getPassRegistry());
- }
-
+struct CrossDSOCFI {
MDNode *VeryLikelyWeights;
ConstantInt *extractNumericTypeId(MDNode *MD);
void buildCFICheck(Module &M);
- bool runOnModule(Module &M) override;
+ bool runOnModule(Module &M);
};
} // anonymous namespace
-INITIALIZE_PASS_BEGIN(CrossDSOCFI, "cross-dso-cfi", "Cross-DSO CFI", false,
- false)
-INITIALIZE_PASS_END(CrossDSOCFI, "cross-dso-cfi", "Cross-DSO CFI", false, false)
-char CrossDSOCFI::ID = 0;
-
-ModulePass *llvm::createCrossDSOCFIPass() { return new CrossDSOCFI; }
-
/// Extracts a numeric type identifier from an MDNode containing type metadata.
ConstantInt *CrossDSOCFI::extractNumericTypeId(MDNode *MD) {
// This check excludes vtables for classes inside anonymous namespaces.
diff --git a/llvm/lib/Transforms/IPO/GlobalSplit.cpp b/llvm/lib/Transforms/IPO/GlobalSplit.cpp
index 7d9e6135b2eb..f94d7b1ca027 100644
--- a/llvm/lib/Transforms/IPO/GlobalSplit.cpp
+++ b/llvm/lib/Transforms/IPO/GlobalSplit.cpp
@@ -159,33 +159,6 @@ static bool splitGlobals(Module &M) {
return Changed;
}
-namespace {
-
-struct GlobalSplit : public ModulePass {
- static char ID;
-
- GlobalSplit() : ModulePass(ID) {
- initializeGlobalSplitPass(*PassRegistry::getPassRegistry());
- }
-
- bool runOnModule(Module &M) override {
- if (skipModule(M))
- return false;
-
- return splitGlobals(M);
- }
-};
-
-} // end anonymous namespace
-
-char GlobalSplit::ID = 0;
-
-INITIALIZE_PASS(GlobalSplit, "globalsplit", "Global splitter", false, false)
-
-ModulePass *llvm::createGlobalSplitPass() {
- return new GlobalSplit;
-}
-
PreservedAnalyses GlobalSplitPass::run(Module &M, ModuleAnalysisManager &AM) {
if (!splitGlobals(M))
return PreservedAnalyses::all();
diff --git a/llvm/lib/Transforms/IPO/IPO.cpp b/llvm/lib/Transforms/IPO/IPO.cpp
index 6de623f8bff1..8af02f811831 100644
--- a/llvm/lib/Transforms/IPO/IPO.cpp
+++ b/llvm/lib/Transforms/IPO/IPO.cpp
@@ -25,13 +25,11 @@ using namespace llvm;
void llvm::initializeIPO(PassRegistry &Registry) {
initializeAnnotation2MetadataLegacyPass(Registry);
initializeConstantMergeLegacyPassPass(Registry);
- initializeCrossDSOCFIPass(Registry);
initializeDAEPass(Registry);
initializeDAHPass(Registry);
initializeForceFunctionAttrsLegacyPassPass(Registry);
initializeGlobalDCELegacyPassPass(Registry);
initializeGlobalOptLegacyPassPass(Registry);
- initializeGlobalSplitPass(Registry);
initializeAlwaysInlinerLegacyPassPass(Registry);
initializeInferFunctionAttrsLegacyPassPass(Registry);
initializeLoopExtractorLegacyPassPass(Registry);
More information about the llvm-commits
mailing list