forked from OSchip/llvm-project
parent
37d5484d18
commit
b8ed462ca2
|
@ -501,10 +501,11 @@ static bool ProfitableToMerge(MachineBasicBlock *MBB1,
|
|||
MachineBasicBlock *SuccBB,
|
||||
MachineBasicBlock *PredBB) {
|
||||
CommonTailLen = ComputeCommonTailLength(MBB1, MBB2, I1, I2);
|
||||
MachineFunction *MF = MBB1->getParent();
|
||||
|
||||
if (CommonTailLen == 0)
|
||||
return false;
|
||||
DEBUG(dbgs() << "Common tail length of BB#" << MBB1->getNumber()
|
||||
<< " and BB#" << MBB2->getNumber() << " is " << CommonTailLen
|
||||
<< '\n');
|
||||
|
||||
// It's almost always profitable to merge any number of non-terminator
|
||||
// instructions with the block that falls through into the common successor.
|
||||
|
@ -541,6 +542,7 @@ static bool ProfitableToMerge(MachineBasicBlock *MBB1,
|
|||
// we don't have to split a block. At worst we will be introducing 1 new
|
||||
// branch instruction, which is likely to be smaller than the 2
|
||||
// instructions that would be deleted in the merge.
|
||||
MachineFunction *MF = MBB1->getParent();
|
||||
if (EffectiveTailLen >= 2 &&
|
||||
MF->getFunction()->hasFnAttr(Attribute::OptimizeForSize) &&
|
||||
(I1 == MBB1->begin() || I2 == MBB2->begin()))
|
||||
|
|
Loading…
Reference in New Issue