Add the CallInst optimizations that don't involve expanding inline assembly to

OptimizeInst() so that they can be used on a worklist instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122945 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Cameron Zwarich 2011-01-06 02:56:42 +00:00
parent 865ae1a9e7
commit 6cf34abe1c

View File

@ -1014,6 +1014,13 @@ bool CodeGenPrepare::OptimizeInst(Instruction *I) {
MadeChange = true;
OptimizeInst(NC);
}
} else if (CallInst *CI = dyn_cast<CallInst>(I)) {
if (TLI && isa<InlineAsm>(CI->getCalledValue())) {
// Sink address computing for memory operands into the block.
MadeChange |= OptimizeInlineAsmInst(I, &(*CI), SunkAddrs);
} else {
MadeChange |= OptimizeCallInst(CI);
}
}
return MadeChange;