summaryrefslogtreecommitdiff
path: root/gdb/arm-tdep.h
diff options
context:
space:
mode:
authorRichard Earnshaw <richard.earnshaw@arm.com>2002-02-18 13:35:31 +0000
committerRichard Earnshaw <richard.earnshaw@arm.com>2002-02-18 13:35:31 +0000
commit8db11bb6fa35920ef8547162d7d8fac8c9b0d65c (patch)
tree7216fa2f51357e46f1159366e62a2a7d63632ad9 /gdb/arm-tdep.h
parentc33f5d0e2add5a7c65178843f1b05164fa211f7c (diff)
downloadgdb-8db11bb6fa35920ef8547162d7d8fac8c9b0d65c.tar.gz
* gdbarch.sh (GET_LONGJMP_TARGET): Add rule.
* gdbarch.c gdbarch.h: Regenerate. * breakpoint.c (create_longjmp_breakpoint): Always compile this function. (breakpoint_reset): Test GET_LONGJMP_TARGET_P(). * infrun.c (GET_LONGJMP_TARGET): Delete default definition. (handle_inferior_event): Test GET_LONGJMP_TARGET_P(). * arm-tdep.h (struct gdbarch_tdep): Add jb_pc and jb_elt_size fields. * arm-tdep.c (arm_get_longjmp_target): New function. (arm_gdbarch_init): Initialize jb_pc to -1. If ABI handler changes this to a positive value register arm_get_longjmp_target as the longjmp handler. * arm-linux-tdep.c (arm_get_longjmp_target): Delete. (arm_linux_init_abi): Set up longjmp description in tdep. * armnbsd-nat.c (get_longjmp_target): Delete. * armnbsd-tdep.c (arm_netbsd_init_abi_common): Set up longjmp description in tdep. * config/arm/tm-nbsd.h (JB_ELEMENT_SIZE, JB_PC): Delete. (get_longjmp_target): Delete declaration. (GET_LONGJMP_TARGET): Delete. * config/arm/tm-linux.h (arm_get_longjmp_target): Delete declaration. (GET_LONGJMP_TARGET): Delete.
Diffstat (limited to 'gdb/arm-tdep.h')
-rw-r--r--gdb/arm-tdep.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/gdb/arm-tdep.h b/gdb/arm-tdep.h
index 85d9e4fb0ce..29c8bc97dbc 100644
--- a/gdb/arm-tdep.h
+++ b/gdb/arm-tdep.h
@@ -123,10 +123,16 @@ struct gdbarch_tdep
const char *abi_name; /* Name of the above. */
CORE_ADDR lowest_pc; /* Lowest address at which instructions
will appear. */
- const char *arm_breakpoint;
- int arm_breakpoint_size;
- const char *thumb_breakpoint;
- int thumb_breakpoint_size;
+
+ const char *arm_breakpoint; /* Breakpoint pattern for an ARM insn. */
+ int arm_breakpoint_size; /* And its size. */
+ const char *thumb_breakpoint; /* Breakpoint pattern for an ARM insn. */
+ int thumb_breakpoint_size; /* And its size. */
+
+ int jb_pc; /* Offset to PC value in jump buffer.
+ If this is negative, longjmp support
+ will be disabled. */
+ size_t jb_elt_size; /* And the size of each entry in the buf. */
};
#ifndef LOWEST_PC