Merge Apollo patches from Troy Rollo (troy@cbme.unsw.edu.au):

* dst.h, dstread.c, config/m68k/{apollo68b.mt,tm-apollo68b.h}:
	New files.
	* config/m68k/nm-apollo68b.h: Add more defines.
	* configure.in: Recognize apollo target, not just host.
This commit is contained in:
Jim Kingdon 1993-10-22 16:03:08 +00:00
parent 609151bee8
commit 835fe6e630
8 changed files with 3476 additions and 0 deletions

View File

@ -1,5 +1,11 @@
Fri Oct 22 07:49:54 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
Merge Apollo patches from Troy Rollo (troy@cbme.unsw.edu.au):
* dst.h, dstread.c, config/m68k/{apollo68b.mt,tm-apollo68b.h}:
New files.
* config/m68k/nm-apollo68b.h: Add more defines.
* configure.in: Recognize apollo target, not just host.
* configure.in: Add * to end of all OS names.
Fri Oct 22 06:14:01 1993 Fred Fish (fnf@cygnus.com)

View File

@ -28,6 +28,7 @@ altos.mt
amix.mh
amix.mt
apollo68b.mh
apollo68b.mt
apollo68v.mh
delta68.mh
delta68.mt
@ -65,6 +66,7 @@ sun3os3.mt
sun3os4.mh
sun3os4.mt
tm-3b1.h
tm-apollo68b.h
tm-delta68.h
tm-m68k-em.h
tm-m68k.h

View File

@ -0,0 +1,3 @@
# Target: Apollo m68k in BSD mode
TDEPFILES= exec.o m68k-pinsn.o m68k-tdep.o dstread.o
TM_FILE= tm-apollo68b.h

View File

@ -21,3 +21,25 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#define FETCH_INFERIOR_REGISTERS
/* Tell gdb that we can attach and detach other processes */
#define ATTACH_DETACH
#define U_REGS_OFFSET 6
/* This is the amount to subtract from u.u_ar0
to get the offset in the core file of the register values. */
#define KERNEL_U_ADDR 0
#undef FLOAT_INFO /* No float info yet */
#define REGISTER_U_ADDR(addr, blockend, regno) \
(addr) = (6 + 4 * (regno))
/* Apollos don't really have a USER area,so trying to read it from the
* process address space will fail. It does support a read from a faked
* USER area using the "PEEKUSER" ptrace call.
*/
#define PT_READ_U 3
#define MEM_FNS_DECLARED /* /usr/include/string.h can get it wrong */

View File

@ -0,0 +1,63 @@
/* Parameters for execution on Apollo 68k running BSD.
Copyright (C) 1986, 1987, 1989, 1991 Free Software Foundation, Inc.
Contributed by Cygnus Support.
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. */
/* Apollos use vector 0xb for the breakpoint vector */
#define BPT_VECTOR 0xb
/* Assume we have a coprocessor. If we don't, it still shouldn't hurt */
#define HAVE_68881 1
#include "m68k/tm-m68k.h"
#define FRAME_CHAIN_VALID(chain, thisframe) (chain != 0)
/* These are the jmp_buf registers I could guess. There are 13 registers
* in the buffer. There are 8 data registers, 6 general address registers,
* the Frame Pointer, the Stack Pointer, the PC and the SR in the chip. I would
* guess that 12 is the SR, but we don't need that anyway. 0 and 1 have
* me stumped. 4 appears to be a5 for some unknown reason. If you care
* about this, disassemble setjmp to find out. But don't do it with gdb :)
*/
#undef JB_SP
#undef JB_FP
#undef JB_PC
#undef JB_D0
#undef JB_D1
#undef JB_D2
#undef JB_D3
#undef JB_D4
#undef JB_D5
#define JB_SP 2
#define JB_FP 3
#define JB_PC 5
#define JB_D0 6
#define JB_D1 7
#define JB_D2 8
#define JB_D3 9
#define JB_D4 10
#define JB_D5 11
/* How to decide if we're in a shared library function. (Probably a wrong
definintion inherited from the VxWorks config file). */
#define IN_SOLIB_TRAMPOLINE(pc, name) (name && strcmp(name, "<end_of_program>") == 0)

View File

@ -222,6 +222,7 @@ m68*-hp-bsd*) gdb_target=hp300bsd ;;
m68*-hp-hpux*) gdb_target=hp300hpux ;;
m68*-altos-*) gdb_target=altos ;;
m68*-apollo*-bsd*) gdb_target=apollo68b ;;
m68*-att-*) gdb_target=3b1 ;;
m68*-ericsson-*) gdb_target=es1800 ;;
m68*-isi-*) gdb_target=isi ;;

1659
gdb/dst.h

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff