diff options
| author | Jim Ingham <jingham@apple.com> | 2012-07-25 21:12:43 +0000 |
|---|---|---|
| committer | Jim Ingham <jingham@apple.com> | 2012-07-25 21:12:43 +0000 |
| commit | 279ceecf65d26b3b07454aaf6ced4ebc402e03ec (patch) | |
| tree | ac6e22e7314e2f8862efa8984cb50aae5e4bee5a /lldb/tools/debugserver/source/RNBRemote.h | |
| parent | e8c6b151370feab4972dba0af4bce9b0e77cc190 (diff) | |
| download | bcm5719-llvm-279ceecf65d26b3b07454aaf6ced4ebc402e03ec.tar.gz bcm5719-llvm-279ceecf65d26b3b07454aaf6ced4ebc402e03ec.zip | |
Add a call to "sync" a thread state before checkpointing registers in preparation for
calling functions. This is necessary on Mac OS X, since bad things can happen if you set
the registers of a thread that's sitting in a kernel trap.
<rdar://problem/11145013>
llvm-svn: 160756
Diffstat (limited to 'lldb/tools/debugserver/source/RNBRemote.h')
| -rw-r--r-- | lldb/tools/debugserver/source/RNBRemote.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lldb/tools/debugserver/source/RNBRemote.h b/lldb/tools/debugserver/source/RNBRemote.h index b10449a850a..1b1b0a6c58c 100644 --- a/lldb/tools/debugserver/source/RNBRemote.h +++ b/lldb/tools/debugserver/source/RNBRemote.h @@ -93,6 +93,7 @@ public: query_shlib_notify_info_addr, // 'qShlibInfoAddr' query_step_packet_supported, // 'qStepPacketSupported' query_vattachorwait_supported, // 'qVAttachOrWaitSupported' + query_sync_thread_state_supported,// 'QSyncThreadState' query_host_info, // 'qHostInfo' pass_signals_to_inferior, // 'QPassSignals' start_noack_mode, // 'QStartNoAckMode' @@ -109,6 +110,7 @@ public: set_stderr, // 'QSetSTDERR:' set_working_dir, // 'QSetWorkingDir:' set_list_threads_in_stop_reply, // 'QListThreadsInStopReply:' + sync_thread_state, // 'QSyncThreadState:' memory_region_info, // 'qMemoryRegionInfo:' watchpoint_support_info, // 'qWatchpointSupportInfo:' allocate_memory, // '_M' @@ -167,6 +169,7 @@ public: rnb_err_t HandlePacket_qShlibInfoAddr (const char *p); rnb_err_t HandlePacket_qStepPacketSupported (const char *p); rnb_err_t HandlePacket_qVAttachOrWaitSupported (const char *p); + rnb_err_t HandlePacket_qSyncThreadStateSupported (const char *p); rnb_err_t HandlePacket_qThreadInfo (const char *p); rnb_err_t HandlePacket_qThreadExtraInfo (const char *p); rnb_err_t HandlePacket_qThreadStopInfo (const char *p); @@ -183,6 +186,7 @@ public: rnb_err_t HandlePacket_QEnvironmentHexEncoded (const char *p); rnb_err_t HandlePacket_QLaunchArch (const char *p); rnb_err_t HandlePacket_QListThreadsInStopReply (const char *p); + rnb_err_t HandlePacket_QSyncThreadState (const char *p); rnb_err_t HandlePacket_QPrefixRegisterPacketsWithThreadID (const char *p); rnb_err_t HandlePacket_last_signal (const char *p); rnb_err_t HandlePacket_m (const char *p); |

