summaryrefslogtreecommitdiff
path: root/gdb/config/arm
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/config/arm
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/config/arm')
-rw-r--r--gdb/config/arm/tm-linux.h8
-rw-r--r--gdb/config/arm/tm-nbsd.h13
2 files changed, 0 insertions, 21 deletions
diff --git a/gdb/config/arm/tm-linux.h b/gdb/config/arm/tm-linux.h
index aa3fa52cee8..11de4fac7c7 100644
--- a/gdb/config/arm/tm-linux.h
+++ b/gdb/config/arm/tm-linux.h
@@ -76,14 +76,6 @@ extern CORE_ADDR arm_linux_push_arguments (int, struct value **, CORE_ADDR,
/* Offset to saved PC in sigcontext structure, from <asm/sigcontext.h> */
#define SIGCONTEXT_PC_OFFSET (sizeof(unsigned long) * 18)
-/* Figure out where the longjmp will land. The code expects that longjmp
- has just been entered and the code had not altered the registers, so
- the arguments are are still in r0-r1. r0 points at the jmp_buf structure
- from which the target pc (JB_PC) is extracted. This pc value is copied
- into ADDR. This routine returns true on success */
-extern int arm_get_longjmp_target (CORE_ADDR *);
-#define GET_LONGJMP_TARGET(addr) arm_get_longjmp_target (addr)
-
/* On ARM Linux, each call to a library routine goes through a small piece
of trampoline code in the ".plt" section. The wait_for_inferior()
routine uses this macro to detect when we have stepped into one of
diff --git a/gdb/config/arm/tm-nbsd.h b/gdb/config/arm/tm-nbsd.h
index 4dfc32916ee..5119879fe47 100644
--- a/gdb/config/arm/tm-nbsd.h
+++ b/gdb/config/arm/tm-nbsd.h
@@ -24,24 +24,11 @@
#include "arm/tm-arm.h"
#include "tm-nbsd.h"
-#define JB_ELEMENT_SIZE sizeof(long) /* jmp_buf[_JBLEN] is array of ints */
-#define JB_PC 24 /* Setjmp()'s return PC saved here */
-
/* Return non-zero if inside a shared-library entry stub. */
#undef IN_SOLIB_CALL_TRAMPOLINE
#define IN_SOLIB_CALL_TRAMPOLINE(pc, name) \
STREQ ((name), "_PROCEDURE_LINKAGE_TABLE_")
-/* Figure out where the longjmp will land. Slurp the args out of the stack.
- We expect the first arg to be a pointer to the jmp_buf structure from which
- we extract the pc (JB_PC) that we will land at. The pc is copied into ADDR.
- This routine returns true on success */
-
-extern int
-get_longjmp_target (CORE_ADDR *);
-
-#define GET_LONGJMP_TARGET(ADDR) get_longjmp_target(ADDR)
-
/* By convention, NetBSD uses the "other" register names. */
#define DEFAULT_REGISTER_NAMES additional_register_names