llvm-project/lldb
Zachary Turner ac0d41c760 Change SymbolFile::ParseTypes to ParseTypesForCompileUnit.
The function SymbolFile::ParseTypes previously accepted a SymbolContext.
This makes it extremely difficult to implement faithfully, because you
have to account for all possible combinations of members being set in
the SymbolContext. On the other hand, no clients of this function
actually care about implementing this function to this strict of a
standard. AFAICT, there is actually only 1 client in the entire
codebase, and it is the function ParseAllDebugSymbols, which is itself
only called for testing purposes when dumping information. At this
call-site, the only field it sets is the CompileUnit, meaning that an
implementer of a SymbolFile need not worry about any examining or
handling any other fields which might be set.

By restricting this API to accept exactly a CompileUnit& and nothing
more, we can simplify the life of new SymbolFile plugin implementers by
making it clear exactly what the necessary and sufficient set of
functionality they need to implement is, while at the same time removing
some dead code that tried to handle other types of SymbolContext fields
that were never going to be set anyway.

Differential Revision: https://reviews.llvm.org/D56462

llvm-svn: 350889
2019-01-10 20:57:50 +00:00
..
cmake [CMake] In standalone builds, LLVM_BINARY_DIR should point to LLVM's binary directory 2019-01-09 16:25:37 +00:00
docs Add a description of the similar packets defined in the 2018-12-16 18:44:54 +00:00
examples Fix lldb's macosx/heap.py cstr command. 2018-12-17 18:21:51 +00:00
include/lldb Change SymbolFile::ParseTypes to ParseTypesForCompileUnit. 2019-01-10 20:57:50 +00:00
lit [NativePDB] Add support for parsing typedef records. 2019-01-10 20:57:32 +00:00
lldb.xcodeproj Remove Range.* from Xcode project 2019-01-02 22:23:51 +00:00
lldb.xcworkspace Fix a typo in the gtest build target for Debug configuration. 2018-04-10 17:49:56 +00:00
packages/Python/lldbsuite lldbtest.py: try to fix a runtime exception 2019-01-10 19:06:46 +00:00
resources [CMake] Revised LLDB.framework builds 2019-01-04 12:46:50 +00:00
scripts [Python] Update PyString_FromString() to work for python 2 and 3. 2019-01-09 22:52:47 +00:00
source Change SymbolFile::ParseTypes to ParseTypesForCompileUnit. 2019-01-10 20:57:50 +00:00
test [CMake] Revised LLDB.framework builds 2019-01-04 12:46:50 +00:00
third_party/Python/module [dotest] Consider unexpected passes as failures. 2018-12-20 20:44:23 +00:00
tools Implement ObjectFileELF::GetBaseAddress 2019-01-10 09:32:31 +00:00
unittests [Scalar] Simplify comparison operators and add coverage. 2019-01-04 19:23:52 +00:00
utils Fix typos. 2018-10-04 22:33:39 +00:00
www [CMake] Fix standalone builds: workaround the cxx target not getting imported yet (unlike clang target) 2019-01-09 16:25:31 +00:00
.arcconfig
.clang-format
.gitignore [dotest] Remove crashinfo hook 2018-01-10 10:18:47 +00:00
CMakeLists.txt [CMake] In standalone builds, LLVM_BINARY_DIR should point to LLVM's binary directory 2019-01-09 16:25:37 +00:00
CODE_OWNERS.txt Fix/unify the spelling of Objective-C. 2018-06-13 16:21:24 +00:00
INSTALL.txt Changed builld-llvm.py to use .json files 2017-02-23 02:21:34 +00:00
LICENSE.TXT
use_lldb_suite_root.py