diff options
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp | 62 |
1 files changed, 3 insertions, 59 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp index 2233bf675819..3ade8c815feb 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -282,9 +282,7 @@ ProcessGDBRemote::ProcessGDBRemote(lldb::TargetSP target_sp, __FUNCTION__); } - const uint32_t gdb_event_mask = - Communication::eBroadcastBitReadThreadDidExit | - GDBRemoteCommunication::eBroadcastBitGdbReadThreadGotNotify; + const uint32_t gdb_event_mask = Communication::eBroadcastBitReadThreadDidExit; if (m_async_listener_sp->StartListeningForEvents( &m_gdb_comm, gdb_event_mask) != gdb_event_mask) { LLDB_LOGF(log, @@ -1324,24 +1322,6 @@ Status ProcessGDBRemote::DoResume() { return error; } -void ProcessGDBRemote::HandleStopReplySequence() { - while (true) { - // Send vStopped - StringExtractorGDBRemote response; - m_gdb_comm.SendPacketAndWaitForResponse("vStopped", response); - - // OK represents end of signal list - if (response.IsOKResponse()) - break; - - // If not OK or a normal packet we have a problem - if (!response.IsNormalResponse()) - break; - - SetLastStopPacket(response); - } -} - void ProcessGDBRemote::ClearThreadIDList() { std::lock_guard<std::recursive_mutex> guard(m_thread_list_real.GetMutex()); m_thread_ids.clear(); @@ -2897,8 +2877,8 @@ lldb::addr_t ProcessGDBRemote::DoAllocateMemory(size_t size, return allocated_addr; } -Status ProcessGDBRemote::DoGetMemoryRegionInfo(addr_t load_addr, - MemoryRegionInfo ®ion_info) { +Status ProcessGDBRemote::GetMemoryRegionInfo(addr_t load_addr, + MemoryRegionInfo ®ion_info) { Status error(m_gdb_comm.GetMemoryRegionInfo(load_addr, region_info)); return error; @@ -3539,31 +3519,6 @@ void ProcessGDBRemote::StopAsyncThread() { __FUNCTION__); } -bool ProcessGDBRemote::HandleNotifyPacket(StringExtractorGDBRemote &packet) { - // get the packet at a string - const std::string &pkt = std::string(packet.GetStringRef()); - // skip %stop: - StringExtractorGDBRemote stop_info(pkt.c_str() + 5); - - // pass as a thread stop info packet - SetLastStopPacket(stop_info); - - // check for more stop reasons - HandleStopReplySequence(); - - // if the process is stopped then we need to fake a resume so that we can - // stop properly with the new break. This is possible due to - // SetPrivateState() broadcasting the state change as a side effect. - if (GetPrivateState() == lldb::StateType::eStateStopped) { - SetPrivateState(lldb::StateType::eStateRunning); - } - - // since we have some stopped packets we can halt the process - SetPrivateState(lldb::StateType::eStateStopped); - - return true; -} - thread_result_t ProcessGDBRemote::AsyncThread(void *arg) { ProcessGDBRemote *process = (ProcessGDBRemote *)arg; @@ -3712,17 +3667,6 @@ thread_result_t ProcessGDBRemote::AsyncThread(void *arg) { done = true; break; - case GDBRemoteCommunication::eBroadcastBitGdbReadThreadGotNotify: { - lldb_private::Event *event = event_sp.get(); - const EventDataBytes *continue_packet = - EventDataBytes::GetEventDataFromEvent(event); - StringExtractorGDBRemote notify( - (const char *)continue_packet->GetBytes()); - // Hand this over to the process to handle - process->HandleNotifyPacket(notify); - break; - } - default: LLDB_LOGF(log, "ProcessGDBRemote::%s (arg = %p, pid = %" PRIu64 |