jump threading can introduce allocas, make sure we promote

them back to registers!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52729 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2008-06-25 16:54:18 +00:00
parent 6c31e87d7c
commit c4ab7acc0b

View File

@ -386,6 +386,8 @@ bool LTOCodeGenerator::generateAssemblyCode(std::ostream& out, std::string& errM
// Cleanup and simplify the code after the scalar optimizations.
passes.add(createInstructionCombiningPass());
passes.add(createJumpThreadingPass()); // Thread jumps.
passes.add(createPromoteMemoryToRegisterPass()); // Cleanup after threading.
// Delete basic blocks, which optimization passes may have killed...
passes.add(createCFGSimplificationPass());