* configure.in (*-*-sunos*): Use trailing * to match all
authorJohn Gilmore <gnu@cygnus>
Wed, 2 Sep 1992 08:03:42 +0000 (08:03 +0000)
committerJohn Gilmore <gnu@cygnus>
Wed, 2 Sep 1992 08:03:42 +0000 (08:03 +0000)
sub-variants of SunOS, e.g. sunos4* to match sunos4.1.1.
(sparc-*-sunos3):  Remove host & target.  Sunos3 never shipped
in production on Sun-4.
({a29k,i[34]86,i960}-*-elf):  Add targets, equivalent to coff.
(m68k-*-{aout,coff,elf}):  Add targets, w/new config and tm files.
(sparc-*-{aout,coff,elf}):  Add targets, w/new config and tm files.

* tm-68k-un.h, tm-68k-noun.h, tm-spc-un.h, tm-spc-noun.h:  New
target definitions for embedded with and without underlines on
identifiers.  FIXME -- this ought to be known by BFD instead.

* tm-sparc.h, tm-sun2.h, tm-sun3.h:  Delete NAMES_HAVE_UNDERSCORE:
not a parameter of the CPU, but of the development environment.
* tm-es1800.h, tm-sunos.h, tm-vx68.h:  Add NAMES_HAVE_UNDERSCORE.

12 files changed:
gdb/ChangeLog
gdb/configure.in
gdb/tm-68k-noun.h [new file with mode: 0644]
gdb/tm-68k-un.h [new file with mode: 0644]
gdb/tm-es1800.h
gdb/tm-sparc.h
gdb/tm-spc-noun.h [new file with mode: 0644]
gdb/tm-spc-un.h [new file with mode: 0644]
gdb/tm-sun2.h
gdb/tm-sun3.h
gdb/tm-sunos.h
gdb/tm-vx68.h

index f13f8a6dd7544f024079070b2df410314e9d2918..f9c280db16468c4be1d200eacfe5f72021418200 100644 (file)
@@ -1,3 +1,25 @@
+Wed Sep  2 00:10:43 1992  John Gilmore  (gnu@cygnus.com)
+
+       * configure.in (*-*-sunos*):  Use trailing * to match all
+       sub-variants of SunOS, e.g. sunos4* to match sunos4.1.1.
+       (sparc-*-sunos3):  Remove host & target.  Sunos3 never shipped
+       in production on Sun-4.
+       ({a29k,i[34]86,i960}-*-elf):  Add targets, equivalent to coff.
+       (m68k-*-{aout,coff,elf}):  Add targets, w/new config and tm files.
+       (sparc-*-{aout,coff,elf}):  Add targets, w/new config and tm files.
+
+       * config/m68k-un.mt, config/m68k-noun.mt, config/sparc-un.mt,
+       config/sparc-noun.mt:  New target configs for embedded.
+       * config/sun4os3.{mh,mt}:  Remove, never existed in production.
+
+       * tm-68k-un.h, tm-68k-noun.h, tm-spc-un.h, tm-spc-noun.h:  New
+       target definitions for embedded with and without underlines on
+       identifiers.  FIXME -- this ought to be known by BFD instead.
+
+       * tm-sparc.h, tm-sun2.h, tm-sun3.h:  Delete NAMES_HAVE_UNDERSCORE:
+       not a parameter of the CPU, but of the development environment.
+       * tm-es1800.h, tm-sunos.h, tm-vx68.h:  Add NAMES_HAVE_UNDERSCORE.
+
 Tue Sep  1 17:31:45 1992  John Gilmore  (gnu@cygnus.com)
 
        * breakpoint.c (breakpoint_re_set):  Avoid setting source symtab
index b9bbe2d0d20baf248a8922379e9fff4e7cf62cac..8c68e72ed8c72ea175d88fee5d293a71cacf5c02 100644 (file)
@@ -32,8 +32,8 @@ i[34]86-*-sysv*)      gdb_host=i386v ;;
 
 i860-*-*)              gdb_host=stratus ;;
 
-m68000-sun-sunos3    gdb_host=sun2os3 ;;
-m68000-sun-sunos4    gdb_host=sun2os4 ;;
+m68000-sun-sunos3*)    gdb_host=sun2os3 ;;
+m68000-sun-sunos4*)    gdb_host=sun2os4 ;;
 
 m68030-sony-*)         gdb_host=news1000 ;;
 
@@ -52,8 +52,8 @@ m68k-isi-*)           gdb_host=isi ;;
 
 m68k-sony-*)           gdb_host=news ;;
 
-m68k-sun-sunos3      gdb_host=sun3os3 ;;
-m68k-sun-sunos4      gdb_host=sun3os4 ;;
+m68k-sun-sunos3*)      gdb_host=sun3os3 ;;
+m68k-sun-sunos4*)      gdb_host=sun3os4 ;;
 m68k-sun-*)            gdb_host=sun3 ;;
 
 m88k-motorola-*)       gdb_host=delta88 ;;
@@ -81,8 +81,7 @@ romp-*-*)             gdb_host=rtbsd ;;
 rs6000-*-*)            gdb_host=rs6000 ;;
 
 sparc-*-solaris2*)     gdb_host=sun4sol2 ;;
-sparc-*-sunos3)                gdb_host=sun4os3 ;;
-sparc-*-sunos4)                gdb_host=sun4os4 ;;
+sparc-*-sunos4*)       gdb_host=sun4os4 ;;
 sparc-*-*)             gdb_host=sun4 ;;
 
 tahoe-*-*)             gdb_host=tahoe ;;
@@ -107,6 +106,7 @@ case "${target}" in
 
 a29k-*-aout)           gdb_target=a29k ;;
 a29k-*-coff)           gdb_target=a29k ;;
+a29k-*-elf)            gdb_target=a29k ;;
 a29k-*-ebmon)          gdb_target=a29k ;;
 a29k-*-kern)           gdb_target=a29k-kern ;;
 a29k-*-none)           gdb_target=a29k ;;
@@ -125,25 +125,30 @@ hppa*-*-hpux)             gdb_target=hppahpux ;;
 
 i[34]86-sequent-*)     gdb_target=symmetry ;;
 i[34]86-ncr-*)         gdb_target=ncr3000 ;;
+
+i[34]86-*-aout)                gdb_target=i386aout ;;
+i[34]86-*-coff)                gdb_target=i386v ;;
+i[34]86-*-elf)         gdb_target=i386v ;;
+
 i[34]86-*-sunos*)      gdb_target=sun386 ;;
 i[34]86-*-sysv4*)      gdb_target=i386v4 ;;
 i[34]86-*-scosysv3*)   gdb_target=i386v ;;
 i[34]86-*-sysv*)       gdb_target=i386v ;;
-i[34]86-*-coff)                gdb_target=i386v ;;
-i[34]86-*-aout)                gdb_target=i386aout ;;
 i[34]86-*-linux)       gdb_target=linux ;;
 
 i860-*-*)              gdb_target=stratus ;;
 
 i960-*-bout)           gdb_target=vxworks960 ;;
 i960-*-coff)           gdb_target=nindy960 ;;
+i960-*-elf)            gdb_target=nindy960 ;;
+
 i960-*-nindy)          gdb_target=nindy960 ;;
 i960-*-vxworks)                gdb_target=vxworks960 ;;
 
 m68000-ericsson-*)     gdb_target=es1800 ;;
 
-m68000-*-sunos3      gdb_target=sun2os3 ;;
-m68000-*-sunos4      gdb_target=sun2os4 ;;
+m68000-*-sunos3*)      gdb_target=sun2os3 ;;
+m68000-*-sunos4*)      gdb_target=sun2os4 ;;
 
 m680[01234]0-*-vxworks)        gdb_target=vxworks68 ;;
 
@@ -164,10 +169,14 @@ m68k-isi-*)               gdb_target=isi ;;
 m68k-netx-*)           gdb_target=vxworks68 ;;
 
 m68k-sony-*)           gdb_target=news ;;
+m68k-sun-*)            gdb_target=sun3 ;;
+
+m68k-*-aout)           gdb_target=m68k-un ;;
+m68k-*-coff)           gdb_target=m68k-noun ;;
+m68k-*-elf)            gdb_target=m68k-noun ;;
 
 m68k-*-sunos3*)                gdb_target=sun3os3 ;;
 m68k-*-sunos4*)                gdb_target=sun3os4 ;;
-m68k-sun-*)            gdb_target=sun3 ;;
 
 m68k-*-vxworks*)       gdb_target=vxworks68 ;;
 
@@ -197,9 +206,12 @@ pyramid-*-*)               gdb_target=pyramid ;;
 
 rs6000-*-*)            gdb_target=rs6000 ;;
 
+sparc-*-aout)          gdb_target=sparc-un ;;
+sparc-*-coff)          gdb_target=sparc-noun ;;
+sparc-*-elf)           gdb_target=sparc-noun ;;
 sparc-*-solaris2*)     gdb_target=sun4sol2 ;;
-sparc-*-sunos3)                gdb_target=sun4os3 ;;
-sparc-*-sunos4)                gdb_target=sun4os4 ;;
+sparc-*-sunos4*)       gdb_target=sun4os4 ;;
+sparc-*-vxworks*)      gdb_target=sparc-un ;;
 sparc-*-*)             gdb_target=sun4 ;;
 
 tahoe-*-*)             gdb_target=tahoe ;;
diff --git a/gdb/tm-68k-noun.h b/gdb/tm-68k-noun.h
new file mode 100644 (file)
index 0000000..d3e5e62
--- /dev/null
@@ -0,0 +1,67 @@
+/* Target machine parameters for an embedded m68k, for GDB, the GNU debugger.
+   This is for object file formats that don't have underlines on symbols.
+   Copyright 1986, 1987, 1989, 1992 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.  */
+
+#define HAVE_68881
+
+#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 sun3_saved_pc_after_call PARAMS ((struct frame_info *));
+
+#undef SAVED_PC_AFTER_CALL
+#define SAVED_PC_AFTER_CALL(frame) \
+  sun3_saved_pc_after_call(frame)
diff --git a/gdb/tm-68k-un.h b/gdb/tm-68k-un.h
new file mode 100644 (file)
index 0000000..36a67ea
--- /dev/null
@@ -0,0 +1,26 @@
+/* Target machine parameters for an embedded m68k, for GDB, the GNU debugger.
+   This is for object file formats that do have underlines on symbols.
+   Copyright 1992 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.  */
+
+/* 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
+
+#include "tm-68k-noun.h"
index c2f9670c514ea729dd523cd0a9853cf0c09efece..7cafe1918b49ab7f8b4a48858e1dc05cc872ca3e 100644 (file)
@@ -2,7 +2,7 @@
    The code was originally written by Johan Holmberg TT/SJ Ericsson Telecom
    AB and later modified by Johan Henriksson TT/SJ. It was adapted to GDB 4.0
    by Jan Norden TX/DK.
-   Copyright (C) 1986, 1987, 1989, 1991, 1992 Free Software Foundation, Inc.
+   Copyright 1986, 1987, 1989, 1991, 1992 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
@@ -27,6 +27,11 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* Kludge... */
 #include "tm-sun3.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) \
index a69b53e40320a112f8b81d0b2708adef1d4fd8bc..a8158d07a33dd9e3e1c19f7c161187807b76cd8f 100644 (file)
@@ -1,4 +1,5 @@
-/* Parameters for SPARC target machines, for GDB, the GNU debugger.
+/* Target machine sub-parameters for SPARC, for GDB, the GNU debugger.
+   This is included by other tm-*.h files to define SPARC cpu-related info.
    Copyright 1986, 1987, 1989, 1991, 1992 Free Software Foundation, Inc.
    Contributed by Michael Tiemann (tiemann@mcc.com)
 
@@ -23,11 +24,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* Floating point is IEEE compatible.  */
 #define IEEE_FLOAT
 
-/* 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
-
 /* When passing a structure to a function, Sun cc passes the address
    in a register, not the structure itself.  It (under SunOS4) creates
    two symbols, so we get a LOC_ARG saying the address is on the stack
diff --git a/gdb/tm-spc-noun.h b/gdb/tm-spc-noun.h
new file mode 100644 (file)
index 0000000..a77ea0a
--- /dev/null
@@ -0,0 +1,52 @@
+/* Target machine definitions for GDB for an embedded SPARC, that uses
+   a file format where symbols have no leading underscore.
+   Copyright (C) 1989, 1992 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-sparc.h"
+
+/* Arbitrary -- FIXME.  */
+
+#undef STACK_END_ADDRESS
+#define STACK_END_ADDRESS 0xf8000000
+
+/* Offsets into jmp_buf.  Not defined by Sun, but at least documented in a
+   comment in <machine/setjmp.h>! */
+
+#define JB_ELEMENT_SIZE 4      /* Size of each element in jmp_buf */
+
+#define JB_ONSSTACK 0
+#define JB_SIGMASK 1
+#define JB_SP 2
+#define JB_PC 3
+#define JB_NPC 4
+#define JB_PSR 5
+#define JB_G1 6
+#define JB_O0 7
+#define JB_WBCNT 8
+
+/* Figure out where the longjmp will land.  We expect that we have just entered
+   longjmp and haven't yet setup the stack frame, so the args are still in the
+   output regs.  %o0 (O0_REGNUM) points at 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
+get_longjmp_target PARAMS ((CORE_ADDR *));
+
+#define GET_LONGJMP_TARGET(ADDR) get_longjmp_target(ADDR)
diff --git a/gdb/tm-spc-un.h b/gdb/tm-spc-un.h
new file mode 100644 (file)
index 0000000..60821e9
--- /dev/null
@@ -0,0 +1,26 @@
+/* Target machine definitions for GDB for an embedded SPARC, that
+   uses a file format where symbols have a leading underscore.
+   Copyright (C) 1989, 1992 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-spc-noun.h"
+
+/* The C compiler puts an underscore at the front
+   of external names before giving them to the linker.  */
+
+#define NAMES_HAVE_UNDERSCORE
index 38ce53ac3b33143bacf542749cd0f25ffe66c077..84b8cc8d250384e77edd318fc0c9294edfa426b8 100644 (file)
@@ -1,5 +1,5 @@
 /* Parameters for execution on a Sun, for GDB, the GNU debugger.
-   Copyright (C) 1986, 1987, 1989, 199 Free Software Foundation, Inc.
+   Copyright (C) 1986, 1987, 1989, 1992 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
@@ -17,11 +17,6 @@ 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.  */
 
-/* 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
-
 /* Address of the end of stack space.  We get this from the system
    include files. */
 
index 42d010a19465155404dd342ecf38fbb4d7fbbce3..490fa54851814b2ac9b812e957206b46e2902e1f 100644 (file)
@@ -24,11 +24,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #define GDB_TARGET_IS_SUN3 1
 
-/* 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
-
 /* Address of the end of stack space.  We get this from the system
    include files. */
 
index 8a2324645fd4401cfbb1085cf8a740d87a14fd30..551def8df646e354a589f93fcb86851f3a13fd8e 100644 (file)
@@ -1,4 +1,6 @@
-/* Copyright (C) 1990, 1991 Free Software Foundation, Inc.
+/* Target machine sub-description for SunOS version 4.
+   This is included by other tm-*.h files to specify SunOS-specific stuff.
+   Copyright 1990, 1991, 1992 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
@@ -16,6 +18,9 @@ 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.  */
 
-/* This is for SunOS version 4, not for earlier versions.  */
+/* The C compiler puts an underscore at the front
+   of external names before giving them to the linker.  */
+
+#define NAMES_HAVE_UNDERSCORE
 
 #include "solib.h"     /* Support for shared libraries. */
index 81122fc39520bd6aa3b110d0b91f7ae593ab2752..b97c264b14c335a077e6f82c1c414bff0d9c48a7 100644 (file)
@@ -1,5 +1,5 @@
-/* Parameters for execution on VxWorks 68k's, for GDB, the GNU debugger.
-   Copyright (C) 1986, 1987, 1989, 1991 Free Software Foundation, Inc.
+/* Target machine description for VxWorks 68k's, for GDB, the GNU debugger.
+   Copyright 1986, 1987, 1989, 1991, 1992 Free Software Foundation, Inc.
    Contributed by Cygnus Support.
 
 This file is part of GDB.
@@ -25,6 +25,11 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* Kludge... */
 #include "tm-sun3.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)