[Lldb-commits] [PATCH] D62755: [Target] Remove Process::GetCPPLanguageRuntime
Alex Langford via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Fri May 31 19:18:19 PDT 2019
xiaobai updated this revision to Diff 202523.
xiaobai added a comment.
Jim's suggestion
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D62755/new/
https://reviews.llvm.org/D62755
Files:
include/lldb/Target/CPPLanguageRuntime.h
include/lldb/Target/Process.h
include/lldb/lldb-forward.h
source/Plugins/Language/CPlusPlus/LibCxx.cpp
source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
source/Target/Process.cpp
Index: source/Target/Process.cpp
===================================================================
--- source/Target/Process.cpp
+++ source/Target/Process.cpp
@@ -1598,16 +1598,6 @@
return runtime;
}
-CPPLanguageRuntime *Process::GetCPPLanguageRuntime(bool retry_if_null) {
- std::lock_guard<std::recursive_mutex> guard(m_language_runtimes_mutex);
- LanguageRuntime *runtime =
- GetLanguageRuntime(eLanguageTypeC_plus_plus, retry_if_null);
- if (!runtime)
- return nullptr;
-
- return static_cast<CPPLanguageRuntime *>(runtime);
-}
-
ObjCLanguageRuntime *Process::GetObjCLanguageRuntime(bool retry_if_null) {
std::lock_guard<std::recursive_mutex> guard(m_language_runtimes_mutex);
LanguageRuntime *runtime =
Index: source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
===================================================================
--- source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
+++ source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
@@ -462,7 +462,7 @@
ValueObjectSP AppleObjCRuntime::GetExceptionObjectForThread(
ThreadSP thread_sp) {
- auto cpp_runtime = m_process->GetCPPLanguageRuntime();
+ auto *cpp_runtime = m_process->GetLanguageRuntime(eLanguageTypeC_plus_plus);
if (!cpp_runtime) return ValueObjectSP();
auto cpp_exception = cpp_runtime->GetExceptionObjectForThread(thread_sp);
if (!cpp_exception) return ValueObjectSP();
Index: source/Plugins/Language/CPlusPlus/LibCxx.cpp
===================================================================
--- source/Plugins/Language/CPlusPlus/LibCxx.cpp
+++ source/Plugins/Language/CPlusPlus/LibCxx.cpp
@@ -67,7 +67,8 @@
if (process == nullptr)
return false;
- CPPLanguageRuntime *cpp_runtime = process->GetCPPLanguageRuntime();
+ CPPLanguageRuntime *cpp_runtime =
+ CPPLanguageRuntime::GetCPPLanguageRuntime(*process);
if (!cpp_runtime)
return false;
Index: include/lldb/lldb-forward.h
===================================================================
--- include/lldb/lldb-forward.h
+++ include/lldb/lldb-forward.h
@@ -43,7 +43,6 @@
class BroadcastEventSpec;
class Broadcaster;
class BroadcasterManager;
-class CPPLanguageRuntime;
class ClangASTContext;
class ClangASTImporter;
class ClangASTMetadata;
Index: include/lldb/Target/Process.h
===================================================================
--- include/lldb/Target/Process.h
+++ include/lldb/Target/Process.h
@@ -2184,8 +2184,6 @@
LanguageRuntime *GetLanguageRuntime(lldb::LanguageType language,
bool retry_if_null = true);
- CPPLanguageRuntime *GetCPPLanguageRuntime(bool retry_if_null = true);
-
ObjCLanguageRuntime *GetObjCLanguageRuntime(bool retry_if_null = true);
bool IsPossibleDynamicValue(ValueObject &in_value);
Index: include/lldb/Target/CPPLanguageRuntime.h
===================================================================
--- include/lldb/Target/CPPLanguageRuntime.h
+++ include/lldb/Target/CPPLanguageRuntime.h
@@ -43,6 +43,11 @@
return lldb::eLanguageTypeC_plus_plus;
}
+ static CPPLanguageRuntime *GetCPPLanguageRuntime(Process &process) {
+ return static_cast<CPPLanguageRuntime *>(
+ process.GetLanguageRuntime(lldb::eLanguageTypeC_plus_plus));
+ }
+
virtual bool IsVTableName(const char *name) = 0;
bool GetObjectDescription(Stream &str, ValueObject &object) override;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D62755.202523.patch
Type: text/x-patch
Size: 3450 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20190601/e2b39428/attachment.bin>
More information about the lldb-commits
mailing list