summaryrefslogtreecommitdiffstats
path: root/lldb/scripts/Python
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2012-01-07 00:45:50 +0000
committerGreg Clayton <gclayton@apple.com>2012-01-07 00:45:50 +0000
commit0f28986a54b808f6ec3ec46f850d1a82c2f755e4 (patch)
tree9492b384eed13b92b8c86c2adc027d2ee7c18e47 /lldb/scripts/Python
parentcbf2fe066a2b2ba7a23f6ed5ab2470771df51bd5 (diff)
downloadbcm5719-llvm-0f28986a54b808f6ec3ec46f850d1a82c2f755e4.tar.gz
bcm5719-llvm-0f28986a54b808f6ec3ec46f850d1a82c2f755e4.zip
Patch from Enrico Granata that moves SBData related functions into the SBData
class instead of requiring a live process in order to be able to create useful SBData objects. llvm-svn: 147702
Diffstat (limited to 'lldb/scripts/Python')
-rw-r--r--lldb/scripts/Python/interface/SBData.i49
-rw-r--r--lldb/scripts/Python/interface/SBProcess.i18
2 files changed, 46 insertions, 21 deletions
diff --git a/lldb/scripts/Python/interface/SBData.i b/lldb/scripts/Python/interface/SBData.i
index 5ecf2c26e1e..1d041a3c962 100644
--- a/lldb/scripts/Python/interface/SBData.i
+++ b/lldb/scripts/Python/interface/SBData.i
@@ -22,6 +22,9 @@ public:
uint8_t
GetAddressByteSize ();
+
+ void
+ SetAddressByteSize (uint8_t addr_byte_size);
void
Clear ();
@@ -34,6 +37,9 @@ public:
lldb::ByteOrder
GetByteOrder();
+
+ void
+ SetByteOrder (lldb::ByteOrder endian);
float
GetFloat (lldb::SBError& error, uint32_t offset);
@@ -84,11 +90,48 @@ public:
size_t size);
void
- SetData(lldb::SBError& error, const void *buf, size_t size, lldb::ByteOrder endian, uint8_t addr_size);
+ SetData (lldb::SBError& error, const void *buf, size_t size, lldb::ByteOrder endian, uint8_t addr_size);
bool
- Append(const SBData& rhs);
-
+ Append (const SBData& rhs);
+
+ static lldb::SBData
+ CreateDataFromCString (lldb::ByteOrder endian, uint32_t addr_byte_size, const char* data);
+
+ // in the following CreateData*() and SetData*() prototypes, the two parameters array and array_len
+ // should not be renamed or rearranged, because doing so will break the SWIG typemap
+ static lldb::SBData
+ CreateDataFromUInt64Array (lldb::ByteOrder endian, uint32_t addr_byte_size, uint64_t* array, size_t array_len);
+
+ static lldb::SBData
+ CreateDataFromUInt32Array (lldb::ByteOrder endian, uint32_t addr_byte_size, uint32_t* array, size_t array_len);
+
+ static lldb::SBData
+ CreateDataFromSInt64Array (lldb::ByteOrder endian, uint32_t addr_byte_size, int64_t* array, size_t array_len);
+
+ static lldb::SBData
+ CreateDataFromSInt32Array (lldb::ByteOrder endian, uint32_t addr_byte_size, int32_t* array, size_t array_len);
+
+ static lldb::SBData
+ CreateDataFromDoubleArray (lldb::ByteOrder endian, uint32_t addr_byte_size, double* array, size_t array_len);
+
+ bool
+ SetDataFromCString (const char* data);
+
+ bool
+ SetDataFromUInt64Array (uint64_t* array, size_t array_len);
+
+ bool
+ SetDataFromUInt32Array (uint32_t* array, size_t array_len);
+
+ bool
+ SetDataFromSInt64Array (int64_t* array, size_t array_len);
+
+ bool
+ SetDataFromSInt32Array (int32_t* array, size_t array_len);
+
+ bool
+ SetDataFromDoubleArray (double* array, size_t array_len);
};
diff --git a/lldb/scripts/Python/interface/SBProcess.i b/lldb/scripts/Python/interface/SBProcess.i
index ee324d21b11..659966fff73 100644
--- a/lldb/scripts/Python/interface/SBProcess.i
+++ b/lldb/scripts/Python/interface/SBProcess.i
@@ -281,24 +281,6 @@ public:
lldb::SBError
UnloadImage (uint32_t image_token);
- lldb::SBData
- GetDataFromCString(const char* data);
-
- lldb::SBData
- GetDataFromUnsignedInt64Array(uint64_t* array, size_t array_len);
-
- lldb::SBData
- GetDataFromUnsignedInt32Array(uint32_t* array, size_t array_len);
-
- lldb::SBData
- GetDataFromSignedInt64Array(int64_t* array, size_t array_len);
-
- lldb::SBData
- GetDataFromSignedInt32Array(int32_t* array, size_t array_len);
-
- lldb::SBData
- GetDataFromDoubleArray(double* array, size_t array_len);
-
};
} // namespace lldb
OpenPOWER on IntegriCloud