aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver/nto-low.c
diff options
context:
space:
mode:
authorAntoine Tremblay <antoine.tremblay@ericsson.com>2015-10-23 13:20:39 -0400
committerAntoine Tremblay <antoine.tremblay@ericsson.com>2015-10-23 13:21:11 -0400
commitfb78e89c56db8fddf3044cdc644d6e799ae97b3a (patch)
tree873c7f2624b4e9498612a24b6e6722791fb2cf0e /gdb/gdbserver/nto-low.c
parent2e6ee069ae81f3b5140059f6b997ccb0dcd1684e (diff)
downloadgdb-fb78e89c56db8fddf3044cdc644d6e799ae97b3a.zip
gdb-fb78e89c56db8fddf3044cdc644d6e799ae97b3a.tar.gz
gdb-fb78e89c56db8fddf3044cdc644d6e799ae97b3a.tar.bz2
Fix nto,spu and win32 builds of GDBServer.
This patch fixes the build that was broken by : https://sourceware.org/ml/gdb-patches/2015-10/msg00369.html It implements the sw_breakpoint_from_kind operation on these targets and removes the calls to set_breakpoint_data. Compiliation tested on win32. Not tested : nto, spu. gdb/gdbserver/ChangeLog: * nto-low.c (nto_sw_breakpoint_from_kind): New function. (struct target_ops) <sw_breakpoint_from_kind>: Initialize. (initialize_low): Remove set_breakpoint_data call. * spu-low.c (spu_sw_breakpoint_from_kind): New function. (struct target_ops) <sw_breakpoint_from_kind>: Iniitalize. (initialize_low): Remove set_breakpoint_data call. * win32-low.c (win32_sw_breakpoint_from_kind): New function. (struct target_ops) <sw_breakpoint_from_kind>: Initialize. (initialize_low): Remove set_breakpoint_data call.
Diffstat (limited to 'gdb/gdbserver/nto-low.c')
-rw-r--r--gdb/gdbserver/nto-low.c47
1 files changed, 44 insertions, 3 deletions
diff --git a/gdb/gdbserver/nto-low.c b/gdb/gdbserver/nto-low.c
index 97bd1e9..d72c465 100644
--- a/gdb/gdbserver/nto-low.c
+++ b/gdb/gdbserver/nto-low.c
@@ -921,6 +921,14 @@ nto_supports_non_stop (void)
return 0;
}
+/* Implementation of the target_ops method "sw_breakpoint_from_kind". */
+
+static const gdb_byte *
+nto_sw_breakpoint_from_kind (int kind, int *size)
+{
+ *size = the_low_target.breakpoint_len;
+ return the_low_target.breakpoint;
+}
static struct target_ops nto_target_ops = {
@@ -961,7 +969,42 @@ static struct target_ops nto_target_ops = {
NULL, /* xfer_siginfo */
nto_supports_non_stop,
NULL, /* async */
- NULL /* start_non_stop */
+ NULL, /* start_non_stop */
+ NULL, /* supports_multi_process */
+ NULL, /* supports_fork_events */
+ NULL, /* supports_vfork_events */
+ NULL, /* supports_exec_events */
+ NULL, /* handle_new_gdb_connection */
+ NULL, /* handle_monitor_command */
+ NULL, /* core_of_thread */
+ NULL, /* read_loadmap */
+ NULL, /* process_qsupported */
+ NULL, /* supports_tracepoints */
+ NULL, /* read_pc */
+ NULL, /* write_pc */
+ NULL, /* thread_stopped */
+ NULL, /* get_tib_address */
+ NULL, /* pause_all */
+ NULL, /* unpause_all */
+ NULL, /* stabilize_threads */
+ NULL, /* install_fast_tracepoint_jump_pad */
+ NULL, /* emit_ops */
+ NULL, /* supports_disable_randomization */
+ NULL, /* get_min_fast_tracepoint_insn_len */
+ NULL, /* qxfer_libraries_svr4 */
+ NULL, /* support_agent */
+ NULL, /* support_btrace */
+ NULL, /* enable_btrace */
+ NULL, /* disable_btrace */
+ NULL, /* read_btrace */
+ NULL, /* read_btrace_conf */
+ NULL, /* supports_range_stepping */
+ NULL, /* pid_to_exec_file */
+ NULL, /* multifs_open */
+ NULL, /* multifs_unlink */
+ NULL, /* multifs_readlink */
+ NULL, /* breakpoint_kind_from_pc */
+ nto_sw_breakpoint_from_kind,
};
@@ -975,8 +1018,6 @@ initialize_low (void)
TRACE ("%s\n", __func__);
set_target_ops (&nto_target_ops);
- set_breakpoint_data (the_low_target.breakpoint,
- the_low_target.breakpoint_len);
/* We use SIGUSR1 to gain control after we block waiting for a process.
We use sigwaitevent to wait. */