aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/API/SBProcessInfo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/API/SBProcessInfo.cpp')
-rw-r--r--lldb/source/API/SBProcessInfo.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/lldb/source/API/SBProcessInfo.cpp b/lldb/source/API/SBProcessInfo.cpp
index 29a9c7b24b5a..cba3bdc179f3 100644
--- a/lldb/source/API/SBProcessInfo.cpp
+++ b/lldb/source/API/SBProcessInfo.cpp
@@ -179,6 +179,21 @@ lldb::pid_t SBProcessInfo::GetParentProcessID() {
return proc_id;
}
+const char *SBProcessInfo::GetTriple() {
+ LLDB_RECORD_METHOD_NO_ARGS(const char *, SBProcessInfo, GetTriple);
+
+ const char *triple = nullptr;
+ if (m_opaque_up) {
+ const auto &arch = m_opaque_up->GetArchitecture();
+ if (arch.IsValid()) {
+ // Const-ify the string so we don't need to worry about the lifetime of
+ // the string
+ triple = ConstString(arch.GetTriple().getTriple().c_str()).GetCString();
+ }
+ }
+ return triple;
+}
+
namespace lldb_private {
namespace repro {
@@ -204,6 +219,7 @@ void RegisterMethods<SBProcessInfo>(Registry &R) {
LLDB_REGISTER_METHOD(bool, SBProcessInfo, EffectiveUserIDIsValid, ());
LLDB_REGISTER_METHOD(bool, SBProcessInfo, EffectiveGroupIDIsValid, ());
LLDB_REGISTER_METHOD(lldb::pid_t, SBProcessInfo, GetParentProcessID, ());
+ LLDB_REGISTER_METHOD(const char *, SBProcessInfo, GetTriple, ());
}
}