aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Object/ELFObjectFileTest.cpp
diff options
context:
space:
mode:
authorMircea Trofin <mtrofin@google.com>2025-10-13 09:06:16 -0700
committerGitHub <noreply@github.com>2025-10-13 09:06:16 -0700
commit769976261249109d02516eb684584c1c8576a882 (patch)
treeef79456cfbd164e7e1187d43ef980a131492524b /llvm/unittests/Object/ELFObjectFileTest.cpp
parentec2d6add367acbc03dba038b7d4e519b11bbadec (diff)
downloadllvm-769976261249109d02516eb684584c1c8576a882.zip
llvm-769976261249109d02516eb684584c1c8576a882.tar.gz
llvm-769976261249109d02516eb684584c1c8576a882.tar.bz2
[slp][profcheck] Mark `select`s as having unknown profile (#162960)
There are 2 cases: - either the `select`​ condition is a vector of bools, case in which we don't currently have a way to represent the per-element branch probabilities anyway; - or the select condition is a scalar, for example from a `llvm.vector.reduce`​. We could potentially try and do more here - if the reduced vector contained conditions from other selects, for instance In either case, IIUC, chances are the `select`​ doesn't get lowered to a branch, at least I'm not seeing any evidence of that in an internal complex application (CSFDO + ThinLTO). Seems sufficient to mark the selects are unknown (for profiled functions); since that metadata carries with it the pass name (`DEBUG_TYPE`​) that marked it as such, we can revisit this if we detect later lowerings of these selects that would have required an actual profile. Issue #147390
Diffstat (limited to 'llvm/unittests/Object/ELFObjectFileTest.cpp')
0 files changed, 0 insertions, 0 deletions