From: Richard Stallman Date: Sun, 1 Dec 1991 04:57:28 +0000 (+0000) Subject: entered into RCS X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=529715bcfb34bba1691a6a5c5bf77688531be0a0;p=gcc.git entered into RCS From-SVN: r87 --- diff --git a/gcc/config/m68k/3b1g.h b/gcc/config/m68k/3b1g.h index 25cd96b6453..5f2b7d1ed71 100644 --- a/gcc/config/m68k/3b1g.h +++ b/gcc/config/m68k/3b1g.h @@ -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 index 00000000000..4e1de76fd8d --- /dev/null +++ b/gcc/config/m68k/altos3068.h @@ -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 +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 index 00000000000..edd3d040082 --- /dev/null +++ b/gcc/config/m68k/ctix.h @@ -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 index 00000000000..5ada17ccb48 --- /dev/null +++ b/gcc/config/m68k/hp310.h @@ -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 index 00000000000..3076ca8eea7 --- /dev/null +++ b/gcc/config/m68k/hp310g.h @@ -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 index 00000000000..fc22a5e7a4d --- /dev/null +++ b/gcc/config/m68k/hp320g.h @@ -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 index 00000000000..f24677b69c6 --- /dev/null +++ b/gcc/config/m68k/hp3bsd.h @@ -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