mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-04 17:58:22 +00:00
Implement a new RemoveSuccessor function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3130 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
011de07117
commit
229a3770f6
@ -13,7 +13,6 @@
|
||||
#include "llvm/BasicBlock.h"
|
||||
class Instruction;
|
||||
|
||||
|
||||
// ReplaceInstWithValue - Replace all uses of an instruction (specified by BI)
|
||||
// with a value, then remove and delete the original instruction.
|
||||
//
|
||||
@ -28,10 +27,18 @@ void ReplaceInstWithInst(BasicBlock::InstListType &BIL,
|
||||
BasicBlock::iterator &BI, Instruction *I);
|
||||
|
||||
// ReplaceInstWithInst - Replace the instruction specified by From with the
|
||||
// instruction specified by To. Note that this is slower than providing an
|
||||
// iterator directly, because the basic block containing From must be searched
|
||||
// for the instruction.
|
||||
// instruction specified by To.
|
||||
//
|
||||
void ReplaceInstWithInst(Instruction *From, Instruction *To);
|
||||
|
||||
|
||||
// RemoveSuccessor - Change the specified terminator instruction such that its
|
||||
// successor #SuccNum no longer exists. Because this reduces the outgoing
|
||||
// degree of the current basic block, the actual terminator instruction itself
|
||||
// may have to be changed. In the case where the last successor of the block is
|
||||
// deleted, a return instruction is inserted in its place which can cause a
|
||||
// suprising change in program behavior if it is not expected.
|
||||
//
|
||||
void RemoveSuccessor(TerminatorInst *TI, unsigned SuccNum);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user