/* Parameters for execution on a 68000 series machine.
- Copyright 1986, 1987, 1989, 1990, 1992 Free Software Foundation, Inc.
+ Copyright 1986, 1987, 1989, 1990, 1992, 1993, 1994, 1995, 1996, 1998,
+ 1999, 2000 Free Software Foundation, Inc.
This file is part of GDB.
/* Generic 68000 stuff, to be included by other tm-*.h files. */
-#define IEEE_FLOAT 1
+#define IEEE_FLOAT (1)
/* Define the bit, byte, and word ordering of the machine. */
#define TARGET_BYTE_ORDER BIG_ENDIAN
#if !defined(SKIP_PROLOGUE)
#define SKIP_PROLOGUE(ip) (m68k_skip_prologue (ip))
#endif
-extern CORE_ADDR m68k_skip_prologue PARAMS ((CORE_ADDR ip));
+extern CORE_ADDR m68k_skip_prologue (CORE_ADDR ip);
/* Immediately after a function call, return the saved pc.
Can't always go through the frames for this because on some machines
struct frame_info;
struct frame_saved_regs;
-extern CORE_ADDR m68k_saved_pc_after_call PARAMS ((struct frame_info *));
-extern void m68k_find_saved_regs PARAMS ((struct frame_info *, struct frame_saved_regs *));
+extern CORE_ADDR m68k_saved_pc_after_call (struct frame_info *);
+extern void m68k_find_saved_regs (struct frame_info *,
+ struct frame_saved_regs *);
#define SAVED_PC_AFTER_CALL(frame) \
m68k_saved_pc_after_call(frame)
#define PUSH_DUMMY_FRAME { m68k_push_dummy_frame (); }
-extern void m68k_push_dummy_frame PARAMS ((void));
+extern void m68k_push_dummy_frame (void);
-extern void m68k_pop_frame PARAMS ((void));
+extern void m68k_pop_frame (void);
/* Discard from the stack the innermost frame, restoring all registers. */
#define SP_ARG0 (1 * 4)
#define TARGET_M68K
+
+/* 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 m68k_get_longjmp_target (CORE_ADDR *);