From 2765b7984ff06062a2159d988c646e6600263b6b Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Wed, 8 Nov 2000 12:26:15 +0000 Subject: [PATCH] Work around targets that don't yet define JB_PC or JB_ELEMENT_SIZE. --- gdb/ChangeLog | 5 +++++ gdb/m68k-tdep.c | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 00e214db4f4..bf28a842785 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +Wed Nov 8 23:08:48 2000 Andrew Cagney + + * m68k-tdep.c (m68k_get_longjmp_target): Work around targets that + don't define JB_PC or JB_ELEMENT_SIZE. + Wed Nov 8 22:46:43 2000 Andrew Cagney * m68k-tdep.c (m68k_get_longjmp_target): Rename function diff --git a/gdb/m68k-tdep.c b/gdb/m68k-tdep.c index f9b105d573f..5a7715626ce 100644 --- a/gdb/m68k-tdep.c +++ b/gdb/m68k-tdep.c @@ -642,9 +642,15 @@ fill_fpregset (fpregset_t *fpregsetp, int regno) we extract the pc (JB_PC) that we will land at. The pc is copied into PC. This routine returns true on success. */ +/* NOTE: cagney/2000-11-08: For this function to be fully multi-arched + the macro's JB_PC and JB_ELEMENT_SIZE would need to be moved into + the ``struct gdbarch_tdep'' object and then set on a target ISA/ABI + dependant basis. */ + int m68k_get_longjmp_target (CORE_ADDR *pc) { +#if defined (JB_PC) && defined (JB_ELEMENT_SIZE) char *buf; CORE_ADDR sp, jb_addr; @@ -665,6 +671,10 @@ m68k_get_longjmp_target (CORE_ADDR *pc) *pc = extract_address (buf, TARGET_PTR_BIT / TARGET_CHAR_BIT); return 1; +#else + internal_error ("m68k_get_longjmp_target: not implemented"); + return 0; +#endif } /* Immediately after a function call, return the saved pc before the frame -- 2.30.2