summaryrefslogtreecommitdiffstats
path: root/lldb/source/API/SBThread.cpp
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2019-04-03 21:31:22 +0000
committerJonas Devlieghere <jonas@devlieghere.com>2019-04-03 21:31:22 +0000
commit306809f292c9dd26e1a901b139f65976cdd5a4b2 (patch)
treeb22cc9af74e85c1ab680b7ad5a8ac035fda72f5e /lldb/source/API/SBThread.cpp
parent7c711ccf36e0a818f76d711715956ffe831f53b6 (diff)
downloadbcm5719-llvm-306809f292c9dd26e1a901b139f65976cdd5a4b2.tar.gz
bcm5719-llvm-306809f292c9dd26e1a901b139f65976cdd5a4b2.zip
[Reproducers] Capture return values of functions returning by ptr/ref
For some reason I had convinced myself that functions returning by pointer or reference do not require recording their result. However, after further considering I don't see how that could work, at least not with the current implementation. Interestingly enough, the reproducer instrumentation already (mostly) accounts for this, though the lldb-instr tool did not. This patch adds the missing macros and updates the lldb-instr tool. Differential revision: https://reviews.llvm.org/D60178 llvm-svn: 357639
Diffstat (limited to 'lldb/source/API/SBThread.cpp')
-rw-r--r--lldb/source/API/SBThread.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/lldb/source/API/SBThread.cpp b/lldb/source/API/SBThread.cpp
index 0e6d510fcbd..978f2929f17 100644
--- a/lldb/source/API/SBThread.cpp
+++ b/lldb/source/API/SBThread.cpp
@@ -84,7 +84,7 @@ const lldb::SBThread &SBThread::operator=(const SBThread &rhs) {
if (this != &rhs)
m_opaque_sp = clone(rhs.m_opaque_sp);
- return *this;
+ return LLDB_RECORD_RESULT(*this);
}
//----------------------------------------------------------------------
@@ -1402,9 +1402,8 @@ lldb_private::Thread *SBThread::operator->() {
ThreadSP thread_sp(m_opaque_sp->GetThreadSP());
if (thread_sp)
- return thread_sp.get();
- else
- return NULL;
+ return LLDB_RECORD_RESULT(thread_sp.get());
+ return nullptr;
}
lldb_private::Thread *SBThread::get() {
@@ -1412,9 +1411,8 @@ lldb_private::Thread *SBThread::get() {
ThreadSP thread_sp(m_opaque_sp->GetThreadSP());
if (thread_sp)
- return thread_sp.get();
- else
- return NULL;
+ return LLDB_RECORD_RESULT(thread_sp.get());
+ return nullptr;
}
namespace lldb_private {
OpenPOWER on IntegriCloud