aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Process')
-rw-r--r--lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp23
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp3
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp79
3 files changed, 49 insertions, 56 deletions
diff --git a/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp b/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp
index 9e05737d8e62..3685d6ac72ad 100644
--- a/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp
+++ b/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp
@@ -98,26 +98,15 @@ RegisterContextPOSIX_mips64::GetRegisterInfoAtIndex(size_t reg) {
}
size_t RegisterContextPOSIX_mips64::GetRegisterSetCount() {
- ArchSpec target_arch = m_register_info_up->GetTargetArchitecture();
- switch (target_arch.GetTriple().getOS()) {
- default: {
- const auto *context = static_cast<const RegisterContextFreeBSD_mips64 *>(
- m_register_info_up.get());
- return context->GetRegisterSetCount();
- }
-
- }
+ const auto *context = static_cast<const RegisterContextFreeBSD_mips64 *>(
+ m_register_info_up.get());
+ return context->GetRegisterSetCount();
}
const RegisterSet *RegisterContextPOSIX_mips64::GetRegisterSet(size_t set) {
- ArchSpec target_arch = m_register_info_up->GetTargetArchitecture();
- switch (target_arch.GetTriple().getOS()) {
- default: {
- const auto *context = static_cast<const RegisterContextFreeBSD_mips64 *>(
- m_register_info_up.get());
- return context->GetRegisterSet(set);
- }
- }
+ const auto *context = static_cast<const RegisterContextFreeBSD_mips64 *>(
+ m_register_info_up.get());
+ return context->GetRegisterSet(set);
}
const char *RegisterContextPOSIX_mips64::GetRegisterName(unsigned reg) {
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
index ad72b3d121e6..7bb449841851 100644
--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
@@ -1180,7 +1180,8 @@ bool GDBRemoteCommunicationClient::GetDefaultThreadId(lldb::tid_t &tid) {
static void ParseOSType(llvm::StringRef value, std::string &os_name,
std::string &environment) {
if (value.equals("iossimulator") || value.equals("tvossimulator") ||
- value.equals("watchossimulator")) {
+ value.equals("watchossimulator") || value.equals("xrossimulator") ||
+ value.equals("visionossimulator")) {
environment = "simulator";
os_name = value.drop_back(environment.size()).str();
} else if (value.equals("maccatalyst")) {
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
index 316be471df92..eb42b9eb6cb6 100644
--- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
@@ -1089,8 +1089,8 @@ Status ProcessGDBRemote::DoAttachToProcessWithID(
const int packet_len =
::snprintf(packet, sizeof(packet), "vAttach;%" PRIx64, attach_pid);
SetID(attach_pid);
- m_async_broadcaster.BroadcastEvent(
- eBroadcastBitAsyncContinue, new EventDataBytes(packet, packet_len));
+ auto data_sp = std::make_shared<EventDataBytes>(packet, packet_len);
+ m_async_broadcaster.BroadcastEvent(eBroadcastBitAsyncContinue, data_sp);
} else
SetExitStatus(-1, error.AsCString());
}
@@ -1127,9 +1127,9 @@ Status ProcessGDBRemote::DoAttachToProcessWithName(
endian::InlHostByteOrder(),
endian::InlHostByteOrder());
- m_async_broadcaster.BroadcastEvent(
- eBroadcastBitAsyncContinue,
- new EventDataBytes(packet.GetString().data(), packet.GetSize()));
+ auto data_sp = std::make_shared<EventDataBytes>(packet.GetString().data(),
+ packet.GetSize());
+ m_async_broadcaster.BroadcastEvent(eBroadcastBitAsyncContinue, data_sp);
} else
SetExitStatus(-1, error.AsCString());
@@ -1374,10 +1374,9 @@ Status ProcessGDBRemote::DoResume() {
return error;
}
- m_async_broadcaster.BroadcastEvent(
- eBroadcastBitAsyncContinue,
- new EventDataBytes(continue_packet.GetString().data(),
- continue_packet.GetSize()));
+ auto data_sp = std::make_shared<EventDataBytes>(
+ continue_packet.GetString().data(), continue_packet.GetSize());
+ m_async_broadcaster.BroadcastEvent(eBroadcastBitAsyncContinue, data_sp);
if (!listener_sp->GetEvent(event_sp, std::chrono::seconds(5))) {
error.SetErrorString("Resume timed out.");
@@ -4189,52 +4188,55 @@ static std::vector<RegisterFlags::Field> ParseFlagsFields(XMLNode flags_node,
// Note that XML in general requires that each of these attributes only
// appears once, so we don't have to handle that here.
if (attr_name == "name") {
- LLDB_LOG(log,
- "ProcessGDBRemote::ParseFlags Found field node name \"{0}\"",
- attr_value.data());
+ LLDB_LOG(
+ log,
+ "ProcessGDBRemote::ParseFlagsFields Found field node name \"{0}\"",
+ attr_value.data());
name = attr_value;
} else if (attr_name == "start") {
unsigned parsed_start = 0;
if (llvm::to_integer(attr_value, parsed_start)) {
if (parsed_start > max_start_bit) {
- LLDB_LOG(
- log,
- "ProcessGDBRemote::ParseFlags Invalid start {0} in field node, "
- "cannot be > {1}",
- parsed_start, max_start_bit);
+ LLDB_LOG(log,
+ "ProcessGDBRemote::ParseFlagsFields Invalid start {0} in "
+ "field node, "
+ "cannot be > {1}",
+ parsed_start, max_start_bit);
} else
start = parsed_start;
} else {
- LLDB_LOG(log,
- "ProcessGDBRemote::ParseFlags Invalid start \"{0}\" in "
- "field node",
- attr_value.data());
+ LLDB_LOG(
+ log,
+ "ProcessGDBRemote::ParseFlagsFields Invalid start \"{0}\" in "
+ "field node",
+ attr_value.data());
}
} else if (attr_name == "end") {
unsigned parsed_end = 0;
if (llvm::to_integer(attr_value, parsed_end))
if (parsed_end > max_start_bit) {
- LLDB_LOG(
- log,
- "ProcessGDBRemote::ParseFlags Invalid end {0} in field node, "
- "cannot be > {1}",
- parsed_end, max_start_bit);
+ LLDB_LOG(log,
+ "ProcessGDBRemote::ParseFlagsFields Invalid end {0} in "
+ "field node, "
+ "cannot be > {1}",
+ parsed_end, max_start_bit);
} else
end = parsed_end;
else {
- LLDB_LOG(
- log,
- "ProcessGDBRemote::ParseFlags Invalid end \"{0}\" in field node",
- attr_value.data());
+ LLDB_LOG(log,
+ "ProcessGDBRemote::ParseFlagsFields Invalid end \"{0}\" in "
+ "field node",
+ attr_value.data());
}
} else if (attr_name == "type") {
// Type is a known attribute but we do not currently use it and it is
// not required.
} else {
- LLDB_LOG(log,
- "ProcessGDBRemote::ParseFlags Ignoring unknown attribute "
- "\"{0}\" in field node",
- attr_name.data());
+ LLDB_LOG(
+ log,
+ "ProcessGDBRemote::ParseFlagsFields Ignoring unknown attribute "
+ "\"{0}\" in field node",
+ attr_name.data());
}
return true; // Walk all attributes of the field.
@@ -4242,10 +4244,11 @@ static std::vector<RegisterFlags::Field> ParseFlagsFields(XMLNode flags_node,
if (name && start && end) {
if (*start > *end) {
- LLDB_LOG(log,
- "ProcessGDBRemote::ParseFlags Start {0} > end {1} in field "
- "\"{2}\", ignoring",
- *start, *end, name->data());
+ LLDB_LOG(
+ log,
+ "ProcessGDBRemote::ParseFlagsFields Start {0} > end {1} in field "
+ "\"{2}\", ignoring",
+ *start, *end, name->data());
} else {
fields.push_back(RegisterFlags::Field(name->str(), *start, *end));
}