diff options
author | Cong Hou <congh@google.com> | 2015-12-13 09:26:17 +0000 |
---|---|---|
committer | Cong Hou <congh@google.com> | 2015-12-13 09:26:17 +0000 |
commit | c106989fd5ca0f39f5e88d06a90a1227d037d43e (patch) | |
tree | 9016259591672095defee02eef1659101612454a /llvm/lib/Target/PowerPC | |
parent | 7f8b43d42478a2d8140f2949314dcfa34071ac28 (diff) | |
download | bcm5719-llvm-c106989fd5ca0f39f5e88d06a90a1227d037d43e.tar.gz bcm5719-llvm-c106989fd5ca0f39f5e88d06a90a1227d037d43e.zip |
Normalize MBB's successors' probabilities in several locations.
This patch adds some missing calls to MBB::normalizeSuccProbs() in several
locations where it should be called. Those places are found by checking if the
sum of successors' probabilities is approximate one in MachineBlockPlacement
pass with some instrumented code (not in this patch).
Differential revision: http://reviews.llvm.org/D15259
llvm-svn: 255455
Diffstat (limited to 'llvm/lib/Target/PowerPC')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp b/llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp index cbc8d8fdb09..b455aa9ea04 100644 --- a/llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp +++ b/llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp @@ -153,7 +153,7 @@ protected: } for (unsigned i = 0, ie = PredToRemove.size(); i != ie; ++i) - PredToRemove[i]->removeSuccessor(&ReturnMBB); + PredToRemove[i]->removeSuccessor(&ReturnMBB, true); if (Changed && !ReturnMBB.hasAddressTaken()) { // We now might be able to merge this blr-only block into its @@ -163,7 +163,7 @@ protected: if (PrevMBB.isLayoutSuccessor(&ReturnMBB) && PrevMBB.canFallThrough()) { // Move the blr into the preceding block. PrevMBB.splice(PrevMBB.end(), &ReturnMBB, I); - PrevMBB.removeSuccessor(&ReturnMBB); + PrevMBB.removeSuccessor(&ReturnMBB, true); } } |