diff options
| author | Alexey Samsonov <vonosmas@gmail.com> | 2015-10-29 22:21:37 +0000 |
|---|---|---|
| committer | Alexey Samsonov <vonosmas@gmail.com> | 2015-10-29 22:21:37 +0000 |
| commit | 8df3a07aa828693365f35c523b7b02ed0c6a43b8 (patch) | |
| tree | aca89fde8bf85d7a897b8edf89023e8c58cb7937 /llvm/lib/DebugInfo/Symbolize/CMakeLists.txt | |
| parent | 6baace032460c98a289f2a0545215487bf99c0e8 (diff) | |
| download | bcm5719-llvm-8df3a07aa828693365f35c523b7b02ed0c6a43b8.tar.gz bcm5719-llvm-8df3a07aa828693365f35c523b7b02ed0c6a43b8.zip | |
[LLVMSymbolize] Move ModuleInfo into a separate class (SymbolizableModule).
Summary:
This is mostly NFC. It is a first step in cleaning up LLVMSymbolize
library. It removes "ModuleInfo" class which bundles together ObjectFile
and its debug info context in favor of:
* abstract SymbolizableModule in public headers;
* SymbolizableObjectFile subclass in implementation.
Additionally, SymbolizableObjectFile is now created via factory, so we
can properly detect object parsing error at this stage instead of keeping
the broken half-parsed object. As a next step, we would be able to
propagate the error all the way back to the library user.
Further improvements might include:
* factoring out the logic of finding appropriate file with debug info
for a given object file, and caching all parsed object files into a
separate class [A].
* factoring out DILineInfo rendering [B].
This would make what is now a heavyweight "LLVMSymbolizer" a relatively
straightforward class, that calls into [A] to turn filepath into a
SymbolizableModule, delegates actual symbolization to concrete SymbolizableModule
implementation, and lets [C] render the result.
Reviewers: dblaikie, echristo, rafael
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D14099
llvm-svn: 251662
Diffstat (limited to 'llvm/lib/DebugInfo/Symbolize/CMakeLists.txt')
| -rw-r--r-- | llvm/lib/DebugInfo/Symbolize/CMakeLists.txt | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt b/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt index 0e43eaa977c..82156c122ec 100644 --- a/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt +++ b/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt @@ -1,4 +1,5 @@ add_llvm_library(LLVMSymbolize + SymbolizableObjectFile.cpp Symbolize.cpp ADDITIONAL_HEADER_DIRS |

