[all-commits] [llvm/llvm-project] ffbff6: [lldb/DWARF] Ignore debug info pointing to the low...
Pavel Labath via All-commits
all-commits at lists.llvm.org
Wed Oct 20 02:19:52 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ffbff6c511ba230954013eca8d824a66f6b4f9a5
https://github.com/llvm/llvm-project/commit/ffbff6c511ba230954013eca8d824a66f6b4f9a5
Author: Pavel Labath <pavel at labath.sk>
Date: 2021-10-20 (Wed, 20 Oct 2021)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/test/Shell/SymbolFile/DWARF/lit.local.cfg
A lldb/test/Shell/SymbolFile/DWARF/x86/dead-code-filtering.yaml
Log Message:
-----------
[lldb/DWARF] Ignore debug info pointing to the low addresses
specifically, ignore addresses that point before the first code section.
This resurrects D87172 with several notable changes:
- it fixes a bug where the early exits in InitializeObject left
m_first_code_address "initialized" to LLDB_INVALID_ADDRESS (0xfff..f),
which caused _everything_ to be ignored.
- it extends the line table fix to function parsing as well, where it
replaces a similar check which was checking the executable permissions
of the section. This was insufficient because some
position-independent elf executables can have an executable segment
mapped at file address zero. (What makes this fix different is that it
checks for the executable-ness of the sections contained within that
segment, and those will not be at address zero.)
- It uses a different test case, with an elf file with near-zero
addresses, and checks for both line table and function parsing.
Differential Revision: https://reviews.llvm.org/D112058
More information about the All-commits
mailing list