diff options
author | Enrico Granata <egranata@apple.com> | 2015-09-22 19:45:52 +0000 |
---|---|---|
committer | Enrico Granata <egranata@apple.com> | 2015-09-22 19:45:52 +0000 |
commit | c74275bc4ae734d93a994dbe7d071f79c0137039 (patch) | |
tree | 010b9bf99048722a21f77358d2eadccbd6e8d4c5 /lldb/source/Plugins/LanguageRuntime/RenderScript | |
parent | d60db64e7dd4b430d74d883dfa8cb84c22c336c0 (diff) | |
download | bcm5719-llvm-c74275bc4ae734d93a994dbe7d071f79c0137039.tar.gz bcm5719-llvm-c74275bc4ae734d93a994dbe7d071f79c0137039.zip |
Move the logic to post-process dynamic types for ValueObject purposes from the ValueObjects to the LanguageRuntime plugins
This is meant to cover cases such as the obvious
Base *base = new Derived();
where GetDynamicTypeAndAddress(base) would return the type "Derived", not "Derived *"
llvm-svn: 248315
Diffstat (limited to 'lldb/source/Plugins/LanguageRuntime/RenderScript')
2 files changed, 11 insertions, 0 deletions
diff --git a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp index 7d887be4134..ac841c28643 100644 --- a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp +++ b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp @@ -313,6 +313,13 @@ RenderScriptRuntime::GetDynamicTypeAndAddress(ValueObject &in_value, lldb::Dynam return false; } +TypeAndOrName +RenderScriptRuntime::FixUpDynamicType(const TypeAndOrName& type_and_or_name, + const CompilerType& static_type) +{ + return type_and_or_name; +} + bool RenderScriptRuntime::CouldHaveDynamicValue(ValueObject &in_value) { diff --git a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h index 1f35f10b5ef..4e2f693c094 100644 --- a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h +++ b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h @@ -183,6 +183,10 @@ class RenderScriptRuntime : public lldb_private::CPPLanguageRuntime virtual bool GetDynamicTypeAndAddress(ValueObject &in_value, lldb::DynamicValueType use_dynamic, TypeAndOrName &class_type_or_name, Address &address, Value::ValueType &value_type); + + virtual TypeAndOrName + FixUpDynamicType(const TypeAndOrName& type_and_or_name, + const CompilerType& static_type); virtual bool CouldHaveDynamicValue(ValueObject &in_value); |