entered into RCS
authorRichard Stallman <rms@gnu.org>
Sun, 1 Dec 1991 04:57:28 +0000 (04:57 +0000)
committerRichard Stallman <rms@gnu.org>
Sun, 1 Dec 1991 04:57:28 +0000 (04:57 +0000)
From-SVN: r87

gcc/config/m68k/3b1g.h
gcc/config/m68k/altos3068.h [new file with mode: 0644]
gcc/config/m68k/ctix.h [new file with mode: 0644]
gcc/config/m68k/hp310.h [new file with mode: 0644]
gcc/config/m68k/hp310g.h [new file with mode: 0644]
gcc/config/m68k/hp320g.h [new file with mode: 0644]
gcc/config/m68k/hp3bsd.h [new file with mode: 0644]

index 25cd96b64535e9c2e221ea2e1eb4ab5d35127ce0..5f2b7d1ed71501e787e2c64ad76febe081ea2f28 100644 (file)
@@ -17,9 +17,9 @@ You should have received a copy of the GNU General Public License
 along with GNU CC; see the file COPYING.  If not, write to
 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
-#include "tm-m68k.h"
+#include "m68k.h"
 
-/* See tm-m68k.h.  0 means 68000 with no 68881.  */
+/* See m68k.h.  0 means 68000 with no 68881.  */
 #define TARGET_DEFAULT 0
 
 /* Define __HAVE_68881 in preprocessor only if -m68881 is specified.
diff --git a/gcc/config/m68k/altos3068.h b/gcc/config/m68k/altos3068.h
new file mode 100644 (file)
index 0000000..4e1de76
--- /dev/null
@@ -0,0 +1,107 @@
+/* Definitions of target machine for GNU compiler.  Altos 3068 68020 version.
+   Copyright (C) 1988,1989 Free Software Foundation, Inc.
+
+Written by Jyrki Kuoppala <jkp@cs.hut.fi>
+Last modified: Mon Mar  6 22:47:58 1989
+
+This file is part of GNU CC.
+
+GNU CC 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, or (at your option)
+any later version.
+
+GNU CC 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 GNU CC; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+
+#include "m68k.h"
+
+/* See m68k.h.  7 means 68020 with 68881.  */
+/* 5 is without 68881.  Change to 7 if you have 68881 */
+
+#ifndef TARGET_DEFAULT
+#define TARGET_DEFAULT 5
+#endif
+
+/* Define __HAVE_68881__ in preprocessor,
+   according to the -m flags.
+   This will control the use of inline 68881 insns in certain macros.
+   Also inform the program which CPU this is for.  */
+
+#if TARGET_DEFAULT & 02
+
+/* -m68881 is the default */
+#define CPP_SPEC \
+"%{!msoft-float:-D__HAVE_68881__ }\
+%{!ansi:%{m68000:-Dmc68010}%{mc68000:-Dmc68010}%{!mc68000:%{!m68000:-Dmc68020}}}"
+
+#else
+
+/* -msoft-float is the default */
+#define CPP_SPEC \
+"%{m68881:-D__HAVE_68881__ }\
+%{!ansi:%{m68000:-Dmc68010}%{mc68000:-Dmc68010}%{!mc68000:%{!m68000:-Dmc68020}}}"
+
+#endif
+
+/* -m68000 requires special flags to the assembler.  */
+
+#define ASM_SPEC \
+ "%{m68000:-mc68010}%{mc68000:-mc68010}%{!mc68000:%{!m68000:-mc68020}}"
+
+/* Names to predefine in the preprocessor for this target machine.  */
+
+#define CPP_PREDEFINES "-Dmc68000 -DPORTAR -Dmc68k32 -Uvax -Dm68k -Dunix"
+
+/* Every structure or union's size must be a multiple of 2 bytes.  */
+
+#define STRUCTURE_SIZE_BOUNDARY 16
+
+/* Generate calls to memcpy, memcmp and memset.  */
+#define TARGET_MEM_FUNCTIONS
+
+/* We use gnu assembler, linker and gdb, so we want DBX format.  */
+
+#define DBX_DEBUGGING_INFO
+
+/* Tell some conditionals we will use GAS.  Is this really used?  */
+
+#define USE_GAS
+
+/* This is how to output an assembler line defining a `double' constant.  */
+
+#undef ASM_OUTPUT_DOUBLE
+#define ASM_OUTPUT_DOUBLE(FILE,VALUE)                    \
+     fprintf (FILE, "\t.double 0r%.20e\n", (VALUE))
+
+/* This is how to output an assembler line defining a `float' constant.  */
+
+#undef ASM_OUTPUT_FLOAT
+#define ASM_OUTPUT_FLOAT(FILE,VALUE)                    \
+     fprintf (FILE, "\t.single 0r%.20e\n", (VALUE))
+
+#undef ASM_OUTPUT_FLOAT_OPERAND
+#define ASM_OUTPUT_FLOAT_OPERAND(FILE,VALUE)                \
+     fprintf (FILE, "#0r%.9g", (VALUE))
+
+#undef ASM_OUTPUT_DOUBLE_OPERAND
+#define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)                \
+     fprintf (FILE, "#0r%.20g", (VALUE))
+
+/* Return pointer values in both d0 and a0.  */
+
+#undef FUNCTION_EXTRA_EPILOGUE
+#define FUNCTION_EXTRA_EPILOGUE(FILE, SIZE)                    \
+{                                                              \
+  extern int current_function_returns_pointer;                 \
+  if ((current_function_returns_pointer) &&                    \
+      ! find_equiv_reg (0, get_last_insn (), 0, 0, 0, 8, Pmode))\
+    fprintf (FILE, "\tmovel d0,a0\n");                         \
+}
diff --git a/gcc/config/m68k/ctix.h b/gcc/config/m68k/ctix.h
new file mode 100644 (file)
index 0000000..edd3d04
--- /dev/null
@@ -0,0 +1,47 @@
+/* Definitions of target machine for GNU compiler.
+   Convergent Technologies MiniFrame version,
+   using GAS and binutils with COFF encapsulation.
+
+   Written by Ronald Cole
+
+   Because the MiniFrame's C compiler is so completely lobotomized,
+   bootstrapping this is damn near impossible!
+   Write to me for information on obtaining the binaries...
+
+   bug reports to csusac!unify!rjc@ucdavis.edu
+
+   Copyright (C) 1990 Free Software Foundation, Inc.
+
+This file is part of GNU CC.
+
+GNU CC 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, or (at your option)
+any later version.
+
+GNU CC 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 GNU CC; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#include "3b1g.h"
+
+/* Names to predefine in the preprocessor for this target machine.  */
+#undef CPP_PREDEFINES
+#define CPP_PREDEFINES "-Dmc68000 -Dmc68k -Dunix -Dctix"
+
+/* Where to look for robotussinized startfiles.  */
+#undef STANDARD_STARTFILE_PREFIX
+#define STANDARD_STARTFILE_PREFIX "/usr/local/lib/gnu/"
+
+/* Generate calls to the MiniFrame's library (for speed).  */
+#define DIVSI3_LIBCALL "ldiv"
+#define UDIVSI3_LIBCALL "uldiv"
+#define MODSI3_LIBCALL "lrem"
+#define UMODSI3_LIBCALL "ulrem"
+#define MULSI3_LIBCALL "lmul"
+#define UMULSI3_LIBCALL "ulmul"
diff --git a/gcc/config/m68k/hp310.h b/gcc/config/m68k/hp310.h
new file mode 100644 (file)
index 0000000..5ada17c
--- /dev/null
@@ -0,0 +1,32 @@
+/* Definitions of target machine for GNU compiler.  HP-UX 68010 version.  */
+
+/* See m68k.h.  0 means 68000 without 68881 and no bitfields.   */
+#define        TARGET_DEFAULT 0
+
+#include "hp320.h"
+
+#undef CPP_SPEC
+#undef ASM_SPEC
+
+/* HP does not support a 68020 without a 68881 or a 68010 with a 68881.
+   However, -m68020 does not imply -m68881.  You must specify both
+   if you want both.  */
+
+#ifdef HPUX_ASM
+
+#define CPP_SPEC "-D__HPUX_ASM__ %{m68881: -D__HAVE_68881__}\
+%{m68020: -Dmc68020}%{mc68020: -Dmc68020}\
+%{!traditional:-D_INCLUDE__STDC__}"
+
+#define ASM_SPEC "%{!m68020:%{!mc68020:+X}}"
+
+#else  /* not HPUX_ASM */
+
+#define CPP_SPEC "%{m68881: -D__HAVE_68881__}\
+%{m68020: -Dmc68020}%{mc68020: -Dmc68020}\
+%{!traditional:-D_INCLUDE__STDC__}"
+
+#define ASM_SPEC \
+ "%{m68000:-mc68000}%{mc68000:-mc68000}%{!mc68000:%{!m68000:-mc68020}}"
+
+#endif /* not HPUX_ASM */
diff --git a/gcc/config/m68k/hp310g.h b/gcc/config/m68k/hp310g.h
new file mode 100644 (file)
index 0000000..3076ca8
--- /dev/null
@@ -0,0 +1,12 @@
+/* Definitions of target machine for GNU compiler.  HP-UX 68010 version.
+   Use this file if GCC is supposed to work with the GNU assembler,
+   GNU linker and GNU debugger using DBX debugging information.
+   (In other words, much of HPUX has been cast aside.)  */
+
+/* This wants DBX format.  */
+
+#define DBX_DEBUGGING_INFO
+
+#define USE_GAS
+
+#include "hp310.h"
diff --git a/gcc/config/m68k/hp320g.h b/gcc/config/m68k/hp320g.h
new file mode 100644 (file)
index 0000000..fc22a5e
--- /dev/null
@@ -0,0 +1,12 @@
+/* Definitions of target machine for GNU compiler.  HP-UX 68000/68020 version.
+   Use this file if GCC is supposed to work with the GNU assembler,
+   GNU linker and GNU debugger using DBX debugging information.
+   (In other words, much of HPUX has been cast aside.)  */
+
+/* This wants DBX format.  */
+
+#define DBX_DEBUGGING_INFO
+
+#define USE_GAS
+
+#include "hp320.h"
diff --git a/gcc/config/m68k/hp3bsd.h b/gcc/config/m68k/hp3bsd.h
new file mode 100644 (file)
index 0000000..f24677b
--- /dev/null
@@ -0,0 +1,40 @@
+#include "m68k.h"
+
+/* See m68k.h.  7 means 68020 with 68881.  */
+
+#define TARGET_DEFAULT 7
+
+/* Define __HAVE_68881__ in preprocessor, unless -msoft-float is specified.
+   This will control the use of inline 68881 insns in certain macros.  */
+
+#define CPP_SPEC "%{!msoft-float:-D__HAVE_68881__ -D__HAVE_FPU__}"
+
+/* Names to predefine in the preprocessor for this target machine.  */
+
+#define CPP_PREDEFINES "-Dmc68000 -Dmc68020 -Dhp300 -Dhp9000 -Dunix"
+
+/* Link with libg.a when debugging, for dbx's sake.  */
+
+#define LIB_SPEC "%{g:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p} "
+
+/* Every structure or union's size must be a multiple of 2 bytes.  */
+
+#define STRUCTURE_SIZE_BOUNDARY 16
+
+/* This is BSD, so it wants DBX format.  */
+
+#define DBX_DEBUGGING_INFO
+
+/* Do not break .stabs pseudos into continuations.  */
+
+#define DBX_CONTIN_LENGTH 0
+
+/* This is the char to use for continuation (in case we need to turn
+   continuation back on).  */
+
+#define DBX_CONTIN_CHAR '?'
+
+/* Don't use the `xsfoo;' construct in DBX output; this system
+   doesn't support it.  */
+
+#define DBX_NO_XREFS