llvm-project/lldb/source/Plugins
Pavel Labath 9f5927e42b [lldb/DWARF] Fix handling of variables with both location and const_value attributes
Class-level static constexpr variables can have both DW_AT_const_value
(in the "declaration") and a DW_AT_location (in the "definition")
attributes. Our code was trying to handle this, but it was brittle and
hard to follow (and broken) because it was processing the attributes in
the order in which they were found.

Refactor the code to make the intent clearer -- DW_AT_location trumps
DW_AT_const_value, and fix the bug which meant that we were not
displaying these variables properly (the culprit was the delayed parsing
of the const_value attribute due to a need to fetch the variable type.

Differential Revision: https://reviews.llvm.org/D86615
2020-08-27 15:05:47 +02:00
..
ABI Thread ExecutionContextScope through GetByteSize where possible (NFC-ish) 2020-07-22 08:56:29 -07:00
Architecture [lldb] Reduce duplication in the Disassembler class 2020-03-09 13:41:43 +01:00
Disassembler [lldb] Update header guards to be consistent and compliant with LLVM (NFC) 2020-02-17 23:15:40 -08:00
DynamicLoader [lldb] Only set the executable module for a target once 2020-07-17 08:35:38 +02:00
ExpressionParser [lldb] Extract reproducer providers & co into their own header. 2020-08-22 10:04:27 -07:00
Instruction [LLDB][NFC] Remove redundant condition 2020-07-01 09:04:26 +02:00
InstrumentationRuntime [lldb][NFC] Make all CompilerDeclContext parameters references instead of pointers 2020-02-18 08:58:36 +01:00
JITLoader [lldb] Remove DataExtractor::GetPointer 2020-02-18 10:38:41 +01:00
Language [lldb] Fix NSArray0 data formatter and add test 2020-08-10 09:38:37 -07:00
LanguageRuntime [CMake] Make `intrinsics_gen` dependency unconditional. 2020-07-17 16:43:17 -07:00
MemoryHistory [lldb/MemoryHistoryAsan] Fix address resolution for recorded backtraces 2020-03-18 13:18:02 -07:00
ObjectContainer Replace std::string::find == 0 with StringRef::startswith 2020-03-31 21:01:09 +02:00
ObjectFile Fix a check that was attempting to see if an object file was in memory. 2020-08-18 13:24:22 -07:00
OperatingSystem [lldb] Use std::make_unique<DynamicRegisterInfo> (NFC) 2020-07-22 11:32:48 -07:00
Platform [lldb] Remote disk file/directory completion for platform commands 2020-08-24 17:55:54 +02:00
Process Load correct module for linux and android when duplicates exist in minidump. 2020-08-26 15:48:34 -07:00
ScriptInterpreter [lldb] Get rid of helper CMake variables for Python 2020-08-17 08:47:52 -07:00
StructuredData [lldb/Interpreter] Support color in CommandReturnObject 2020-06-09 10:45:45 -07:00
SymbolFile [lldb/DWARF] Fix handling of variables with both location and const_value attributes 2020-08-27 15:05:47 +02:00
SymbolVendor [lldb] Extract reproducer providers & co into their own header. 2020-08-22 10:04:27 -07:00
SystemRuntime [lldb] NFC remove DISALLOW_COPY_AND_ASSIGN 2020-06-02 13:23:53 -04:00
TypeSystem [lldb] Fix a new -Wdocumetnation issues (NFC) 2020-08-20 22:59:13 -07:00
UnwindAssembly [lldb/Unwind] Use eh_frame plan directly when it doesn't need to be augmented 2020-06-26 11:46:47 +02:00
CMakeLists.txt Re-land "[lldb/CMake] Auto-generate the Initialize and Terminate calls for plugin" 2020-02-18 19:16:07 -08:00
Plugins.def.in Re-land "[lldb/CMake] Auto-generate the Initialize and Terminate calls for plugin" 2020-02-18 19:16:07 -08:00