diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp index ce60d9453e4..c2c2620966b 100644 --- a/tools/opt/opt.cpp +++ b/tools/opt/opt.cpp @@ -40,7 +40,7 @@ enum Opts { dce, die, constprop, inlining, constmerge, strip, mstrip, mergereturn, // Miscellaneous Transformations - raiseallocs, cleangcc, lowerrefs, + raiseallocs, funcresolve, cleangcc, lowerrefs, // Printing and verifying... print, verify, @@ -91,12 +91,14 @@ struct { { raiseallocs, createRaiseAllocationsPass }, { cleangcc , createCleanupGCCOutputPass }, + { funcresolve, createFunctionResolvingPass }, { globaldce , createGlobalDCEPass }, { swapstructs, createSwapElementsPass }, { sortstructs, createSortElementsPass }, { poolalloc , createPoolAllocatePass }, }; + // Command line option handling code... // cl::String InputFilename ("", "Load file to optimize", cl::NoFlags, "-"); @@ -128,6 +130,7 @@ cl::EnumList OptimizationList(cl::NoFlags, clEnumVal(raiseallocs, "Raise allocations from calls to instructions"), clEnumVal(cleangcc , "Cleanup GCC Output"), + clEnumVal(funcresolve, "Resolve calls to foo(...) to foo()"), clEnumVal(raise , "Raise to Higher Level"), clEnumVal(trace , "Insert BB & Method trace code"), clEnumVal(tracem , "Insert Method trace code only"),