[PATCH] D159336: Statically analyze likely and unlikely blocks based on metadata
Aditya Kumar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 11 15:49:45 PDT 2023
hiraditya added inline comments.
================
Comment at: llvm/lib/Transforms/IPO/HotColdSplitting.cpp:128
+
+ // [[unlikely]] and builtin_expect assigns 1/2000 as cold branch probability.
+ auto ColdProb = BranchProbability(1, std::min(2000, ColdBranchProbDenom.getValue()));
----------------
hiraditya wrote:
> tejohnson wrote:
> > Is there an internal option that determines the value used there that can be used in the code here? Looks like it is controlled by LikelyBranchWeight - can that be made a global option and referenced here so that they don't get out of sync?
> found one. it has a higher probability but that is what other parts of llvm is using so i'll use the same here.
TTI.getPredictableBranchThreshold is what i used. it seems this is the recommended API to use for branch threshold (https://llvm.org/doxygen/LowerExpectIntrinsic_8cpp_source.html)
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D159336/new/
https://reviews.llvm.org/D159336
More information about the llvm-commits
mailing list