summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2011-12-15 04:38:41 +0000
committerGreg Clayton <gclayton@apple.com>2011-12-15 04:38:41 +0000
commitf9322415dc9f6c1433fe728e0ebfa4659e594093 (patch)
treeaf4b44c4f9ae88fca1ff9c58d7e0d25f4cc8c155
parenta45ab503f6d00bd29c460f605061a8f9c37213cf (diff)
downloadbcm5719-llvm-f9322415dc9f6c1433fe728e0ebfa4659e594093.tar.gz
bcm5719-llvm-f9322415dc9f6c1433fe728e0ebfa4659e594093.zip
<rdar://problem/10584789>
Added a static memory pressure function in SBDebugger: void SBDebugger::MemoryPressureDetected () This can be called by applications that detect memory pressure to cause LLDB to release cached information. llvm-svn: 146640
-rw-r--r--lldb/include/lldb/API/SBDebugger.h3
-rw-r--r--lldb/scripts/Python/interface/SBDebugger.i3
-rw-r--r--lldb/source/API/SBDebugger.cpp6
3 files changed, 12 insertions, 0 deletions
diff --git a/lldb/include/lldb/API/SBDebugger.h b/lldb/include/lldb/API/SBDebugger.h
index f778187244d..0f019086de3 100644
--- a/lldb/include/lldb/API/SBDebugger.h
+++ b/lldb/include/lldb/API/SBDebugger.h
@@ -35,6 +35,9 @@ public:
static void
Destroy (lldb::SBDebugger &debugger);
+ static void
+ MemoryPressureDetected ();
+
SBDebugger();
SBDebugger(const lldb::SBDebugger &rhs);
diff --git a/lldb/scripts/Python/interface/SBDebugger.i b/lldb/scripts/Python/interface/SBDebugger.i
index 184109b5a5a..1882021f5e9 100644
--- a/lldb/scripts/Python/interface/SBDebugger.i
+++ b/lldb/scripts/Python/interface/SBDebugger.i
@@ -122,6 +122,9 @@ public:
static void
Destroy (lldb::SBDebugger &debugger);
+ static void
+ MemoryPressureDetected();
+
SBDebugger();
SBDebugger(const lldb::SBDebugger &rhs);
diff --git a/lldb/source/API/SBDebugger.cpp b/lldb/source/API/SBDebugger.cpp
index b8be227f557..65357bb76ad 100644
--- a/lldb/source/API/SBDebugger.cpp
+++ b/lldb/source/API/SBDebugger.cpp
@@ -124,6 +124,12 @@ SBDebugger::Destroy (SBDebugger &debugger)
debugger.m_opaque_sp.reset();
}
+void
+SBDebugger::MemoryPressureDetected ()
+{
+ ModuleList::RemoveOrphanSharedModules();
+}
+
SBDebugger::SBDebugger () :
m_opaque_sp ()
{
OpenPOWER on IntegriCloud