Clean up code due to auto-insert constructors

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3666 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2002-09-10 22:38:49 +00:00
parent 1d608abbc0
commit f2d2d0bb13
2 changed files with 8 additions and 9 deletions

View File

@ -93,12 +93,11 @@ bool InlineFunction(CallInst *CI) {
// //
PHINode *PHI = 0; PHINode *PHI = 0;
if (CalledFunc->getReturnType() != Type::VoidTy) { if (CalledFunc->getReturnType() != Type::VoidTy) {
PHI = new PHINode(CalledFunc->getReturnType(), CI->getName());
// The PHI node should go at the front of the new basic block to merge all // The PHI node should go at the front of the new basic block to merge all
// possible incoming values. // possible incoming values.
// //
NewBB->getInstList().push_front(PHI); PHI = new PHINode(CalledFunc->getReturnType(), CI->getName(),
NewBB->begin());
// Anything that used the result of the function call should now use the PHI // Anything that used the result of the function call should now use the PHI
// node as their operand. // node as their operand.
@ -164,7 +163,7 @@ bool InlineFunction(CallInst *CI) {
} }
// Add a branch to the code that was after the original Call. // Add a branch to the code that was after the original Call.
IBB->getInstList().push_back(new BranchInst(NewBB)); new BranchInst(NewBB, IBB->end());
break; break;
} }
case Instruction::Br: case Instruction::Br:

View File

@ -49,8 +49,8 @@ bool UnifyFunctionExitNodes::runOnFunction(Function &F) {
if (F.getReturnType() != Type::VoidTy) { if (F.getReturnType() != Type::VoidTy) {
// If the function doesn't return void... add a PHI node to the block... // If the function doesn't return void... add a PHI node to the block...
PHINode *PN = new PHINode(F.getReturnType(), "UnifiedRetVal"); PHINode *PN = new PHINode(F.getReturnType(), "UnifiedRetVal",
NewRetBlock->getInstList().push_back(PN); NewRetBlock.end());
// Add an incoming element to the PHI node for every return instruction that // Add an incoming element to the PHI node for every return instruction that
// is merging into this new block... // is merging into this new block...
@ -59,10 +59,10 @@ bool UnifyFunctionExitNodes::runOnFunction(Function &F) {
PN->addIncoming((*I)->getTerminator()->getOperand(0), *I); PN->addIncoming((*I)->getTerminator()->getOperand(0), *I);
// Add a return instruction to return the result of the PHI node... // Add a return instruction to return the result of the PHI node...
NewRetBlock->getInstList().push_back(new ReturnInst(PN)); new ReturnInst(PN, NewRetBlock.end());
} else { } else {
// If it returns void, just add a return void instruction to the block // If it returns void, just add a return void instruction to the block
NewRetBlock->getInstList().push_back(new ReturnInst()); new ReturnInst(0, NewRetBlock.end());
} }
// Loop over all of the blocks, replacing the return instruction with an // Loop over all of the blocks, replacing the return instruction with an
@ -71,7 +71,7 @@ bool UnifyFunctionExitNodes::runOnFunction(Function &F) {
for (vector<BasicBlock*>::iterator I = ReturningBlocks.begin(), for (vector<BasicBlock*>::iterator I = ReturningBlocks.begin(),
E = ReturningBlocks.end(); I != E; ++I) { E = ReturningBlocks.end(); I != E; ++I) {
(*I)->getInstList().pop_back(); // Remove the return insn (*I)->getInstList().pop_back(); // Remove the return insn
(*I)->getInstList().push_back(new BranchInst(NewRetBlock)); new BranchInst(NewRetBlock, (*I)->end());
} }
ExitNode = NewRetBlock; ExitNode = NewRetBlock;
return true; return true;