mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-25 21:18:19 +00:00
Add support for tail duplication to BranchFolding, and extend
tail merging support to handle more cases. - Recognize several cases where tail merging is beneficial even when the tail size is smaller than the generic threshold. - Make use of MachineInstrDesc::isBarrier to help detect non-fallthrough blocks. - Check for and avoid disrupting fall-through edges in more cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86871 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -371,10 +371,7 @@ bool MachineBasicBlock::CorrectExtraCFGEdges(MachineBasicBlock *DestA,
|
||||
MachineBasicBlock::succ_iterator SI = succ_begin();
|
||||
MachineBasicBlock *OrigDestA = DestA, *OrigDestB = DestB;
|
||||
while (SI != succ_end()) {
|
||||
if (*SI == DestA && DestA == DestB) {
|
||||
DestA = DestB = 0;
|
||||
++SI;
|
||||
} else if (*SI == DestA) {
|
||||
if (*SI == DestA) {
|
||||
DestA = 0;
|
||||
++SI;
|
||||
} else if (*SI == DestB) {
|
||||
|
||||
Reference in New Issue
Block a user