Lines Matching defs:ProcessGDBRemote
1 //===-- ProcessGDBRemote.cpp ----------------------------------------------===//
82 #include "ProcessGDBRemote.h"
100 LLDB_PLUGIN_DEFINE(ProcessGDBRemote)
104 // ProcessGDBRemote * value (which we can get from logs or from debugging). We
134 return ProcessGDBRemote::GetPluginNameStatic();
191 llvm::StringRef ProcessGDBRemote::GetPluginDescriptionStatic() {
195 void ProcessGDBRemote::Terminate() {
196 PluginManager::UnregisterPlugin(ProcessGDBRemote::CreateInstance);
199 lldb::ProcessSP ProcessGDBRemote::CreateInstance(
204 process_sp = std::shared_ptr<ProcessGDBRemote>(
205 new ProcessGDBRemote(target_sp, listener_sp));
209 void ProcessGDBRemote::DumpPluginHistory(Stream &s) {
214 std::chrono::seconds ProcessGDBRemote::GetPacketTimeout() {
218 ArchSpec ProcessGDBRemote::GetSystemArchitecture() {
222 bool ProcessGDBRemote::CanDebug(lldb::TargetSP target_sp,
253 // ProcessGDBRemote constructor
254 ProcessGDBRemote::ProcessGDBRemote(lldb::TargetSP target_sp,
284 "ProcessGDBRemote::%s failed to listen for "
299 ProcessGDBRemote::~ProcessGDBRemote() {
316 bool ProcessGDBRemote::ParsePythonTargetDefinition(
375 void ProcessGDBRemote::BuildDynamicRegisterInfo(bool force) {
514 Status ProcessGDBRemote::DoWillLaunch(lldb_private::Module *module) {
518 Status ProcessGDBRemote::DoWillAttachToProcessWithID(lldb::pid_t pid) {
522 Status ProcessGDBRemote::DoWillAttachToProcessWithName(const char *process_name,
527 Status ProcessGDBRemote::DoConnectRemote(llvm::StringRef remote_url) {
580 "ProcessGDBRemote::%s pid %" PRIu64
600 "ProcessGDBRemote::%s pid %" PRIu64
608 Status ProcessGDBRemote::WillLaunchOrAttach() {
615 Status ProcessGDBRemote::DoLaunch(lldb_private::Module *exe_module,
620 LLDB_LOGF(log, "ProcessGDBRemote::%s() entered", __FUNCTION__);
648 "ProcessGDBRemote::%s provided with STDIO paths via "
656 "ProcessGDBRemote::%s no STDIO paths given via launch_info",
712 "ProcessGDBRemote::%s adjusted STDIO paths for local platform "
722 "ProcessGDBRemote::%s final STDIO paths after all "
806 Status ProcessGDBRemote::ConnectToDebugserver(llvm::StringRef connect_url) {
812 LLDB_LOGF(log, "ProcessGDBRemote::%s Connecting to %s", __FUNCTION__,
880 void ProcessGDBRemote::DidLaunchOrAttach(ArchSpec &process_arch) {
985 void ProcessGDBRemote::LoadStubBinaries() {
1044 void ProcessGDBRemote::MaybeLoadExecutableModule() {
1069 void ProcessGDBRemote::DidLaunch() {
1074 Status ProcessGDBRemote::DoAttachToProcessWithID(
1079 LLDB_LOGF(log, "ProcessGDBRemote::%s()", __FUNCTION__);
1102 Status ProcessGDBRemote::DoAttachToProcessWithName(
1140 llvm::Expected<TraceSupportedResponse> ProcessGDBRemote::TraceSupported() {
1144 llvm::Error ProcessGDBRemote::TraceStop(const TraceStopRequest &request) {
1148 llvm::Error ProcessGDBRemote::TraceStart(const llvm::json::Value &request) {
1153 ProcessGDBRemote::TraceGetState(llvm::StringRef type) {
1158 ProcessGDBRemote::TraceGetBinaryData(const TraceGetBinaryDataRequest &request) {
1162 void ProcessGDBRemote::DidExit() {
1167 void ProcessGDBRemote::DidAttach(ArchSpec &process_arch) {
1173 Status ProcessGDBRemote::WillResume() {
1183 Status ProcessGDBRemote::DoResume() {
1186 LLDB_LOGF(log, "ProcessGDBRemote::Resume()");
1194 ProcessGDBRemote::eBroadcastBitAsyncThreadDidExit);
1372 LLDB_LOGF(log, "ProcessGDBRemote::DoResume: Trying to resume but the "
1383 LLDB_LOGF(log, "ProcessGDBRemote::DoResume: Resume timed out.");
1388 "ProcessGDBRemote::DoResume: Broadcast continue, but the "
1398 void ProcessGDBRemote::ClearThreadIDList() {
1404 size_t ProcessGDBRemote::UpdateThreadIDsFromStopReplyThreadsValue(
1423 size_t ProcessGDBRemote::UpdateThreadPCsFromStopReplyThreadsValue(
1434 bool ProcessGDBRemote::UpdateThreadIDList() {
1498 bool ProcessGDBRemote::DoUpdateThreadList(ThreadList &old_thread_list,
1547 void ProcessGDBRemote::SetThreadPc(const ThreadSP &thread_sp, uint64_t index) {
1563 bool ProcessGDBRemote::GetThreadStopInfoFromJSON(
1588 bool ProcessGDBRemote::CalculateThreadStopInfo(ThreadGDBRemote *thread) {
1634 void ProcessGDBRemote::ParseExpeditedRegisters(
1650 ThreadSP ProcessGDBRemote::SetThreadStopInfo(
1961 ProcessGDBRemote::SetThreadStopInfo(StructuredData::Dictionary *thread_dict) {
2117 StateType ProcessGDBRemote::SetThreadStopInfo(StringExtractor &stop_packet) {
2362 void ProcessGDBRemote::RefreshStateAfterStop() {
2396 Status ProcessGDBRemote::DoHalt(bool &caused_stop) {
2410 Status ProcessGDBRemote::DoDetach(bool keep_stopped) {
2413 LLDB_LOGF(log, "ProcessGDBRemote::DoDetach(keep_stopped: %i)", keep_stopped);
2419 "ProcessGDBRemote::DoDetach() detach packet sent successfully");
2422 "ProcessGDBRemote::DoDetach() detach packet send failed: %s",
2439 Status ProcessGDBRemote::DoDestroy() {
2441 LLDB_LOGF(log, "ProcessGDBRemote::DoDestroy()");
2494 void ProcessGDBRemote::SetLastStopPacket(
2500 LLDB_LOGF(log, "ProcessGDBRemote::SetLastStopPacket () - detected exec");
2511 void ProcessGDBRemote::SetUnixSignals(const UnixSignalsSP &signals_sp) {
2517 bool ProcessGDBRemote::IsAlive() {
2521 addr_t ProcessGDBRemote::GetImageInfoAddress() {
2539 void ProcessGDBRemote::WillPublicStop() {
2564 size_t ProcessGDBRemote::DoReadMemory(addr_t addr, void *buf, size_t size,
2623 bool ProcessGDBRemote::SupportsMemoryTagging() {
2628 ProcessGDBRemote::DoReadMemoryTags(lldb::addr_t addr, size_t len,
2646 Status ProcessGDBRemote::DoWriteMemoryTags(lldb::addr_t addr, size_t len,
2654 Status ProcessGDBRemote::WriteObjectFile(
2678 bool ProcessGDBRemote::HasErased(FlashRange range) {
2686 Status ProcessGDBRemote::FlashErase(lldb::addr_t addr, size_t size) {
2766 Status ProcessGDBRemote::FlashDone() {
2794 size_t ProcessGDBRemote::DoWriteMemory(addr_t addr, const void *buf,
2857 lldb::addr_t ProcessGDBRemote::DoAllocateMemory(size_t size,
2886 "ProcessGDBRemote::%s no direct stub support for memory "
2902 Status ProcessGDBRemote::DoGetMemoryRegionInfo(addr_t load_addr,
2909 std::optional<uint32_t> ProcessGDBRemote::GetWatchpointSlotCount() {
2913 std::optional<bool> ProcessGDBRemote::DoGetWatchpointReportedAfter() {
2917 Status ProcessGDBRemote::DoDeallocateMemory(lldb::addr_t addr) {
2953 size_t ProcessGDBRemote::PutSTDIN(const char *src, size_t src_len,
2964 Status ProcessGDBRemote::EnableBreakpointSite(BreakpointSite *bp_site) {
2977 "ProcessGDBRemote::EnableBreakpointSite (size_id = %" PRIu64
2984 "ProcessGDBRemote::EnableBreakpointSite (size_id = %" PRIu64
3088 Status ProcessGDBRemote::DisableBreakpointSite(BreakpointSite *bp_site) {
3095 "ProcessGDBRemote::DisableBreakpointSite (site_id = %" PRIu64
3126 "ProcessGDBRemote::DisableBreakpointSite (site_id = %" PRIu64
3154 Status ProcessGDBRemote::EnableWatchpoint(WatchpointSP wp_sp, bool notify) {
3163 LLDB_LOGF(log, "ProcessGDBRemote::EnableWatchpoint(watchID = %" PRIu64 ")",
3167 "ProcessGDBRemote::EnableWatchpoint(watchID = %" PRIu64
3248 Status ProcessGDBRemote::DisableWatchpoint(WatchpointSP wp_sp, bool notify) {
3262 "ProcessGDBRemote::DisableWatchpoint (watchID = %" PRIu64
3268 "ProcessGDBRemote::DisableWatchpoint (watchID = %" PRIu64
3307 void ProcessGDBRemote::Clear() {
3312 Status ProcessGDBRemote::DoSignal(int signo) {
3315 LLDB_LOGF(log, "ProcessGDBRemote::DoSignal (signal = %d)", signo);
3323 ProcessGDBRemote::EstablishConnectionIfNeeded(const ProcessInfo &process_info) {
3357 Status ProcessGDBRemote::LaunchAndConnectToDebugserver(
3371 const std::weak_ptr<ProcessGDBRemote> this_wp =
3372 std::static_pointer_cast<ProcessGDBRemote>(shared_from_this());
3453 void ProcessGDBRemote::MonitorDebugserverProcess(
3454 std::weak_ptr<ProcessGDBRemote> process_wp, lldb::pid_t debugserver_pid,
3463 "ProcessGDBRemote::%s(process_wp, pid=%" PRIu64
3467 std::shared_ptr<ProcessGDBRemote> process_sp = process_wp.lock();
3468 LLDB_LOGF(log, "ProcessGDBRemote::%s(process = %p)", __FUNCTION__,
3499 // Debugserver has exited we need to let our ProcessGDBRemote know that it no
3504 void ProcessGDBRemote::KillDebugserverProcess() {
3512 void ProcessGDBRemote::Initialize() {
3522 void ProcessGDBRemote::DebuggerInitialize(Debugger &debugger) {
3532 bool ProcessGDBRemote::StartAsyncThread() {
3535 LLDB_LOGF(log, "ProcessGDBRemote::%s ()", __FUNCTION__);
3544 return ProcessGDBRemote::AsyncThread();
3554 "ProcessGDBRemote::%s () - Called when Async thread was "
3561 void ProcessGDBRemote::StopAsyncThread() {
3564 LLDB_LOGF(log, "ProcessGDBRemote::%s ()", __FUNCTION__);
3579 "ProcessGDBRemote::%s () - Called when Async thread was not running.",
3583 thread_result_t ProcessGDBRemote::AsyncThread() {
3585 LLDB_LOGF(log, "ProcessGDBRemote::%s(pid = %" PRIu64 ") thread starting...",
3604 "ProcessGDBRemote::%s(pid = %" PRIu64
3612 "ProcessGDBRemote::%s(pid = %" PRIu64
3626 "ProcessGDBRemote::%s(pid = %" PRIu64
3706 "ProcessGDBRemote::%s(pid = %" PRIu64
3714 "ProcessGDBRemote::%s(pid = %" PRIu64
3723 "ProcessGDBRemote::%s(pid = %" PRIu64
3730 LLDB_LOGF(log, "ProcessGDBRemote::%s(pid = %" PRIu64 ") thread exiting...",
3737 // ProcessGDBRemote::ListProcessesMatchingName (const char *name, StringList
3756 bool ProcessGDBRemote::NewThreadNotifyBreakpointHit(
3767 Status ProcessGDBRemote::UpdateAutomaticSignalFiltering() {
3804 bool ProcessGDBRemote::StartNoticingNewThreads() {
3821 ProcessGDBRemote::NewThreadNotifyBreakpointHit, this, true);
3830 bool ProcessGDBRemote::StopNoticingNewThreads() {
3841 DynamicLoader *ProcessGDBRemote::GetDynamicLoader() {
3847 Status ProcessGDBRemote::SendEventData(const char *data) {
3864 DataExtractor ProcessGDBRemote::GetAuxvData() {
3878 ProcessGDBRemote::GetExtendedInfoForThread(lldb::tid_t tid) {
3916 StructuredData::ObjectSP ProcessGDBRemote::GetLoadedDynamicLibrariesInfos(
3927 StructuredData::ObjectSP ProcessGDBRemote::GetLoadedDynamicLibrariesInfos() {
3935 StructuredData::ObjectSP ProcessGDBRemote::GetLoadedDynamicLibrariesInfos(
3949 ProcessGDBRemote::GetLoadedDynamicLibrariesInfos_sender(
3985 StructuredData::ObjectSP ProcessGDBRemote::GetDynamicLoaderProcessState() {
4007 StructuredData::ObjectSP ProcessGDBRemote::GetSharedCacheInfo() {
4039 Status ProcessGDBRemote::ConfigureStructuredData(
4053 void ProcessGDBRemote::GetMaxMemorySize() {
4090 void ProcessGDBRemote::SetUserSpecifiedMaxMemoryTransferSize(
4111 bool ProcessGDBRemote::GetModuleSpec(const FileSpec &module_file_spec,
4125 LLDB_LOGF(log, "ProcessGDBRemote::%s - failed to get module info for %s:%s",
4134 LLDB_LOGF(log, "ProcessGDBRemote::%s - got module info for (%s:%s) : %s",
4143 void ProcessGDBRemote::PrefetchModuleSpecs(
4156 llvm::VersionTuple ProcessGDBRemote::GetHostOSVersion() {
4160 llvm::VersionTuple ProcessGDBRemote::GetHostMacCatalystVersion() {
4210 LLDB_LOG(log, "ProcessGDBRemote::ParseEnumEvalues "
4218 "ProcessGDBRemote::ParseEnumEvalues "
4224 "ProcessGDBRemote::ParseEnumEvalues Ignoring "
4280 "ProcessGDBRemote::ParseEnums Found enum type \"{0}\"",
4317 "ProcessGDBRemote::ParseFlagsFields Found field node name \"{0}\"",
4325 "ProcessGDBRemote::ParseFlagsFields Invalid start {0} in "
4334 "ProcessGDBRemote::ParseFlagsFields Invalid start \"{0}\" in "
4343 "ProcessGDBRemote::ParseFlagsFields Invalid end {0} in "
4351 "ProcessGDBRemote::ParseFlagsFields Invalid end \"{0}\" in "
4360 "ProcessGDBRemote::ParseFlagsFields Ignoring unknown attribute "
4372 "ProcessGDBRemote::ParseFlagsFields Start {0} > end {1} in field "
4378 "ProcessGDBRemote::ParseFlagsFields Ignoring field \"{2}\" "
4398 "ProcessGDBRemote::ParseFlagsFields In enum \"{0}\" "
4408 "ProcessGDBRemote::ParseFlagsFields Could not find type "
4436 LLDB_LOG(log, "ProcessGDBRemote::ParseFlags Found flags node \"{0}\"",
4452 "ProcessGDBRemote::ParseFlags Invalid size \"{0}\" "
4458 "ProcessGDBRemote::ParseFlags Ignoring unknown "
4495 "ProcessGDBRemote::ParseFlags Definition of flags "
4510 "ProcessGDBRemote::ParseFlags Ignoring flags because fields "
4520 "ProcessGDBRemote::ParseFlags Ignoring definition of flags "
4621 "ProcessGDBRemote::ParseRegisters unhandled reg "
4638 "ProcessGDBRemote::ParseRegisters Size of register "
4669 "ProcessGDBRemote::ParseRegisters Could not determine lldb"
4691 "ProcessGDBRemote::%s Skipping zero bitsize register %s",
4708 bool ProcessGDBRemote::GetGDBServerRegisterInfoXMLAndProcess(
4821 void ProcessGDBRemote::AddRemoteRegisters(
4863 bool ProcessGDBRemote::GetGDBServerRegisterInfo(ArchSpec &arch_to_use) {
4890 llvm::Expected<LoadedModuleInfoList> ProcessGDBRemote::GetLoadedModuleList() {
4897 LLDB_LOGF(log, "ProcessGDBRemote::%s", __FUNCTION__);
5055 lldb::ModuleSP ProcessGDBRemote::LoadModuleAtAddress(const FileSpec &file,
5067 llvm::Error ProcessGDBRemote::LoadModules() {
5068 using lldb_private::process_gdb_remote::ProcessGDBRemote;
5148 Status ProcessGDBRemote::GetFileLoadAddress(const FileSpec &file,
5189 void ProcessGDBRemote::ModulesDidLoad(ModuleList &module_list) {
5199 void ProcessGDBRemote::HandleAsyncStdout(llvm::StringRef out) {
5206 void ProcessGDBRemote::HandleAsyncMisc(llvm::StringRef data) {
5231 std::string ProcessGDBRemote::HarmonizeThreadIdsForProfileData(
5307 void ProcessGDBRemote::HandleStopReply() {
5319 llvm::Expected<bool> ProcessGDBRemote::SaveCore(llvm::StringRef outfile) {
5396 "ProcessGDBRemote::%s() "
5401 "ProcessGDBRemote::%s"
5410 void ProcessGDBRemote::HandleAsyncStructuredDataPacket(llvm::StringRef data) {
5455 ProcessGDBRemote *process =
5456 (ProcessGDBRemote *)m_interpreter.GetExecutionContext()
5503 ProcessGDBRemote *process =
5504 (ProcessGDBRemote *)m_interpreter.GetExecutionContext().GetProcessPtr();
5537 ProcessGDBRemote *process =
5538 (ProcessGDBRemote *)m_interpreter.GetExecutionContext().GetProcessPtr();
5578 ProcessGDBRemote *process =
5579 (ProcessGDBRemote *)m_interpreter.GetExecutionContext().GetProcessPtr();
5625 ProcessGDBRemote *process =
5626 (ProcessGDBRemote *)m_interpreter.GetExecutionContext().GetProcessPtr();
5684 "Commands for operating on a ProcessGDBRemote process.",
5694 CommandObject *ProcessGDBRemote::GetPluginCommandObject() {
5701 void ProcessGDBRemote::DidForkSwitchSoftwareBreakpoints(bool enable) {
5713 void ProcessGDBRemote::DidForkSwitchHardwareTraps(bool enable) {
5734 void ProcessGDBRemote::DidFork(lldb::pid_t child_pid, lldb::tid_t child_tid) {
5762 LLDB_LOG(log, "ProcessGDBRemote::DidFork() unable to set pid/tid");
5778 LLDB_LOG(log, "ProcessGDBRemote::DidFork() unable to reset pid/tid");
5785 LLDB_LOG(log, "ProcessGDBRemote::DidFork() detach packet send failed: {0}",
5799 void ProcessGDBRemote::DidVFork(lldb::pid_t child_pid, lldb::tid_t child_tid) {
5804 "ProcessGDBRemote::DidFork() called for child_pid: {0}, child_tid {1}",
5828 LLDB_LOG(log, "ProcessGDBRemote::DidFork() unable to set pid/tid");
5838 LLDB_LOG(log, "ProcessGDBRemote::DidFork() unable to reset pid/tid");
5848 "ProcessGDBRemote::DidFork() detach packet send failed: {0}",
5859 void ProcessGDBRemote::DidVForkDone() {
5868 void ProcessGDBRemote::DidExec() {