diff options
author | Evan Cheng <evan.cheng@apple.com> | 2012-09-28 21:23:26 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2012-09-28 21:23:26 +0000 |
commit | f5fdc14df9914969bf56315cd3be8a3b3822a22e (patch) | |
tree | 47ada840a05e6ebbf6ecc20c2514d4ea17da3a4a /lib/Transforms/IPO | |
parent | 21731d876c337a14d30c9b35e21141cc6fcf2e18 (diff) | |
download | external_llvm-f5fdc14df9914969bf56315cd3be8a3b3822a22e.zip external_llvm-f5fdc14df9914969bf56315cd3be8a3b3822a22e.tar.gz external_llvm-f5fdc14df9914969bf56315cd3be8a3b3822a22e.tar.bz2 |
GlobalDCE should be run at -O2 / -Os to eliminate unused dtor, etc. rdar://9142819
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164850 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO')
-rw-r--r-- | lib/Transforms/IPO/PassManagerBuilder.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/Transforms/IPO/PassManagerBuilder.cpp b/lib/Transforms/IPO/PassManagerBuilder.cpp index c81b333..9e328b9 100644 --- a/lib/Transforms/IPO/PassManagerBuilder.cpp +++ b/lib/Transforms/IPO/PassManagerBuilder.cpp @@ -211,13 +211,12 @@ void PassManagerBuilder::populateModulePassManager(PassManagerBase &MPM) { // FIXME: We shouldn't bother with this anymore. MPM.add(createStripDeadPrototypesPass()); // Get rid of dead prototypes - // GlobalOpt already deletes dead functions and globals, at -O3 try a + // GlobalOpt already deletes dead functions and globals, at -O2 try a // late pass of GlobalDCE. It is capable of deleting dead cycles. - if (OptLevel > 2) + if (OptLevel > 1) { MPM.add(createGlobalDCEPass()); // Remove dead fns and globals. - - if (OptLevel > 1) MPM.add(createConstantMergePass()); // Merge dup global constants + } } addExtensionsToPM(EP_OptimizerLast, MPM); } |