diff options
author | Alexander Yermolovich <43973793+ayermolo@users.noreply.github.com> | 2024-02-14 11:23:57 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-14 11:23:57 -0800 |
commit | c9e8e91acae73c84a30311c6c745361251cf5146 (patch) | |
tree | fd0e0f469ab0a8ee7858ee668b632c3907e76b9a /clang/lib/CodeGen/CodeGenAction.cpp | |
parent | 6297479ff0808e7c5335ec9ec837513e1cff610f (diff) | |
download | llvm-c9e8e91acae73c84a30311c6c745361251cf5146.zip llvm-c9e8e91acae73c84a30311c6c745361251cf5146.tar.gz llvm-c9e8e91acae73c84a30311c6c745361251cf5146.tar.bz2 |
[BOLT][DWARF] Fix out of order rangelists/loclists (#81645)
GCC can generate rangelists/loclists that are out of order. Fixed so
that we don't assert, and instead generate partially optimized list.
Through most code paths we do sort rnglists/loclists, but not for
loclist for a path where BOLT does not modify a function. Although it's
nice to have lists sorted, this implementation shouldn't rely on it.
This also fixes an issue if we partially capture a list we would write
out *end_of_list in helper function. So tools won't see the rest of the
addresses being written out.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenAction.cpp')
0 files changed, 0 insertions, 0 deletions