aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/PrologEpilogInserter.cpp
diff options
context:
space:
mode:
authorPavel Labath <pavel@labath.sk>2025-04-23 13:31:17 +0200
committerGitHub <noreply@github.com>2025-04-23 13:31:17 +0200
commit1fd0b41b44603c190f507f222c16d9f98470f89d (patch)
tree06cac4e880e76de135cdea4680e4330b5c91d4fb /llvm/lib/CodeGen/PrologEpilogInserter.cpp
parenta99e055030f0da61651e808cbb208bb39594cdc0 (diff)
downloadllvm-1fd0b41b44603c190f507f222c16d9f98470f89d.zip
llvm-1fd0b41b44603c190f507f222c16d9f98470f89d.tar.gz
llvm-1fd0b41b44603c190f507f222c16d9f98470f89d.tar.bz2
[lldb/DWARF] Remove "range lower than function low_pc" check (#132395)
The check is not correct for discontinuous functions, as one of the blocks could very well begin before the function entry point. To catch dead-stripped ranges, I check whether the functions is after the first known code address. I don't print any error in this case as that is a common/expected situation. This avoids many errors like: ``` error: ld-linux-x86-64.so.2 0x00085f3b: adding range [0x0000000000001ae8-0x0000000000001b07) which has a base that is less than the function's low PC 0x000000000001cfb0. Please file a bug and attach the file at the start of this error message ``` when debugging binaries on debian trixie because the dynamic linker (ld-linux) contains discontinuous functions. If the block ranges is not a subrange of the enclosing block then this will range will currently be added to the outer block as well (i.e., we get the same behavior that's currently possible for non-subrange blocks larger than function_low_pc). However, this code path is buggy and I'd like to change that (#117725).
Diffstat (limited to 'llvm/lib/CodeGen/PrologEpilogInserter.cpp')
0 files changed, 0 insertions, 0 deletions