X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=tools%2Fopt%2Fopt.cpp;h=fab3ce2e11b3bf8f05e5d3f22119b7fbd838e89c;hb=0aa37f472a920d8d8e8b6340db29f69641770749;hp=76cede13f6539558ca42473a5edc2eb64be45b8b;hpb=7ba98a90008727e2fa0dfc1787cad71e1b6021eb;p=oota-llvm.git diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp index 76cede13f65..fab3ce2e11b 100644 --- a/tools/opt/opt.cpp +++ b/tools/opt/opt.cpp @@ -18,6 +18,7 @@ #include "llvm/Bytecode/WriteBytecodePass.h" #include "llvm/Assembly/PrintModulePass.h" #include "llvm/Analysis/Verifier.h" +#include "llvm/Analysis/LoopPass.h" #include "llvm/Target/TargetData.h" #include "llvm/Target/TargetMachine.h" #include "llvm/Support/PassNameParser.h" @@ -178,7 +179,6 @@ void AddStandardCompilePasses(PassManager &PM) { PM.add(createVerifierPass()); // Verify that input is correct addPass(PM, createLowerSetJmpPass()); // Lower llvm.setjmp/.longjmp - addPass(PM, createFunctionResolvingPass()); // Resolve (...) functions // If the -strip-debug command line option was specified, do it. if (StripDebug) @@ -212,6 +212,7 @@ void AddStandardCompilePasses(PassManager &PM) { addPass(PM, createTailCallEliminationPass()); // Eliminate tail calls addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs addPass(PM, createReassociatePass()); // Reassociate expressions + addPass(PM, createLoopRotatePass()); addPass(PM, createLICMPass()); // Hoist loop invariants addPass(PM, createLoopUnswitchPass()); // Unswitch loops. addPass(PM, createInstructionCombiningPass()); // Clean up after LICM/reassoc @@ -255,7 +256,8 @@ int main(int argc, char **argv) { std::string ErrorMessage; // Load the input module... - std::auto_ptr M(ParseBytecodeFile(InputFilename, &ErrorMessage)); + std::auto_ptr M(ParseBytecodeFile(InputFilename, + Compressor::decompressToNewBuffer, &ErrorMessage)); if (M.get() == 0) { cerr << argv[0] << ": "; if (ErrorMessage.size())