diff options
author | Jason Molenda <jmolenda@apple.com> | 2014-03-08 01:34:55 +0000 |
---|---|---|
committer | Jason Molenda <jmolenda@apple.com> | 2014-03-08 01:34:55 +0000 |
commit | ac605f4a3aa01619c17a9b1d96abdab86315b0c0 (patch) | |
tree | 7706b1bd9c9c72d3bdf113d946de11d53ab6521a /lldb/source/API | |
parent | f528f054d081addb0d383020445a703f7371da85 (diff) | |
download | bcm5719-llvm-ac605f4a3aa01619c17a9b1d96abdab86315b0c0.tar.gz bcm5719-llvm-ac605f4a3aa01619c17a9b1d96abdab86315b0c0.zip |
Add API logging to the SBQueue/SBQueueItem/SBThread calls.
llvm-svn: 203330
Diffstat (limited to 'lldb/source/API')
-rw-r--r-- | lldb/source/API/SBQueue.cpp | 50 | ||||
-rw-r--r-- | lldb/source/API/SBQueueItem.cpp | 31 | ||||
-rw-r--r-- | lldb/source/API/SBThread.cpp | 4 |
3 files changed, 77 insertions, 8 deletions
diff --git a/lldb/source/API/SBQueue.cpp b/lldb/source/API/SBQueue.cpp index 8d67a48d6b8..feb5014b7f7 100644 --- a/lldb/source/API/SBQueue.cpp +++ b/lldb/source/API/SBQueue.cpp @@ -301,13 +301,21 @@ SBQueue::~SBQueue() bool SBQueue::IsValid() const { - return m_opaque_sp->IsValid(); + bool is_valid = m_opaque_sp->IsValid (); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::IsValid() == %s", m_opaque_sp->GetQueueID(), + is_valid ? "true" : "false"); + return is_valid; } void SBQueue::Clear () { + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::Clear()", m_opaque_sp->GetQueueID()); m_opaque_sp->Clear(); } @@ -321,43 +329,71 @@ SBQueue::SetQueue (const QueueSP& queue_sp) lldb::queue_id_t SBQueue::GetQueueID () const { - return m_opaque_sp->GetQueueID (); + lldb::queue_id_t qid = m_opaque_sp->GetQueueID (); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetQueueID() == 0x%" PRIx64, m_opaque_sp->GetQueueID(), (uint64_t) qid); + return qid; } uint32_t SBQueue::GetIndexID () const { - return m_opaque_sp->GetIndexID (); + uint32_t index_id = m_opaque_sp->GetIndexID (); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetIndexID() == 0x%" PRIx32, m_opaque_sp->GetQueueID(), index_id); + return index_id; } const char * SBQueue::GetName () const { - return m_opaque_sp->GetName (); + const char *name = m_opaque_sp->GetName (); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetName() == %s", m_opaque_sp->GetQueueID(), + name ? name : ""); + return name; } uint32_t SBQueue::GetNumThreads () { - return m_opaque_sp->GetNumThreads (); + uint32_t numthreads = m_opaque_sp->GetNumThreads (); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetNumThreads() == %d", m_opaque_sp->GetQueueID(), numthreads); + return numthreads; } SBThread SBQueue::GetThreadAtIndex (uint32_t idx) { - return m_opaque_sp->GetThreadAtIndex (idx); + SBThread th = m_opaque_sp->GetThreadAtIndex (idx); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetThreadAtIndex(%d)", m_opaque_sp->GetQueueID(), idx); + return th; } uint32_t SBQueue::GetNumPendingItems () { - return m_opaque_sp->GetNumPendingItems (); + uint32_t pending_items = m_opaque_sp->GetNumPendingItems (); + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetNumPendingItems() == %d", m_opaque_sp->GetQueueID(), pending_items); + return pending_items; } SBQueueItem SBQueue::GetPendingItemAtIndex (uint32_t idx) { + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueue(0x%" PRIx64 ")::GetPendingItemAtIndex(%d)", m_opaque_sp->GetQueueID(), idx); return m_opaque_sp->GetPendingItemAtIndex (idx); } diff --git a/lldb/source/API/SBQueueItem.cpp b/lldb/source/API/SBQueueItem.cpp index 5cc37da7990..10d036ab880 100644 --- a/lldb/source/API/SBQueueItem.cpp +++ b/lldb/source/API/SBQueueItem.cpp @@ -14,6 +14,7 @@ #include "lldb/API/SBQueueItem.h" #include "lldb/API/SBThread.h" #include "lldb/Core/Address.h" +#include "lldb/Core/Log.h" #include "lldb/Target/Process.h" #include "lldb/Target/QueueItem.h" #include "lldb/Target/Thread.h" @@ -45,13 +46,20 @@ SBQueueItem::~SBQueueItem() bool SBQueueItem::IsValid() const { - return m_queue_item_sp.get() != NULL; + bool is_valid = m_queue_item_sp.get() != NULL; + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueueItem(%p)::IsValid() == %s", m_queue_item_sp.get(), is_valid ? "true" : "false"); + return is_valid; } void SBQueueItem::Clear () { + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); + if (log) + log->Printf("SBQueueItem(%p)::Clear()", m_queue_item_sp.get()); m_queue_item_sp.reset(); } @@ -67,10 +75,13 @@ lldb::QueueItemKind SBQueueItem::GetKind () const { QueueItemKind result = eQueueItemKindUnknown; + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); if (m_queue_item_sp) { result = m_queue_item_sp->GetKind (); } + if (log) + log->Printf("SBQueueItem(%p)::GetKind() == %d", m_queue_item_sp.get(), (int) result); return result; } @@ -87,10 +98,20 @@ SBAddress SBQueueItem::GetAddress () const { SBAddress result; + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); if (m_queue_item_sp) { result.SetAddress (&m_queue_item_sp->GetAddress()); } + if (log) + { + StreamString sstr; + const Address *addr = result.get(); + if (addr) + addr->Dump (&sstr, NULL, Address::DumpStyleModuleWithFileAddress, Address::DumpStyleInvalid, 4); + log->Printf ("SBQueueItem(%p)::GetAddress() == SBAddress(%p): %s", + m_queue_item_sp.get(), result.get(), sstr.GetData()); + } return result; } @@ -107,6 +128,7 @@ SBThread SBQueueItem::GetExtendedBacktraceThread (const char *type) { SBThread result; + Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); if (m_queue_item_sp) { ProcessSP process_sp = m_queue_item_sp->GetProcessSP(); @@ -122,6 +144,13 @@ SBQueueItem::GetExtendedBacktraceThread (const char *type) // object process_sp->GetExtendedThreadList().AddThread (thread_sp); result.SetThread (thread_sp); + if (log) + { + const char *queue_name = thread_sp->GetQueueName(); + if (queue_name == NULL) + queue_name = ""; + log->Printf ("SBQueueItem(%p)::GetExtendedBacktraceThread() = new extended Thread created (%p) with queue_id 0x%" PRIx64 " queue name '%s'", m_queue_item_sp.get(), thread_sp.get(), (uint64_t) thread_sp->GetQueueID(), queue_name); + } } } } diff --git a/lldb/source/API/SBThread.cpp b/lldb/source/API/SBThread.cpp index 4170d5b230b..66f9df3b13c 100644 --- a/lldb/source/API/SBThread.cpp +++ b/lldb/source/API/SBThread.cpp @@ -1330,6 +1330,10 @@ SBThread::GetExtendedBacktraceThread (const char *type) } } + if (log && sb_origin_thread.IsValid() == false) + { + log->Printf("SBThread(%p)::GetExtendedBacktraceThread() is not returning a Valid thread", exe_ctx.GetThreadPtr()); + } return sb_origin_thread; } |