summaryrefslogtreecommitdiff
path: root/gdb/m68k-tdep.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2000-11-08 12:26:15 +0000
committerAndrew Cagney <cagney@redhat.com>2000-11-08 12:26:15 +0000
commit44bf04842d17663b335bd42fba9bf9ef50ece408 (patch)
tree0b6d88eca18c247b70771b5babdc94c3b5d3598a /gdb/m68k-tdep.c
parent0755e2c8b5e84d45ccc165afc7e5b6ffe749bc8e (diff)
downloadgdb-44bf04842d17663b335bd42fba9bf9ef50ece408.tar.gz
Work around targets that don't yet define JB_PC or JB_ELEMENT_SIZE.
Diffstat (limited to 'gdb/m68k-tdep.c')
-rw-r--r--gdb/m68k-tdep.c10
1 files changed, 10 insertions, 0 deletions
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