diff options
author | Simon Marchi <simon.marchi@efficios.com> | 2021-11-22 11:27:31 -0500 |
---|---|---|
committer | Simon Marchi <simon.marchi@polymtl.ca> | 2021-11-22 13:57:54 -0500 |
commit | c272a98cbf596ddf1a70a41801c6e86d9564d152 (patch) | |
tree | 366b8b105f8450dd1894aebbbae82b8e1946d249 /gdbserver/remote-utils.cc | |
parent | 06de25b7af21eb1173d7b86c5c0f37aae5ec2674 (diff) | |
download | fsf-binutils-gdb-c272a98cbf596ddf1a70a41801c6e86d9564d152.zip fsf-binutils-gdb-c272a98cbf596ddf1a70a41801c6e86d9564d152.tar.gz fsf-binutils-gdb-c272a98cbf596ddf1a70a41801c6e86d9564d152.tar.bz2 |
gdb: pass more const target_waitstatus by reference
While working on target_waitstatus changes, I noticed a few places where
const target_waitstatus objects could be passed by reference instead of
by pointers. And in some cases, places where a target_waitstatus could
be passed as const, but was not. Convert them as much as possible.
Change-Id: Ied552d464be5d5b87489913b95f9720a5ad50c5a
Diffstat (limited to 'gdbserver/remote-utils.cc')
-rw-r--r-- | gdbserver/remote-utils.cc | 45 |
1 files changed, 22 insertions, 23 deletions
diff --git a/gdbserver/remote-utils.cc b/gdbserver/remote-utils.cc index 5bc261a..8202365 100644 --- a/gdbserver/remote-utils.cc +++ b/gdbserver/remote-utils.cc @@ -1081,15 +1081,14 @@ outreg (struct regcache *regcache, int regno, char *buf) } void -prepare_resume_reply (char *buf, ptid_t ptid, - struct target_waitstatus *status) +prepare_resume_reply (char *buf, ptid_t ptid, const target_waitstatus &status) { client_state &cs = get_client_state (); if (debug_threads) debug_printf ("Writing resume reply for %s:%d\n", - target_pid_to_str (ptid).c_str (), status->kind ()); + target_pid_to_str (ptid).c_str (), status.kind ()); - switch (status->kind ()) + switch (status.kind ()) { case TARGET_WAITKIND_STOPPED: case TARGET_WAITKIND_FORKED: @@ -1104,27 +1103,27 @@ prepare_resume_reply (char *buf, ptid_t ptid, const char **regp; struct regcache *regcache; - if ((status->kind () == TARGET_WAITKIND_FORKED && cs.report_fork_events) - || (status->kind () == TARGET_WAITKIND_VFORKED + if ((status.kind () == TARGET_WAITKIND_FORKED && cs.report_fork_events) + || (status.kind () == TARGET_WAITKIND_VFORKED && cs.report_vfork_events)) { enum gdb_signal signal = GDB_SIGNAL_TRAP; - const char *event = (status->kind () == TARGET_WAITKIND_FORKED + const char *event = (status.kind () == TARGET_WAITKIND_FORKED ? "fork" : "vfork"); sprintf (buf, "T%02x%s:", signal, event); buf += strlen (buf); - buf = write_ptid (buf, status->child_ptid ()); + buf = write_ptid (buf, status.child_ptid ()); strcat (buf, ";"); } - else if (status->kind () == TARGET_WAITKIND_VFORK_DONE + else if (status.kind () == TARGET_WAITKIND_VFORK_DONE && cs.report_vfork_events) { enum gdb_signal signal = GDB_SIGNAL_TRAP; sprintf (buf, "T%02xvforkdone:;", signal); } - else if (status->kind () == TARGET_WAITKIND_EXECD && cs.report_exec_events) + else if (status.kind () == TARGET_WAITKIND_EXECD && cs.report_exec_events) { enum gdb_signal signal = GDB_SIGNAL_TRAP; const char *event = "exec"; @@ -1134,32 +1133,32 @@ prepare_resume_reply (char *buf, ptid_t ptid, buf += strlen (buf); /* Encode pathname to hexified format. */ - bin2hex ((const gdb_byte *) status->execd_pathname (), + bin2hex ((const gdb_byte *) status.execd_pathname (), hexified_pathname, - strlen (status->execd_pathname ())); + strlen (status.execd_pathname ())); sprintf (buf, "%s;", hexified_pathname); buf += strlen (buf); } - else if (status->kind () == TARGET_WAITKIND_THREAD_CREATED + else if (status.kind () == TARGET_WAITKIND_THREAD_CREATED && cs.report_thread_events) { enum gdb_signal signal = GDB_SIGNAL_TRAP; sprintf (buf, "T%02xcreate:;", signal); } - else if (status->kind () == TARGET_WAITKIND_SYSCALL_ENTRY - || status->kind () == TARGET_WAITKIND_SYSCALL_RETURN) + else if (status.kind () == TARGET_WAITKIND_SYSCALL_ENTRY + || status.kind () == TARGET_WAITKIND_SYSCALL_RETURN) { enum gdb_signal signal = GDB_SIGNAL_TRAP; - const char *event = (status->kind () == TARGET_WAITKIND_SYSCALL_ENTRY + const char *event = (status.kind () == TARGET_WAITKIND_SYSCALL_ENTRY ? "syscall_entry" : "syscall_return"); sprintf (buf, "T%02x%s:%x;", signal, event, - status->syscall_number ()); + status.syscall_number ()); } else - sprintf (buf, "T%02x", status->sig ()); + sprintf (buf, "T%02x", status.sig ()); if (disable_packet_T) { @@ -1281,19 +1280,19 @@ prepare_resume_reply (char *buf, ptid_t ptid, case TARGET_WAITKIND_EXITED: if (cs.multi_process) sprintf (buf, "W%x;process:%x", - status->exit_status (), ptid.pid ()); + status.exit_status (), ptid.pid ()); else - sprintf (buf, "W%02x", status->exit_status ()); + sprintf (buf, "W%02x", status.exit_status ()); break; case TARGET_WAITKIND_SIGNALLED: if (cs.multi_process) sprintf (buf, "X%x;process:%x", - status->sig (), ptid.pid ()); + status.sig (), ptid.pid ()); else - sprintf (buf, "X%02x", status->sig ()); + sprintf (buf, "X%02x", status.sig ()); break; case TARGET_WAITKIND_THREAD_EXITED: - sprintf (buf, "w%x;", status->exit_status ()); + sprintf (buf, "w%x;", status.exit_status ()); buf += strlen (buf); buf = write_ptid (buf, ptid); break; |