From 3808efa2e6e2da057c29c4fdc4ef083a244f9371 Mon Sep 17 00:00:00 2001 From: Cong Hou Date: Mon, 14 Dec 2015 19:11:54 +0000 Subject: [PATCH 1/1] Remove the successor probabilities normalization in tail duplication pass. The normalization may cause assertion failures on SystemZ and some out-of-tree tests. The root cause is that unknown probabilities are materialized into known ones by calling getSuccProbability(), which is then used to add another successor to the same MBB which results in mixed known and unknown probabilities. But currently those mixed probabilities cannot be normalized. I will compose another patch to fix the root issue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@255530 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/TailDuplication.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/CodeGen/TailDuplication.cpp b/lib/CodeGen/TailDuplication.cpp index 9bd15dd6ec7..1f5b54866ac 100644 --- a/lib/CodeGen/TailDuplication.cpp +++ b/lib/CodeGen/TailDuplication.cpp @@ -751,7 +751,6 @@ TailDuplicatePass::duplicateSimpleBB(MachineBasicBlock *TailBB, assert(NumSuccessors <= 1); if (NumSuccessors == 0 || *PredBB->succ_begin() != NewTarget) PredBB->addSuccessor(NewTarget, Prob); - PredBB->normalizeSuccProbs(); TDBBs.push_back(PredBB); } -- 2.34.1