[llvm-commits] [llvm] r164850 - /llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
Chandler Carruth
chandlerc at google.com
Fri Sep 28 14:32:02 PDT 2012
On Fri, Sep 28, 2012 at 2:23 PM, Evan Cheng <evan.cheng at apple.com> wrote:
> Author: evancheng
> Date: Fri Sep 28 16:23:26 2012
> New Revision: 164850
>
> URL: http://llvm.org/viewvc/llvm-project?rev=164850&view=rev
> Log:
> GlobalDCE should be run at -O2 / -Os to eliminate unused dtor, etc.
> rdar://9142819
>
Could you add a test case that shows the phase ordering problem and is
fixed by this? I'm thinking something similar to those tests in
test/Transforms/PhaseOrdering. We might already have tests that can just
have their "-O3" switched to "-O2" or "-Os", but I'd like to have a test
that fails if we ever mess this up in the future...
>
> Modified:
> llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
>
> Modified: llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp?rev=164850&r1=164849&r2=164850&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp (original)
> +++ llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp Fri Sep 28
> 16:23:26 2012
> @@ -211,13 +211,12 @@
> // 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);
> }
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120928/f848a712/attachment.html>
More information about the llvm-commits
mailing list