diff options
author | Teresa Johnson <tejohnson@google.com> | 2024-01-11 06:57:48 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-11 06:57:48 -0800 |
commit | 26a8664ed4573ef1559c4edc7b254a10d186d428 (patch) | |
tree | 3e1bd55c07e7ffcceceb6fddbb9b9ead0c6609e4 /llvm/lib/Bitcode/Reader/MetadataLoader.cpp | |
parent | dc717b19925c9e0a4fcca0ad277476400f62cc25 (diff) | |
download | llvm-26a8664ed4573ef1559c4edc7b254a10d186d428.zip llvm-26a8664ed4573ef1559c4edc7b254a10d186d428.tar.gz llvm-26a8664ed4573ef1559c4edc7b254a10d186d428.tar.bz2 |
[MemProf] Handle missing tail call frames (#75823)
If tail call optimization was not disabled for the profiled binary, the
call contexts will be missing frames for tail calls. Handle this by
performing a limited search through tail call edges for the profiled
callee when a discontinuity is detected. The search depth is adjustable
but defaults to 5.
If we are able to identify a short sequence of tail calls, update the
graph for those calls. In the case of ThinLTO, synthesize the necessary
CallsiteInfos for carrying the cloning information to the backends.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/MetadataLoader.cpp')
0 files changed, 0 insertions, 0 deletions