diff options
author | Davide Italiano <davide@freebsd.org> | 2017-10-05 18:36:01 +0000 |
---|---|---|
committer | Davide Italiano <davide@freebsd.org> | 2017-10-05 18:36:01 +0000 |
commit | e07072130873f3fb65a827a6397cd7d7684241ca (patch) | |
tree | 5666d5856740bab8e518f02ac7fd6b6a9af4e455 | |
parent | 7c79470c71e1bd2e13ba285710d86269189c5804 (diff) | |
download | bcm5719-llvm-e07072130873f3fb65a827a6397cd7d7684241ca.tar.gz bcm5719-llvm-e07072130873f3fb65a827a6397cd7d7684241ca.zip |
[NewPassManager] Run global dead code elimination after the inliner.
This is the same exact change we did for the current pass manager
in rL314997, but the new pass manager pipeline already happened
to run GlobalOpt after the inliner, so we just insert a run of
GDCE here.
llvm-svn: 315003
-rw-r--r-- | llvm/lib/Passes/PassBuilder.cpp | 1 | ||||
-rw-r--r-- | llvm/test/Other/new-pm-defaults.ll | 1 | ||||
-rw-r--r-- | llvm/test/Other/new-pm-thinlto-defaults.ll | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp index c9cc0c5ae38..9bf5dbd8e65 100644 --- a/llvm/lib/Passes/PassBuilder.cpp +++ b/llvm/lib/Passes/PassBuilder.cpp @@ -670,6 +670,7 @@ PassBuilder::buildModuleOptimizationPipeline(OptimizationLevel Level, // Optimize globals now that the module is fully simplified. MPM.addPass(GlobalOptPass()); + MPM.addPass(GlobalDCEPass()); // Run partial inlining pass to partially inline functions that have // large bodies. diff --git a/llvm/test/Other/new-pm-defaults.ll b/llvm/test/Other/new-pm-defaults.ll index e9e33ff6424..6e5c679e3d9 100644 --- a/llvm/test/Other/new-pm-defaults.ll +++ b/llvm/test/Other/new-pm-defaults.ll @@ -179,6 +179,7 @@ ; CHECK-O-NEXT: Running pass: PassManager<{{.*}}Module{{.*}}> ; CHECK-O-NEXT: Starting llvm::Module pass manager run. ; CHECK-O-NEXT: Running pass: GlobalOptPass +; CHECK-O-NEXT: Running pass: GlobalDCEPass ; CHECK-O-NEXT: Running pass: EliminateAvailableExternallyPass ; CHECK-O-NEXT: Running pass: ReversePostOrderFunctionAttrsPass ; CHECK-O-NEXT: Running pass: RequireAnalysisPass<{{.*}}GlobalsAA diff --git a/llvm/test/Other/new-pm-thinlto-defaults.ll b/llvm/test/Other/new-pm-thinlto-defaults.ll index f98c393f798..47074adbcb2 100644 --- a/llvm/test/Other/new-pm-thinlto-defaults.ll +++ b/llvm/test/Other/new-pm-thinlto-defaults.ll @@ -168,6 +168,7 @@ ; CHECK-POSTLINK-O-NEXT: Running pass: PassManager<{{.*}}Module{{.*}}> ; CHECK-POSTLINK-O-NEXT: Starting llvm::Module pass manager run. ; CHECK-POSTLINK-O-NEXT: Running pass: GlobalOptPass +; CHECK-POSTLINK-O-NEXT: Running pass: GlobalDCEPass ; CHECK-POSTLINK-O-NEXT: Running pass: EliminateAvailableExternallyPass ; CHECK-POSTLINK-O-NEXT: Running pass: ReversePostOrderFunctionAttrsPass ; CHECK-POSTLINK-O-NEXT: Running pass: RequireAnalysisPass<{{.*}}GlobalsAA |