From 6131a42a8dc185d6ae4daeab5e0de1375fa2c70a Mon Sep 17 00:00:00 2001 From: John Gilmore Date: Wed, 2 Sep 1992 20:50:31 +0000 Subject: [PATCH] * tm-vx68.h, tm-es1800.h: Use tm-68k.h rather than tm-sun3.h. * tm-sun3.h: Remove STACK_END_ADDR, no longer used. * tm-sun3os4.h: Update comments. * xm-delta88.h: Remove STACK_END_ADDR. --- gdb/ChangeLog | 9 +++++++++ gdb/tm-es1800.h | 37 ++++++++++++++++++++++++++++++++----- gdb/tm-sun3.h | 7 ------- gdb/tm-sun3os4.h | 3 ++- gdb/tm-vx68.h | 46 ++++++++++++++++++++++++++++++++++++---------- gdb/xm-delta88.h | 11 ++--------- 6 files changed, 81 insertions(+), 32 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 71bbc2c0c5f..ff378c8eb6a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,7 +1,16 @@ +Wed Sep 2 13:45:27 1992 John Gilmore (gnu@cygnus.com) + + * tm-vx68.h, tm-es1800.h: Use tm-68k.h rather than tm-sun3.h. + * tm-sun3.h: Remove STACK_END_ADDR, no longer used. + * tm-sun3os4.h: Update comments. + * xm-delta88.h: Remove STACK_END_ADDR. + Wed Sep 2 01:18:31 1992 John Gilmore (gnu@cygnus.com) * Makefile.in (VERSION): Roll to 4.6.5. + * infrun.c: Lint for recent `handle' changes. + * ser-termios.c, ser-go32.c: Remove DEFUN crap, clean up. * serial.h (EXFUN): Remove all uses, convert to PARAMS. * config/sun4os4.mh: Include ser-termios.o. FIXME, all .mh files diff --git a/gdb/tm-es1800.h b/gdb/tm-es1800.h index 7cafe1918b4..a1d34b1c352 100644 --- a/gdb/tm-es1800.h +++ b/gdb/tm-es1800.h @@ -24,15 +24,42 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #define DEFAULT_PROMPT "(esgdb) " -/* Kludge... */ -#include "tm-sun3.h" +#define HAVE_68881 + +#include "tm-68k.h" /* Define this if the C compiler puts an underscore at the front of external names before giving them to the linker. */ #define NAMES_HAVE_UNDERSCORE -#undef SAVED_PC_AFTER_CALL +/* Longjmp stuff borrowed from sun3 configuration. Don't know if correct. + FIXME. */ +/* Offsets (in target ints) into jmp_buf. Not defined by Sun, but at least + documented in a comment in ! */ + +#define JB_ELEMENT_SIZE 4 + +#define JB_ONSSTACK 0 +#define JB_SIGMASK 1 +#define JB_SP 2 +#define JB_PC 3 +#define JB_PSL 4 +#define JB_D2 5 +#define JB_D3 6 +#define JB_D4 7 +#define JB_D5 8 +#define JB_D6 9 +#define JB_D7 10 +#define JB_A2 11 +#define JB_A3 12 +#define JB_A4 13 +#define JB_A5 14 +#define JB_A6 15 + +/* 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 */ -#define SAVED_PC_AFTER_CALL(frame) \ - read_memory_integer (read_register (SP_REGNUM), 4) +#define GET_LONGJMP_TARGET(ADDR) get_longjmp_target(ADDR) diff --git a/gdb/tm-sun3.h b/gdb/tm-sun3.h index 490fa548518..60606ec0cbc 100644 --- a/gdb/tm-sun3.h +++ b/gdb/tm-sun3.h @@ -24,13 +24,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define GDB_TARGET_IS_SUN3 1 -/* Address of the end of stack space. We get this from the system - include files. */ - -#include -#include -#define STACK_END_ADDR USRSTACK - #include "tm-68k.h" /* Offsets (in target ints) into jmp_buf. Not defined by Sun, but at least diff --git a/gdb/tm-sun3os4.h b/gdb/tm-sun3os4.h index ab1f4fedc5a..4b41b388479 100644 --- a/gdb/tm-sun3os4.h +++ b/gdb/tm-sun3os4.h @@ -1,4 +1,5 @@ -/* Copyright (C) 1990, Free Software Foundation, Inc. +/* Target machine parameters for Sun-3 under SunOS 4.x, for GDB. + Copyright (C) 1986, 1987, 1989, 1992 Free Software Foundation, Inc. This file is part of GDB. diff --git a/gdb/tm-vx68.h b/gdb/tm-vx68.h index b97c264b14c..bafbf28c04c 100644 --- a/gdb/tm-vx68.h +++ b/gdb/tm-vx68.h @@ -22,22 +22,18 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define DEFAULT_PROMPT "(vxgdb) " -/* Kludge... */ -#include "tm-sun3.h" +#define HAVE_68881 + +/* We have more complex, useful breakpoints on the target. */ +#define DECR_PC_AFTER_BREAK 0 + +#include "tm-68k.h" /* Define this if the C compiler puts an underscore at the front of external names before giving them to the linker. */ #define NAMES_HAVE_UNDERSCORE -#undef SAVED_PC_AFTER_CALL -#define SAVED_PC_AFTER_CALL(frame) \ - read_memory_integer (read_register (SP_REGNUM), 4) - -/* We have more complex, useful breakpoints on the target. */ -#undef DECR_PC_AFTER_BREAK -#define DECR_PC_AFTER_BREAK 0 - /* We are guaranteed to have a zero frame pointer at bottom of stack, too. */ #undef FRAME_CHAIN #undef FRAME_CHAIN_VALID @@ -55,3 +51,33 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ never fetched anything), we are at the top of the stack. */ #define FRAME_CHAIN_VALID(chain, thisframe) (chain != 0) + +/* FIXME, Longjmp information stolen from Sun-3 config. Dunno if right. */ +/* Offsets (in target ints) into jmp_buf. Not defined by Sun, but at least + documented in a comment in ! */ + +#define JB_ELEMENT_SIZE 4 + +#define JB_ONSSTACK 0 +#define JB_SIGMASK 1 +#define JB_SP 2 +#define JB_PC 3 +#define JB_PSL 4 +#define JB_D2 5 +#define JB_D3 6 +#define JB_D4 7 +#define JB_D5 8 +#define JB_D6 9 +#define JB_D7 10 +#define JB_A2 11 +#define JB_A3 12 +#define JB_A4 13 +#define JB_A5 14 +#define JB_A6 15 + +/* 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 */ + +#define GET_LONGJMP_TARGET(ADDR) get_longjmp_target(ADDR) diff --git a/gdb/xm-delta88.h b/gdb/xm-delta88.h index c4b02563be1..bc9ddd9b140 100644 --- a/gdb/xm-delta88.h +++ b/gdb/xm-delta88.h @@ -1,5 +1,6 @@ /* Host machine description for Motorola Delta 88 system, for GDB. - Copyright 1986, 1987, 1988, 1989, 1990, 1991 Free Software Foundation, Inc. + Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992 + Free Software Foundation, Inc. This file is part of GDB. @@ -32,10 +33,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define NBPG NBPC #define UPAGES USIZE -/* Get rid of any system-imposed stack limit if possible. */ - -/*#define SET_STACK_LIMIT_HUGE*/ - /* This is the amount to subtract from u.u_ar0 to get the offset in the core file of the register values. */ @@ -49,7 +46,3 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ (addr) = m88k_register_u_addr ((blockend),(regno)); #define FETCH_INFERIOR_REGISTERS - -/* Address of end of stack space (in core files). */ - -#define STACK_END_ADDR 0xF0000000 -- 2.30.2