llvm-project/lldb/source
Pavel Labath cd5da94d80 [lldb/DWARF] Fix mixed v4+v5 location lists
Summary:
Our code was expecting that a single (symbol) file contains only one
kind of location lists. This is not correct (on non-apple platforms, at
least) as a file can compile units with different dwarf versions.

This patch moves the deteremination of location list flavour down to the
compile unit level, fixing this problem. I have also tried to rougly
align the code with the llvm DWARFUnit. Fully matching the API is not
possible because of how lldb's DWARFExpression lives separately from the
rest of the DWARF code, but this is at least a step in the right
direction.

Reviewers: JDevlieghere, aprantl, clayborg

Subscribers: dblaikie, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D71751
2020-01-09 13:19:29 +01:00
..
API [lldb][NFC] Use static_cast instead of reinterpret_cast where possible 2020-01-07 13:03:56 +01:00
Breakpoint [lldb][NFC] Migrate FileSpec::Dump to raw_ostream 2019-12-06 09:40:42 +01:00
Commands [lldb/Command] Add --force option for `watchpoint delete` command 2020-01-04 03:11:15 +01:00
Core [lldb] Remove various dead Compare functions 2020-01-08 18:05:33 -08:00
DataFormatters TypeCategory: Initialize m_enabled to false 2019-12-12 11:39:41 -08:00
Expression [lldb/DWARF] Fix mixed v4+v5 location lists 2020-01-09 13:19:29 +01:00
Host [lldb][NFC] Use static_cast instead of reinterpret_cast where possible 2020-01-07 13:03:56 +01:00
Initialization [Reproducer] Use ::rtrim() to remove trailing control characters. 2019-10-18 17:11:48 +00:00
Interpreter [lldb/CMake] Fix variable naming in FindLibEdit 2020-01-02 13:39:57 -08:00
Plugins [lldb/DWARF] Fix mixed v4+v5 location lists 2020-01-09 13:19:29 +01:00
Symbol [lldb] Remove various dead Compare functions 2020-01-08 18:05:33 -08:00
Target [lldb][NFC] Use static_cast instead of reinterpret_cast where possible 2020-01-07 13:03:56 +01:00
Utility [lldb][NFC] Use static_cast instead of reinterpret_cast where possible 2020-01-07 13:03:56 +01:00
CMakeLists.txt [CMake] Remove Apple-specific version logic. 2019-04-17 18:23:22 +00:00
lldb.cpp [CMake] Remove Apple-specific version logic. 2019-04-17 18:23:22 +00:00