diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/config/m68k-nofp.mt | 3 | ||||
-rw-r--r-- | gdb/configure.in | 1 | ||||
-rw-r--r-- | gdb/tm-68k-nofp.h | 64 |
4 files changed, 74 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f112d00ebb..4909ca3299 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +Sun Mar 14 02:54:15 1993 John Gilmore (gnu@cygnus.com) + + * configure.in (m68k-adobe-*): New config. + * tm-68k-nofp.h: New file, lacks 68881 support. + * config/m68k-nofp.mt: New file. + Sun Mar 14 02:30:08 1993 John Gilmore (gnu@cygnus.com) Remove a few remaining underscore/no-underscore remnants from diff --git a/gdb/config/m68k-nofp.mt b/gdb/config/m68k-nofp.mt new file mode 100644 index 0000000000..a2465bf6aa --- /dev/null +++ b/gdb/config/m68k-nofp.mt @@ -0,0 +1,3 @@ +# Target: Motorola 68xxx without floating point +TDEPFILES= exec.o m68k-pinsn.o m68k-tdep.o +TM_FILE= tm-68k-nofp.h diff --git a/gdb/configure.in b/gdb/configure.in index 0ced7b231f..790b7b7299 100644 --- a/gdb/configure.in +++ b/gdb/configure.in @@ -151,6 +151,7 @@ m68*-cbm-sysv4*) gdb_target=amix ;; m68*-hp-bsd) gdb_target=hp300bsd ;; m68*-hp-hpux) gdb_target=hp300hpux ;; +m68*-adobe-*) gdb_target=m68k-nofp ;; m68*-altos-*) gdb_target=altos ;; m68*-att-*) gdb_target=3b1 ;; m68*-ericsson-*) gdb_target=es1800 ;; diff --git a/gdb/tm-68k-nofp.h b/gdb/tm-68k-nofp.h new file mode 100644 index 0000000000..6d503a2de3 --- /dev/null +++ b/gdb/tm-68k-nofp.h @@ -0,0 +1,64 @@ +/* Target machine parameters for embedded m68k, without float, for GDB. + Copyright 1986, 1987, 1989, 1992, 1993 Free Software Foundation, Inc. + +This file is part of GDB. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#include "tm-68k.h" + +/* Longjmp info comes from the Sun-3 machine description. Might as well + guess... */ + +/* Offsets (in target ints) into jmp_buf. Not defined by Sun, but at least + documented in a comment in <machine/setjmp.h>! */ + +#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) + +/* Where is the PC after a call? */ + +#ifdef __STDC__ +struct frame_info; +#endif + +extern CORE_ADDR m68k_saved_pc_after_call PARAMS ((struct frame_info *)); + +#undef SAVED_PC_AFTER_CALL +#define SAVED_PC_AFTER_CALL(frame) \ + m68k_saved_pc_after_call(frame) |