mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-24 08:24:33 +00:00
Merge the enhancements from LoopUnroll's FoldBlockIntoPredecessor into
MergeBlockIntoPredecessor. This makes SimplifyCFG slightly more aggressive, and makes it unnecessary for LoopUnroll to have its own copy of this code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85667 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -43,9 +43,11 @@ void FoldSingleEntryPHINodes(BasicBlock *BB);
|
||||
/// it is ultimately unused or if it reaches an unused cycle.
|
||||
void DeleteDeadPHIs(BasicBlock *BB);
|
||||
|
||||
/// MergeBlockIntoPredecessor - Attempts to merge a block into its predecessor,
|
||||
/// if possible. The return value indicates success or failure.
|
||||
bool MergeBlockIntoPredecessor(BasicBlock* BB, Pass* P = 0);
|
||||
/// MergeBlockIntoPredecessor - Folds a basic block into its predecessor if it
|
||||
/// only has one predecessor, and that predecessor only has one successor.
|
||||
/// If a Pass is given, the LoopInfo and DominatorTree analyses will be kept
|
||||
/// current. Returns the combined block, or null if no merging was performed.
|
||||
BasicBlock *MergeBlockIntoPredecessor(BasicBlock* BB, Pass* P = 0);
|
||||
|
||||
// ReplaceInstWithValue - Replace all uses of an instruction (specified by BI)
|
||||
// with a value, then remove and delete the original instruction.
|
||||
|
Reference in New Issue
Block a user