llvm-project/lldb/source/Plugins
Kim-Anh Tran 68dafe40a6 [lldb] Use CompileUnit::ResolveSymbolContext in SymbolFileDWARF
SymbolFileDWARF::ResolveSymbolContext is currently unaware that in DWARF5 the primary file is specified at file index 0. As a result it misses to correctly resolve the symbol context for the primary file when DWARF5 debug data is used and the primary file is only specified at index 0.

This change makes use of CompileUnit::ResolveSymbolContext to resolve the symbol context. The ResolveSymbolContext in CompileUnit has been previously already updated to reflect changes in DWARF5
and contains a more readable version. It can resolve more, but will also do a bit more work than
SymbolFileDWARF::ResolveSymbolContext (getting the Module, and going through SymbolFileDWARF::ResolveSymbolContextForAddress), however, it's mostly directed by $resolve_scope
what will be resolved, and ensures that code is easier to maintain if there's only one path.

Reviewed By: labath

Differential Revision: https://reviews.llvm.org/D98619
2021-03-22 08:44:16 +01:00
..
ABI [lldb][NFC] Give CompilerType's IsArrayType/IsVectorType/IsBlockPointerType out-parameters default values 2021-02-23 11:15:31 +01:00
Architecture [lldb] Reduce duplication in the Disassembler class 2020-03-09 13:41:43 +01:00
Disassembler [lldb][ARM/AArch64] Update disasm flags to latest v8.7a ISA 2021-01-07 10:51:47 +00:00
DynamicLoader Revert "Make sure the interpreter module was loaded before making checks against it" 2021-02-21 10:38:25 -08:00
ExpressionParser [lldb][NFC] Code style fixes for ClangModulesDeclVendor 2021-03-08 17:28:05 +01:00
Instruction [LLDB][NFC] Remove redundant condition 2020-07-01 09:04:26 +02:00
InstrumentationRuntime [lldb][NFC] Apply performance-faster-string-find (`str.find("X")` -> `str.find('x')`) 2020-12-16 10:53:18 -08:00
JITLoader [lldb] Make DoReadMemory a protected method. 2021-01-07 21:06:36 -08:00
Language [lldb] Add deref support to libc++ unique_ptr synthetic 2021-02-26 07:39:01 -08:00
LanguageRuntime Make iteration over the DeclContext::lookup_result safe. 2021-03-17 08:59:04 +00:00
MemoryHistory [lldb] Access the ModuleList through iterators where possible (NFC) 2021-01-07 21:06:36 -08:00
ObjectContainer [lldb] Abstract scoped timer logic behind LLDB_SCOPED_TIMER (NFC) 2020-12-22 09:10:27 -08:00
ObjectFile [lldb] s/TARGET_OS_EMBEDDED/TARGET_OS_IPHONE/ 2021-02-11 20:40:59 -08:00
OperatingSystem [lldb] Use std::make_unique<DynamicRegisterInfo> (NFC) 2020-07-22 11:32:48 -07:00
Platform [lldb/PlatformPOSIX] Change LoadImage default to RTLD_LAZY (reapply) 2021-03-19 16:06:00 -07:00
Process [lldb] [Process/FreeBSD] Introduce aarch64 hw break/watchpoint support 2021-03-10 18:36:19 +01:00
ScriptInterpreter [lldb] Fix a bug in D96779 (shared lib directory logic) 2021-03-09 15:15:45 +01:00
StructuredData Use basic_string::find(char) instead of basic_string::find(const char *s, size_type pos=0) 2020-12-16 23:28:32 -08:00
SymbolFile [lldb] Use CompileUnit::ResolveSymbolContext in SymbolFileDWARF 2021-03-22 08:44:16 +01:00
SymbolVendor [lldb] Abstract scoped timer logic behind LLDB_SCOPED_TIMER (NFC) 2020-12-22 09:10:27 -08:00
SystemRuntime Make the error condition in Value::ValueType explicit (NFC) 2021-02-12 16:12:31 -08:00
Trace [trace][intel-pt] Scaffold the 'thread trace start | stop' commands 2020-11-18 18:24:36 -08:00
TypeSystem Make iteration over the DeclContext::lookup_result safe. 2021-03-17 08:59:04 +00: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 Add a "Trace" plug-in to LLDB to add process trace support in stages. 2020-09-21 17:13:18 -07: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