aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver/linux-nios2-low.c
diff options
context:
space:
mode:
authorAntoine Tremblay <antoine.tremblay@ericsson.com>2015-12-18 11:33:58 -0500
committerAntoine Tremblay <antoine.tremblay@ericsson.com>2015-12-18 11:33:58 -0500
commitfa5308bdcc4967861d1277b45205c2623b154a64 (patch)
treeef7f8c9ae03a5754106957d4f75946d9ac48cb80 /gdb/gdbserver/linux-nios2-low.c
parentc9f203207d418f72217f4bc0997acd809a0479ce (diff)
downloadgdb-fa5308bdcc4967861d1277b45205c2623b154a64.zip
gdb-fa5308bdcc4967861d1277b45205c2623b154a64.tar.gz
gdb-fa5308bdcc4967861d1277b45205c2623b154a64.tar.bz2
Replace breakpoint_reinsert_addr by get_next_pcs operation in GDBServer
This patch in preparation for software single step support on ARM. It refactors breakpoint_reinsert_addr into get_next_pcs so that multiple location can be returned. When software single stepping there can be multiple possible next addresses because we're stepping over a conditional branch instruction, for example. The operation get_next_pcs handles that by returning a vector of all the possible next addresses. Software breakpoints are installed at each location returned. No regressions, tested on ubuntu 14.04 ARMv7 and x86. With gdbserver-{native,extended} / { -marm -mthumb } gdb/gdbserver/ChangeLog: * linux-aarch64-low.c (the_low_targets): Rename breakpoint_reinsert_addr to get_next_pcs. * linux-arm-low.c (the_low_targets): Likewise. * linux-bfin-low.c (the_low_targets): Likewise. * linux-cris-low.c (the_low_targets): Likewise. * linux-crisv32-low.c (the_low_targets): Likewise. * linux-low.c (can_software_single_step): Likewise. (install_software_single_step_breakpoints): New function. (start_step_over): Use install_software_single_step_breakpoints. * linux-low.h: New CORE_ADDR vector. (struct linux_target_ops) Rename breakpoint_reinsert_addr to get_next_pcs. * linux-mips-low.c (the_low_targets): Likewise. * linux-nios2-low.c (the_low_targets): Likewise. * linux-sparc-low.c (the_low_targets): Likewise.
Diffstat (limited to 'gdb/gdbserver/linux-nios2-low.c')
-rw-r--r--gdb/gdbserver/linux-nios2-low.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gdb/gdbserver/linux-nios2-low.c b/gdb/gdbserver/linux-nios2-low.c
index 9380c3b..1accc03 100644
--- a/gdb/gdbserver/linux-nios2-low.c
+++ b/gdb/gdbserver/linux-nios2-low.c
@@ -267,7 +267,7 @@ struct linux_target_ops the_low_target =
nios2_set_pc,
NULL, /* breakpoint_kind_from_pc */
nios2_sw_breakpoint_from_kind,
- NULL, /* breakpoint_reinsert_addr */
+ NULL, /* get_next_pcs */
0,
nios2_breakpoint_at,
};