summaryrefslogtreecommitdiff
path: root/bolt/lib/Core/BinaryFunctionProfile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'bolt/lib/Core/BinaryFunctionProfile.cpp')
-rw-r--r--bolt/lib/Core/BinaryFunctionProfile.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/bolt/lib/Core/BinaryFunctionProfile.cpp b/bolt/lib/Core/BinaryFunctionProfile.cpp
index 55ebe5fc900e..726da6a9d082 100644
--- a/bolt/lib/Core/BinaryFunctionProfile.cpp
+++ b/bolt/lib/Core/BinaryFunctionProfile.cpp
@@ -336,7 +336,8 @@ void BinaryFunction::inferFallThroughCounts() {
if (SuccBI.Count == 0) {
SuccBI.Count = Inferred;
SuccBI.MispredictedCount = BinaryBasicBlock::COUNT_INFERRED;
- Succ->ExecutionCount += Inferred;
+ Succ->ExecutionCount =
+ std::max(Succ->getKnownExecutionCount(), Inferred);
}
}
}