* Remove the -stopraise option, which is no longer needed now that we have
the -debug-pass=Arguments option
* Run instcombining BEFORE mem2reg so that getelementptr X, long 0's are
cleaned up. This is also important because scalar replacement of aggr.
will want instcombine to run before it goes as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3879 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp
index f664328..8d8950e 100644
--- a/tools/gccas/gccas.cpp
+++ b/tools/gccas/gccas.cpp
@@ -38,10 +38,6 @@
cl::desc("Only run the first N passes of gccas"), cl::Hidden,
cl::value_desc("# passes"));
-static cl::opt<bool>
-StopAtLevelRaise("stopraise", cl::desc("Stop optimization before level raise"),
- cl::Hidden);
-
static cl::opt<bool>
Verify("verify", cl::desc("Verify each pass result"));
@@ -76,16 +72,11 @@
addPass(PM, createDeadInstEliminationPass()); // Remove Dead code/vars
addPass(PM, createRaiseAllocationsPass()); // call %malloc -> malloc inst
addPass(PM, createIndVarSimplifyPass()); // Simplify indvars
-
- // Level raise is eternally buggy/in need of enhancements. Allow
- // transformation to stop right before it runs.
- if (StopAtLevelRaise) return;
-
addPass(PM, createRaisePointerReferencesPass(TD));// Recover type information
+ addPass(PM, createInstructionCombiningPass()); // Combine silly seq's
addPass(PM, createPromoteMemoryToRegister()); // Promote alloca's to regs
// Disabling until this is fixed -- Vikram, 7/7/02.
// addPass(PM, createReassociatePass()); // Reassociate expressions
- addPass(PM, createInstructionCombiningPass()); // Combine silly seq's
addPass(PM, createCorrelatedExpressionEliminationPass());
addPass(PM, createInstructionCombiningPass()); // Combine silly seq's
addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs