forked from OSchip/llvm-project
Add a statistic to PHIElimination tracking the number of critical edges split.
llvm-svn: 125476
This commit is contained in:
parent
7ce13fc940
commit
8790396e6a
|
@ -83,6 +83,7 @@ namespace {
|
|||
}
|
||||
|
||||
STATISTIC(NumAtomic, "Number of atomic phis lowered");
|
||||
STATISTIC(NumCriticalEdgesSplit, "Number of critical edges split");
|
||||
STATISTIC(NumReused, "Number of reused lowered phis");
|
||||
|
||||
char PHIElimination::ID = 0;
|
||||
|
@ -413,8 +414,12 @@ bool PHIElimination::SplitPHIEdges(MachineFunction &MF,
|
|||
!LV.isLiveIn(Reg, MBB) && LV.isLiveOut(Reg, *PreMBB)) {
|
||||
if (!MLI ||
|
||||
!(MLI->getLoopFor(PreMBB) == MLI->getLoopFor(&MBB) &&
|
||||
MLI->isLoopHeader(&MBB)))
|
||||
Changed |= PreMBB->SplitCriticalEdge(&MBB, this) != 0;
|
||||
MLI->isLoopHeader(&MBB))) {
|
||||
if (PreMBB->SplitCriticalEdge(&MBB, this)) {
|
||||
Changed = true;
|
||||
++NumCriticalEdgesSplit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue