diff options
author | Luke Drummond <luke.drummond@codeplay.com> | 2017-01-04 12:11:04 +0000 |
---|---|---|
committer | Luke Drummond <luke.drummond@codeplay.com> | 2017-01-04 12:11:04 +0000 |
commit | 47d6416189fd87cddc5c5ce0e3907d3d7d76742e (patch) | |
tree | e1f5a0276971514062dcdc5a8bd7f694de1ae0f9 /lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h | |
parent | 939b8cd70827d195eeaec550b0ed7a47256f2e6d (diff) | |
download | bcm5719-llvm-47d6416189fd87cddc5c5ce0e3907d3d7d76742e.tar.gz bcm5719-llvm-47d6416189fd87cddc5c5ce0e3907d3d7d76742e.zip |
Add a debuginfo version check for RenderScript modules
Added an extra field parser to the `RSModuleDescriptor` class enabling us to
check whether the versions of LLVM used to generated the debug symbols match
across the RenderScript compiler frontend (llvm-rs-cc) and backend (bcc); if
they do not, we warn the user that the debugging experience may be suboptimal
as LLVM IR debug information has no compatibility guarantees.
llvm-svn: 290957
Diffstat (limited to 'lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h')
-rw-r--r-- | lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h index a1211a2814b..5b2bb57ac8c 100644 --- a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h +++ b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h @@ -203,6 +203,11 @@ struct RSReductionDescriptor { }; class RSModuleDescriptor { + std::string m_slang_version; + std::string m_bcc_version; + + bool ParseVersionInfo(llvm::StringRef *, size_t n_lines); + bool ParseExportForeachCount(llvm::StringRef *, size_t n_lines); bool ParseExportVarCount(llvm::StringRef *, size_t n_lines); @@ -222,6 +227,8 @@ public: void Dump(Stream &strm) const; + void WarnIfVersionMismatch(Stream *s) const; + const lldb::ModuleSP m_module; std::vector<RSKernelDescriptor> m_kernels; std::vector<RSGlobalDescriptor> m_globals; |