From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11725 invoked by alias); 1 Mar 2002 18:37:10 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 11659 invoked from network); 1 Mar 2002 18:37:07 -0000 Received: from unknown (HELO dragon.nuxi.com) (66.92.13.169) by sources.redhat.com with SMTP; 1 Mar 2002 18:37:07 -0000 Received: (from obrien@localhost) by dragon.nuxi.com (8.11.6/8.11.1) id g21Ib7U30442 for gdb-patches@sources.redhat.com; Fri, 1 Mar 2002 10:37:07 -0800 (PST) (envelope-from obrien) Date: Fri, 01 Mar 2002 10:37:00 -0000 From: "David O'Brien" To: gdb-patches@sources.redhat.com Subject: [PATCH] add FreeBSD/sparc64 support Message-ID: <20020301103420.A30414@dragon.nuxi.com> Reply-To: obrien@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i X-Operating-System: FreeBSD 5.0-CURRENT Organization: The NUXI BSD group X-Pgp-Rsa-Fingerprint: B7 4D 3E E9 11 39 5F A3 90 76 5D 69 58 D9 98 7A X-Pgp-Rsa-Keyid: 1024/34F9F9D5 X-SW-Source: 2002-03/txt/msg00003.txt.bz2 This was checked in. 2002-03-01 David O'Brien * configure.host (sparc64-*-freebsd): Add. * configure.tgt: Likewise. * config/sparc/fbsd.mh: New file. * config/sparc/fbsd.mt: Likewise. * config/sparc/nm-fbsd.h: Likewise. * config/sparc/tm-fbsd.h: Likewise. Index: configure.host =================================================================== RCS file: /cvs/src/src/gdb/configure.host,v retrieving revision 1.33 diff -u -r1.33 configure.host --- configure.host 2002/01/24 02:48:04 1.33 +++ configure.host 2002/03/01 18:22:23 @@ -144,6 +144,8 @@ sparc-*-sunos4*) gdb_host=sun4os4 ;; sparc-*-sunos5*) gdb_host=sun4sol2 ;; sparc-*-*) gdb_host=sun4os4 ;; +sparc64-*-freebsd*|ultrasparc-*-freebsd*|sparcv9-*-freebsd*) + gdb_host=fbsd ;; sparc64-*-linux*) gdb_host=linux ;; sparcv9-*-* | sparc64-*-*) gdb_host=sun4sol2 ;; Index: configure.tgt =================================================================== RCS file: /cvs/src/src/gdb/configure.tgt,v retrieving revision 1.55 diff -u -r1.55 configure.tgt --- configure.tgt 2002/02/28 16:58:12 1.55 +++ configure.tgt 2002/03/01 18:22:23 @@ -276,6 +276,8 @@ # regs (some of which are usable in v8plus) so sp64sol.mt hasn't been # deleted though presumably it should be eventually. #sparc64-*-solaris2*) gdb_target=sp64sol2 ;; +sparc64-*-freebsd*|ultrasparc-*-freebsd*|sparcv9-*-freebsd*) + gdb_target=fbsd ;; sparc64-*-linux*) gdb_target=sp64linux ;; sparcv9-*-* | sparc64-*-*) gdb_target=sp64 ;; Index: config/sparc/fbsd.mh =================================================================== RCS file: fbsd.mh diff -N fbsd.mh --- /dev/null Tue May 5 13:32:27 1998 +++ fbsd.mh Fri Mar 1 10:22:23 2002 @@ -0,0 +1,25 @@ +/* Host-dependent settings for FreeBSD/sparc64. + Copyright 2002 Free Software Foundation, Inc. + Contributed by David E. O'Brien . + + 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. */ + +# Host: FreeBSD/sparc64 +NATDEPFILES= sparc-nat.o \ + corelow.o fork-child.o infptrace.o inftarg.o \ + solib.o solib-svr4.o solib-legacy.o +NAT_FILE= nm-fbsd.h Index: config/sparc/fbsd.mt =================================================================== RCS file: fbsd.mt diff -N fbsd.mt --- /dev/null Tue May 5 13:32:27 1998 +++ fbsd.mt Fri Mar 1 10:22:23 2002 @@ -0,0 +1,23 @@ +/* Target-dependent settings for FreeBSD/sparc64. + Copyright 2002 Free Software Foundation, Inc. + Contributed by David E. O'Brien . + + 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. */ + +# Target: FreeBSD/sparc64 +TDEPFILES= sparc-tdep.o solib.o solib-svr4.o solib-legacy.o +TM_FILE= tm-fbsd.h Index: config/sparc/nm-fbsd.h =================================================================== RCS file: nm-fbsd.h diff -N nm-fbsd.h --- /dev/null Tue May 5 13:32:27 1998 +++ nm-fbsd.h Fri Mar 1 10:22:23 2002 @@ -0,0 +1,67 @@ +/* Native-dependent definitions for FreeBSD/sparc64. + Copyright 2002 + Free Software Foundation, Inc. + Contributed by David E. O'Brien . + + 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. */ + +#ifndef NM_FBSD_H +#define NM_FBSD_H + +/* Type of the third argument to the `ptrace' system call. */ +#define PTRACE_ARG3_TYPE caddr_t + +/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */ +#define FETCH_INFERIOR_REGISTERS + +/* We can attach and detach. */ +#define ATTACH_DETACH + + +/* Shared library support. */ + +#define SVR4_SHARED_LIBS + +#include "solib.h" /* Support for shared libraries. */ +#include "elf/common.h" /* Additional ELF shared library info. */ + +/* Make things match up with what is expected in sparc-nat.c. */ + +#define PTRACE_GETREGS PT_GETREGS +#define PTRACE_SETREGS PT_SETREGS +#define PTRACE_GETFPREGS PT_GETFPREGS +#define PTRACE_SETFPREGS PT_SETFPREGS + +#define GDB_GREGSET_T struct reg +#define GDB_FPREGSET_T struct fpreg + +#define regs trapframe +#define r_g1 tf_global[1] +#define r_ps tf_tstate +#define r_pc tf_tpc +#define r_npc tf_tnpc +#define r_y tf_y + +#define FPU_FSR_TYPE unsigned long +#define fp_status fpreg /* our reg.h */ +#define fpu fpreg /* our reg.h */ +#define fpu_regs fr_regs /* one field of fpu_fr on Solaris */ +#define fpu_fr fr_regs /* a union w/in struct fpu on Solaris */ +#define fpu_fsr fr_fsr +#define Fpu_fsr fr_fsr + +#endif /* NM_FBSD_H */ Index: config/sparc/tm-fbsd.h =================================================================== RCS file: tm-fbsd.h diff -N tm-fbsd.h --- /dev/null Tue May 5 13:32:27 1998 +++ tm-fbsd.h Fri Mar 1 10:22:23 2002 @@ -0,0 +1,34 @@ +/* Target-dependent definitions for FreeBSD/sparc64. + Copyright 2002 Free Software Foundation, Inc. + Contributed by David E. O'Brien . + + 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. */ + +#ifndef TM_FBSD_H +#define TM_FBSD_H + +#define SVR4_SHARED_LIBS +#include "solib.h" /* Support for shared libraries. */ +#include "sparc/tm-sp64.h" + +/* Number of traps that happen between exec'ing the shell to run an + inferior, and when we finally get to the inferior code. The + default is right for FreeBSD. */ + +#undef START_INFERIOR_TRAPS_EXPECTED + +#endif /* TM_FBSD_H */