summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/RecordingMemoryManager.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2010-07-28 01:00:59 +0000
committerSean Callanan <scallanan@apple.com>2010-07-28 01:00:59 +0000
commitcc54bd3cef954915885bc0fd6a12233585a41bc8 (patch)
treecbb62b59c52985a27e5abd4563cf8aba07ec9070 /lldb/source/Expression/RecordingMemoryManager.cpp
parent8aeb0fb5cad64aeeac8a703d881e727d57027d4b (diff)
downloadbcm5719-llvm-cc54bd3cef954915885bc0fd6a12233585a41bc8.tar.gz
bcm5719-llvm-cc54bd3cef954915885bc0fd6a12233585a41bc8.zip
Added and improved logging. This is helping us as we
diagnose a problem where we're not correctly emitting PIC code. llvm-svn: 109568
Diffstat (limited to 'lldb/source/Expression/RecordingMemoryManager.cpp')
-rw-r--r--lldb/source/Expression/RecordingMemoryManager.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/lldb/source/Expression/RecordingMemoryManager.cpp b/lldb/source/Expression/RecordingMemoryManager.cpp
index 08d315de779..80510cdcb3a 100644
--- a/lldb/source/Expression/RecordingMemoryManager.cpp
+++ b/lldb/source/Expression/RecordingMemoryManager.cpp
@@ -19,6 +19,7 @@ RecordingMemoryManager::RecordingMemoryManager () :
llvm::JITMemoryManager(),
m_default_mm_ap (llvm::JITMemoryManager::CreateDefaultMemManager())
{
+ m_log = lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_EXPRESSIONS);
}
RecordingMemoryManager::~RecordingMemoryManager ()
@@ -60,6 +61,9 @@ RecordingMemoryManager::endFunctionBody(const llvm::Function *F, uint8_t *Functi
uint8_t *FunctionEnd)
{
m_default_mm_ap->endFunctionBody(F, FunctionStart, FunctionEnd);
+ if (m_log)
+ m_log->Printf("Adding [%p-%p] to m_functions",
+ FunctionStart, FunctionEnd);
m_functions.insert(std::pair<uint8_t *, uint8_t *>(FunctionStart, FunctionEnd));
}
@@ -67,6 +71,9 @@ uint8_t *
RecordingMemoryManager::allocateSpace(intptr_t Size, unsigned Alignment)
{
uint8_t *return_value = m_default_mm_ap->allocateSpace(Size, Alignment);
+ if (m_log)
+ m_log->Printf("RecordingMemoryManager::allocateSpace(Size=0x%llx, Alignment=%u) = %p",
+ (uint64_t)Size, Alignment, return_value);
m_spaceBlocks.insert (std::pair<uint8_t *, intptr_t>(return_value, Size));
return return_value;
}
@@ -75,6 +82,9 @@ uint8_t *
RecordingMemoryManager::allocateGlobal(uintptr_t Size, unsigned Alignment)
{
uint8_t *return_value = m_default_mm_ap->allocateGlobal(Size, Alignment);
+ if (m_log)
+ m_log->Printf("RecordingMemoryManager::allocateGlobal(Size=0x%llx, Alignment=%u) = %p",
+ (uint64_t)Size, Alignment, return_value);
m_globals.insert (std::pair<uint8_t *, uintptr_t>(return_value, Size));
return return_value;
}
@@ -144,6 +154,9 @@ RecordingMemoryManager::GetRemoteRangeForLocal (lldb::addr_t local_address)
void
RecordingMemoryManager::AddToLocalToRemoteMap (lldb::addr_t lstart, size_t size, lldb::addr_t rstart)
{
+ if (m_log)
+ m_log->Printf("Adding local [0x%llx-0x%llx], remote [0x%llx-0x%llx] to local->remote map", lstart, lstart + size, rstart, rstart + size);
+
m_address_map.push_back (LocalToRemoteAddressRange(lstart, size, rstart));
}
OpenPOWER on IntegriCloud