[llvm-commits] [llvm] r112420 - /llvm/trunk/include/llvm/Support/StandardPasses.h
Chris Lattner
sabre at nondot.org
Sun Aug 29 00:05:51 PDT 2010
Author: lattner
Date: Sun Aug 29 02:05:51 2010
New Revision: 112420
URL: http://llvm.org/viewvc/llvm-project?rev=112420&view=rev
Log:
Stop explicitly scheduling domfrontier before the loop passes,
since none of them use it. With this, we now only run
domfrontier (an N^2 analysis) 3 times at clang -O3: once for
"early" per-function cleanup, once at the start of the
per-function pipeline to support SRoA, and once late because
the EHPrepare class uses it.
EHPrepare needs to stop using it, this is silly and wasteful.
Modified:
llvm/trunk/include/llvm/Support/StandardPasses.h
Modified: llvm/trunk/include/llvm/Support/StandardPasses.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/StandardPasses.h?rev=112420&r1=112419&r2=112420&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Support/StandardPasses.h (original)
+++ llvm/trunk/include/llvm/Support/StandardPasses.h Sun Aug 29 02:05:51 2010
@@ -117,7 +117,6 @@
PM->add(createArgumentPromotionPass()); // Scalarize uninlined fn args
// Start of function pass.
-
PM->add(createScalarReplAggregatesPass()); // Break up aggregate allocas
if (SimplifyLibCalls)
PM->add(createSimplifyLibCallsPass()); // Library Call Optimizations
@@ -129,8 +128,6 @@
PM->add(createTailCallEliminationPass()); // Eliminate tail calls
PM->add(createCFGSimplificationPass()); // Merge & remove BBs
PM->add(createReassociatePass()); // Reassociate expressions
- // Explicitly schedule this to ensure that it runs before any loop pass.
- PM->add(new DominanceFrontier()); // Calculate Dominance Frontiers
PM->add(createLoopRotatePass()); // Rotate Loop
PM->add(createLICMPass()); // Hoist loop invariants
PM->add(createLoopUnswitchPass(OptimizeSize || OptimizationLevel < 3));
More information about the llvm-commits
mailing list