summaryrefslogtreecommitdiffstats
path: root/lldb/scripts/interface
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2016-06-24 23:40:35 +0000
committerGreg Clayton <gclayton@apple.com>2016-06-24 23:40:35 +0000
commit4d32eb6939d77f8059683c008bb807167110e930 (patch)
tree4ce25b64edc8b5a7332255196e30e8fb20502cf5 /lldb/scripts/interface
parentdd9e03ed874b2280af95c04fe7b0d383ead3261f (diff)
downloadbcm5719-llvm-4d32eb6939d77f8059683c008bb807167110e930.tar.gz
bcm5719-llvm-4d32eb6939d77f8059683c008bb807167110e930.zip
Add .i files for SBMemoryRegionInfo and SBMemoryRegionInfoList and also hook up the new calls in SBProcess that give out SBMemoryRegionInfo and SBMemoryRegionInfoList objects.
Also make sure the right headers and .i files are included so SWIG can hook everything up. llvm-svn: 273749
Diffstat (limited to 'lldb/scripts/interface')
-rw-r--r--lldb/scripts/interface/SBMemoryRegionInfo.i55
-rw-r--r--lldb/scripts/interface/SBMemoryRegionInfoList.i38
-rw-r--r--lldb/scripts/interface/SBProcess.i6
3 files changed, 99 insertions, 0 deletions
diff --git a/lldb/scripts/interface/SBMemoryRegionInfo.i b/lldb/scripts/interface/SBMemoryRegionInfo.i
new file mode 100644
index 00000000000..b38a290b940
--- /dev/null
+++ b/lldb/scripts/interface/SBMemoryRegionInfo.i
@@ -0,0 +1,55 @@
+//===-- SWIG Interface for SBMemoryRegionInfo -------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+namespace lldb {
+
+%feature("docstring",
+"API clients can get information about memory regions in processes."
+) SBMemoryRegionInfo;
+
+class SBMemoryRegionInfo
+{
+public:
+
+ SBMemoryRegionInfo ();
+
+ SBMemoryRegionInfo (const lldb::SBMemoryRegionInfo &rhs);
+
+ ~SBMemoryRegionInfo ();
+
+ void
+ Clear();
+
+ lldb::addr_t
+ GetRegionBase ();
+
+ lldb::addr_t
+ GetRegionEnd ();
+
+ bool
+ IsReadable ();
+
+ bool
+ IsWritable ();
+
+ bool
+ IsExecutable ();
+
+ bool
+ operator == (const lldb::SBMemoryRegionInfo &rhs) const;
+
+ bool
+ operator != (const lldb::SBMemoryRegionInfo &rhs) const;
+
+ bool
+ GetDescription (lldb::SBStream &description);
+
+};
+
+} // namespace lldb
diff --git a/lldb/scripts/interface/SBMemoryRegionInfoList.i b/lldb/scripts/interface/SBMemoryRegionInfoList.i
new file mode 100644
index 00000000000..f4624114554
--- /dev/null
+++ b/lldb/scripts/interface/SBMemoryRegionInfoList.i
@@ -0,0 +1,38 @@
+//===-- SBMemoryRegionInfoList.h --------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+namespace lldb {
+
+class SBMemoryRegionInfoList
+{
+public:
+
+ SBMemoryRegionInfoList ();
+
+ SBMemoryRegionInfoList (const lldb::SBMemoryRegionInfoList &rhs);
+
+ ~SBMemoryRegionInfoList ();
+
+ uint32_t
+ GetSize () const;
+
+ bool
+ GetMemoryRegionAtIndex (uint32_t idx, SBMemoryRegionInfo &region_info);
+
+ void
+ Append (lldb::SBMemoryRegionInfo &region);
+
+ void
+ Append (lldb::SBMemoryRegionInfoList &region_list);
+
+ void
+ Clear ();
+};
+
+} // namespace lldb
diff --git a/lldb/scripts/interface/SBProcess.i b/lldb/scripts/interface/SBProcess.i
index 0ce45f7d7be..2ed3e99c90b 100644
--- a/lldb/scripts/interface/SBProcess.i
+++ b/lldb/scripts/interface/SBProcess.i
@@ -401,6 +401,12 @@ public:
lldb::SBError
SaveCore(const char *file_name);
+ lldb::SBError
+ GetMemoryRegionInfo(lldb::addr_t load_addr, lldb::SBMemoryRegionInfo &region_info);
+
+ lldb::SBMemoryRegionInfoList
+ GetMemoryRegions();
+
%pythoncode %{
def __get_is_alive__(self):
'''Returns "True" if the process is currently alive, "False" otherwise'''
OpenPOWER on IntegriCloud