remove some dead options.
[oota-llvm.git] / tools / llvm-ld / Optimize.cpp
index 5a22ea1394f6d4d55682c6f175afa56f6915021d..0dc38570171c1cf8d673d989af845d7b22108429 100644 (file)
@@ -35,35 +35,6 @@ static cl::list<const PassInfo*, bool, PassNameParser>
 //Don't verify at the end
 static cl::opt<bool> DontVerify("disable-verify", cl::ReallyHidden);
 
-// Optimization Enumeration
-enum OptimizationLevels {
-  OPT_FAST_COMPILE         = 1,
-  OPT_SIMPLE               = 2,
-  OPT_AGGRESSIVE           = 3,
-  OPT_LINK_TIME            = 4,
-  OPT_AGGRESSIVE_LINK_TIME = 5
-};
-
-// Optimization Options
-static cl::opt<OptimizationLevels> OptLevel(
-  cl::desc("Choose level of optimization to apply:"),
-  cl::init(OPT_FAST_COMPILE), cl::values(
-    clEnumValN(OPT_FAST_COMPILE,"O0",
-      "An alias for the -O1 option."),
-    clEnumValN(OPT_FAST_COMPILE,"O1",
-      "Optimize for linking speed, not execution speed."),
-    clEnumValN(OPT_SIMPLE,"O2",
-      "Perform only required/minimal optimizations"),
-    clEnumValN(OPT_AGGRESSIVE,"O3",
-      "An alias for the -O2 option."),
-    clEnumValN(OPT_LINK_TIME,"O4",
-      "Perform standard link time optimizations"),
-    clEnumValN(OPT_AGGRESSIVE_LINK_TIME,"O5",
-      "Perform aggressive link time optimizations"),
-    clEnumValEnd
-  )
-);
-
 static cl::opt<bool> DisableInline("disable-inlining",
   cl::desc("Do not run the inliner pass"));
 
@@ -169,8 +140,8 @@ void Optimize(Module* M) {
     addPass(Passes, createGlobalsModRefPass());      // IP alias analysis
 
     addPass(Passes, createLICMPass());               // Hoist loop invariants
-    addPass(Passes, createMemCpyOptPass());          // Remove dead memcpy's
     addPass(Passes, createGVNPass());                  // Remove redundancies
+    addPass(Passes, createMemCpyOptPass());          // Remove dead memcpy's
     addPass(Passes, createDeadStoreEliminationPass()); // Nuke dead stores
 
     // Cleanup and simplify the code after the scalar optimizations.