This adds a basic support of the .debug_rnglists section.
Only the DW_RLE_start_length and DW_RLE_end_of_list entries are supported.
Details
- Reviewers
clayborg • espindola - Group Reviewers
Restricted Project - Commits
- rG6e357123ed12: [LLDB] - Add basic support for .debug_rnglists section (DWARF5)
rLLDB344119: [LLDB] - Add basic support for .debug_rnglists section (DWARF5)
rL344119: [LLDB] - Add basic support for .debug_rnglists section (DWARF5)
Diff Detail
- Repository
- rL LLVM
Event Timeline
Just add a switch statement when handling the encodings and a lldbassert as mentioned in inlined comments and this will be good to go.
source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp | ||
---|---|---|
134–144 ↗ | (On Diff #168642) | Use a switch statement here? We also want to use a lldbassert for any non supported encodings (in the default case of the switch statement) so we know if/when a compiler starts emitting an encoding we don't yet support when running the test suite with assertions enabled. That will let us know why things are failing. |
For space savings it seems like we would want to support the DW_RLE_base_address and DW_RLE_offset_pair pretty soon.
- Addressed review comments.
source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp | ||
---|---|---|
134–144 ↗ | (On Diff #168642) | Thanks! I was wondering if I can use some kind of an assert here. Because I noticed that usually lldb just return false |
lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp | ||
---|---|---|
163 | variable is not used anywhere |
lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp | ||
---|---|---|
163 | Removed in r345720, thanks! |
variable is not used anywhere