summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h
diff options
context:
space:
mode:
authorLuke Drummond <luke.drummond@codeplay.com>2017-01-04 12:11:04 +0000
committerLuke Drummond <luke.drummond@codeplay.com>2017-01-04 12:11:04 +0000
commit47d6416189fd87cddc5c5ce0e3907d3d7d76742e (patch)
treee1f5a0276971514062dcdc5a8bd7f694de1ae0f9 /lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h
parent939b8cd70827d195eeaec550b0ed7a47256f2e6d (diff)
downloadbcm5719-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.h7
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;
OpenPOWER on IntegriCloud