summaryrefslogtreecommitdiff
path: root/gdb/arch-utils.h
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2009-09-29 12:09:18 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2009-09-29 12:09:18 +0000
commit237571a5a19bbc6698a27ece1531f7abca7acabd (patch)
tree0d8049c564fc00a723739af202afa08cc88cd2ce /gdb/arch-utils.h
parent7f6b4fdd6b63a5d768440afb7a76b9ef4f828c5d (diff)
downloadgdb-237571a5a19bbc6698a27ece1531f7abca7acabd.tar.gz
* gdbarch.sh (displaced_step_hw_singlestep): New callback.
* gdbarch.c, gdbarch.h: Regenerate. * arch-utils.c (default_displaced_step_hw_singlestep): New function. * arch-utils.h (default_displaced_step_hw_singlestep): Add prototype. * ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function. (rs6000_gdbarch_init): Install it. * infrun.c (displaced_step_fixup): Use new callback to determine whether to "step" or "continue" displaced copy. (resume): Likewise. Do not call maybe_software_singlestep for displaced stepping. (maybe_software_singlestep): Do not handle displaced stepping.
Diffstat (limited to 'gdb/arch-utils.h')
-rw-r--r--gdb/arch-utils.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/arch-utils.h b/gdb/arch-utils.h
index 9d95d3f2634..dddae55cd6c 100644
--- a/gdb/arch-utils.h
+++ b/gdb/arch-utils.h
@@ -49,6 +49,11 @@ extern void
simple_displaced_step_free_closure (struct gdbarch *gdbarch,
struct displaced_step_closure *closure);
+/* Default implementation of gdbarch_displaced_hw_singlestep. */
+extern int
+ default_displaced_step_hw_singlestep (struct gdbarch *gdbarch,
+ struct displaced_step_closure *closure);
+
/* Possible value for gdbarch_displaced_step_location:
Place displaced instructions at the program's entry point,
leaving space for inferior function call return breakpoints. */