Skip to content

Commit

Permalink
Enable register promotion pass
Browse files Browse the repository at this point in the history
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1740 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
lattner committed Feb 12, 2002
1 parent d3db022 commit eeeaf52
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion tools/opt/opt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
#include "llvm/Transforms/Scalar/ConstantProp.h"
#include "llvm/Transforms/Scalar/IndVarSimplify.h"
#include "llvm/Transforms/Scalar/InstructionCombining.h"
#include "llvm/Transforms/Scalar/PromoteMemoryToRegister.h"
#include "llvm/Transforms/Instrumentation/TraceValues.h"
#include "Support/CommandLine.h"
#include <fstream>
Expand All @@ -38,7 +39,7 @@ enum Opts {
trace, tracem, print, raiseallocs, cleangcc,

// More powerful optimizations
indvars, instcombine, sccp, adce, raise,
indvars, instcombine, sccp, adce, raise, mem2reg,

// Interprocedural optimizations...
globaldce, swapstructs, sortstructs,
Expand Down Expand Up @@ -87,6 +88,8 @@ struct {
{ sccp , New<SCCPPass> },
{ adce , New<AgressiveDCE> },
{ raise , New<RaisePointerReferences> },
{ mem2reg , newPromoteMemoryToRegister },

{ trace , New<InsertTraceCode, bool, true, bool, true> },
{ tracem , New<InsertTraceCode, bool, false, bool, true> },
{ print , NewPrintMethodPass },
Expand Down Expand Up @@ -120,6 +123,7 @@ cl::EnumList<enum Opts> OptimizationList(cl::NoFlags,
clEnumVal(instcombine, "Combine redundant instructions"),
clEnumVal(sccp , "Sparse Conditional Constant Propogation"),
clEnumVal(adce , "Agressive DCE"),
clEnumVal(mem2reg , "Promote alloca locations to registers"),

clEnumVal(globaldce , "Remove unreachable globals"),
clEnumVal(swapstructs, "Swap structure types around"),
Expand Down

0 comments on commit eeeaf52

Please sign in to comment.