Initial revision
From-SVN: r90
This commit is contained in:
parent
94160706d8
commit
d80ffa4333
5 changed files with 283 additions and 0 deletions
5
gcc/config/i860/bsd.h
Normal file
5
gcc/config/i860/bsd.h
Normal file
|
@ -0,0 +1,5 @@
|
|||
#include "i860.h"
|
||||
|
||||
/* BSD UN*X systems use BSD STABS debugging info. */
|
||||
|
||||
#define DBX_DEBUGGING_INFO
|
103
gcc/config/m68k/tower.h
Normal file
103
gcc/config/m68k/tower.h
Normal file
|
@ -0,0 +1,103 @@
|
|||
/* Definitions of target machine for GNU compiler.
|
||||
Copyright (C) 1990 Free Software Foundation, Inc.
|
||||
|
||||
Written by Robert Andersson, International Systems, Oslo, Norway.
|
||||
Please send bug reports, questions and improvements to ra@intsys.no.
|
||||
|
||||
For NCR Tower 32/4x0 and 32/6x0 running System V Release 3.
|
||||
I don't have access to 200/700/800/850 machines, so I don't know if it
|
||||
works on those as well. It shouldn't be far from it however.
|
||||
The hardware floating point support is completely untested, as I do
|
||||
not have access to a machine with a 6888x FPU in it.
|
||||
It does not work on the System V Release 2 based OS releases. Making it
|
||||
work will not be easy, due to the silly way in which stack expansion is
|
||||
implemented in the OS.
|
||||
|
||||
This file is included in tower-as.h.
|
||||
Do *NOT* include this file directly.
|
||||
|
||||
|
||||
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. 5 means 68020 with no 68881. */
|
||||
|
||||
#define TARGET_DEFAULT 5
|
||||
|
||||
/* Names to predefine in the preprocessor for this target machine. */
|
||||
|
||||
#define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_200"
|
||||
|
||||
#if 0 /* It is incorrect to test these symbols.
|
||||
They describe the host, not the target.
|
||||
It should not matter which model is specified. */
|
||||
#ifdef tower32_600
|
||||
#define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_600"
|
||||
#endif
|
||||
#ifdef tower32_700
|
||||
#define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_700"
|
||||
#endif
|
||||
#ifdef tower32_800
|
||||
#define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_800"
|
||||
#endif
|
||||
#ifdef tower32_850
|
||||
#define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_850"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* The startfiles and libraries depend on the -p and -m68881 options.
|
||||
The Tower does not support the -pg option. */
|
||||
|
||||
#define LINK_SPEC \
|
||||
"%{p:%{m68881:-L/usr/lib/fp/libp} -L/usr/lib/libp} \
|
||||
%{m68881:-L/usr/lib/fp}"
|
||||
|
||||
#define LIB_SPEC "-lc %{m68881:/usr/lib/fp/crtn.o}%{!m68881:/lib/crtn.o}"
|
||||
|
||||
/* Use mem* functions, recognize #ident lines. */
|
||||
|
||||
#define TARGET_MEM_FUNCTIONS
|
||||
#define IDENT_DIRECTIVE
|
||||
|
||||
/* This is only used in g++, don't prepend underscore. */
|
||||
|
||||
#define NO_UNDERSCORES
|
||||
|
||||
/* Every structure and union's size must be a multiple of two bytes. */
|
||||
|
||||
#define STRUCTURE_SIZE_BOUNDARY 16
|
||||
|
||||
/* All register names should have a leading % character. */
|
||||
|
||||
#undef REGISTER_NAMES
|
||||
#define REGISTER_NAMES \
|
||||
{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
|
||||
"%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%a6", "%sp", \
|
||||
"%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", \
|
||||
"%fpa0", "%fpa1", "%fpa2", "%fpa3", "%fpa4", "%fpa5", "%fpa6", "%fpa7", \
|
||||
"%fpa8", "%fpa9", "%fpa10", "%fpa11", "%fpa12", "%fpa13", "%fpa14", "%fpa15",\
|
||||
"%fpa16","%fpa17", "%fpa18", "%fpa19", "%fpa20", "%fpa21", "%fpa22","%fpa23",\
|
||||
"%fpa24","%fpa25", "%fpa26", "%fpa27", "%fpa28", "%fpa29", "%fpa30","%fpa31"}
|
||||
|
||||
/* We do not want leading underscores. */
|
||||
|
||||
#undef ASM_OUTPUT_LABELREF
|
||||
#define ASM_OUTPUT_LABELREF(FILE,NAME) \
|
||||
fprintf (FILE, "%s", NAME)
|
46
gcc/config/m88k/luna.h
Normal file
46
gcc/config/m88k/luna.h
Normal file
|
@ -0,0 +1,46 @@
|
|||
/* Definitions of target machine for GNU compiler.
|
||||
Motorola m88100 running Omron Luna/88k.
|
||||
Copyright (C) 1991 Free Software Foundation, Inc.
|
||||
Contributed by Jeffery Friedl (jfriedl@omron.co.jp)
|
||||
Currently supported by Tom Wood (wood@dg-rtp.dg.com)
|
||||
|
||||
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. */
|
||||
|
||||
/* The Omron Luna/88k is MACH and uses BSD a.out, not COFF or ELF. */
|
||||
#ifndef MACH
|
||||
#define MACH
|
||||
#endif
|
||||
#define DBX_DEBUGGING_INFO
|
||||
|
||||
#include "m88k.h"
|
||||
|
||||
/* Identify the compiler. */
|
||||
#undef VERSION_INFO1
|
||||
#define VERSION_INFO1 "Omron Luna/88k, "
|
||||
|
||||
/* Macros to be automatically defined. */
|
||||
#undef CPP_PREDEFINES
|
||||
#define CPP_PREDEFINES \
|
||||
"-DMACH -Dmc88100 -Dm88k -Dunix -Dluna -Dluna88k -D__CLASSIFY_TYPE__=2"
|
||||
|
||||
/* Specify extra dir to search for include files. */
|
||||
#undef SYSTEM_INCLUDE_DIR
|
||||
#define SYSTEM_INCLUDE_DIR "/usr/mach/include"
|
||||
|
||||
/* For the Omron Luna/88k, a float function returns a double in traditional
|
||||
mode (and a float in ansi mode). */
|
||||
#undef TRADITIONAL_RETURN_FLOAT
|
114
gcc/config/ns32k/sequent.h
Normal file
114
gcc/config/ns32k/sequent.h
Normal file
|
@ -0,0 +1,114 @@
|
|||
/* Definitions of target machine for GNU compiler. SEQUENT NS32000 version.
|
||||
Copyright (C) 1987 Free Software Foundation, Inc.
|
||||
Contributed by Michael Tiemann (tiemann@mcc.com)
|
||||
|
||||
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. */
|
||||
|
||||
/* Two flags to control how addresses are printed in assembler insns. */
|
||||
#define SEQUENT_ADDRESS_BUG 1
|
||||
#define SEQUENT_BASE_REGS
|
||||
|
||||
#include "ns32k.h"
|
||||
|
||||
/* This is BSD, so it wants DBX format. */
|
||||
#define DBX_DEBUGGING_INFO
|
||||
|
||||
/* Sequent has some changes in the format of DBX symbols. */
|
||||
#define DBX_NO_XREFS 1
|
||||
|
||||
/* Don't split DBX symbols into continuations. */
|
||||
#define DBX_CONTIN_LENGTH 0
|
||||
|
||||
#define TARGET_DEFAULT 9 /* 32332 with 32081 (guessing) */
|
||||
|
||||
/* Print subsidiary information on the compiler version in use. */
|
||||
#undef TARGET_VERSION
|
||||
#define TARGET_VERSION fprintf (stderr, " (32000, Sequent syntax)");
|
||||
|
||||
#undef CPP_PREDEFINES
|
||||
#define CPP_PREDEFINES "-Dns32000 -Dsequent -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} "
|
||||
|
||||
/* This is how to align the code that follows an unconditional branch.
|
||||
Don't define it, since it confuses the assembler (we hear). */
|
||||
|
||||
#undef ASM_OUTPUT_ALIGN_CODE
|
||||
|
||||
/* Assember pseudo-op for shared data segment. */
|
||||
#define SHARED_SECTION_ASM_OP ".shdata"
|
||||
|
||||
/* Control how stack adjust insns are output. */
|
||||
#define SEQUENT_ADJUST_STACK
|
||||
|
||||
/* %$ means print the prefix for an immediate operand.
|
||||
On the sequent, no prefix is used for such. */
|
||||
|
||||
#undef PRINT_OPERAND
|
||||
#define PRINT_OPERAND(FILE, X, CODE) \
|
||||
{ if (CODE == '$') ; \
|
||||
else if (CODE == '?'); \
|
||||
else if (GET_CODE (X) == REG) \
|
||||
fprintf (FILE, "%s", reg_names[REGNO (X)]); \
|
||||
else if (GET_CODE (X) == MEM) \
|
||||
{ \
|
||||
rtx xfoo; \
|
||||
xfoo = XEXP (X, 0); \
|
||||
switch (GET_CODE (xfoo)) \
|
||||
{ \
|
||||
case MEM: \
|
||||
if (GET_CODE (XEXP (xfoo, 0)) == REG) \
|
||||
if (REGNO (XEXP (xfoo, 0)) == STACK_POINTER_REGNUM) \
|
||||
fprintf (FILE, "0(0(sp))"); \
|
||||
else fprintf (FILE, "0(0(%s))", \
|
||||
reg_names[REGNO (XEXP (xfoo, 0))]); \
|
||||
else \
|
||||
{ \
|
||||
fprintf (FILE, "0("); \
|
||||
output_address (xfoo); \
|
||||
putc (')', FILE); \
|
||||
} \
|
||||
break; \
|
||||
case REG: \
|
||||
fprintf (FILE, "0(%s)", reg_names[REGNO (xfoo)]); \
|
||||
break; \
|
||||
case PRE_DEC: \
|
||||
case POST_INC: \
|
||||
fprintf (FILE, "tos"); \
|
||||
break; \
|
||||
case CONST_INT: \
|
||||
fprintf (FILE, "@%d", INTVAL (xfoo)); \
|
||||
break; \
|
||||
default: \
|
||||
output_address (xfoo); \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
else if (GET_CODE (X) == CONST_DOUBLE && GET_MODE (X) != DImode) \
|
||||
if (GET_MODE (X) == DFmode) \
|
||||
{ union { double d; int i[2]; } u; \
|
||||
u.i[0] = CONST_DOUBLE_LOW (X); u.i[1] = CONST_DOUBLE_HIGH (X); \
|
||||
fprintf (FILE, "0d%.20e", u.d); } \
|
||||
else { union { double d; int i[2]; } u; \
|
||||
u.i[0] = CONST_DOUBLE_LOW (X); u.i[1] = CONST_DOUBLE_HIGH (X); \
|
||||
fprintf (FILE, "0f%.20e", u.d); } \
|
||||
else output_addr_const (FILE, X); }
|
||||
|
||||
#undef PRINT_OPERAND_ADDRESS
|
||||
#define PRINT_OPERAND_ADDRESS(FILE, ADDR) print_operand_address(FILE, ADDR)
|
15
gcc/config/sparc/sun4o3.h
Normal file
15
gcc/config/sparc/sun4o3.h
Normal file
|
@ -0,0 +1,15 @@
|
|||
#include "sparc.h"
|
||||
|
||||
/* Define the Sun-asm flag, which is necessary for Sun 4 with os version 3. */
|
||||
#undef TARGET_DEFAULT
|
||||
#define TARGET_DEFAULT 7
|
||||
|
||||
#undef FUNCTION_PROFILER
|
||||
#define FUNCTION_PROFILER(FILE, LABELNO) \
|
||||
fprintf (FILE, "\tsethi %%hi(LP%d),%%o0\n\tcall .mcount\n\tor %%lo(LP%d),%%o0,%%o0\n", \
|
||||
(LABELNO), (LABELNO))
|
||||
|
||||
/* LINK_SPEC is needed only for Sunos 4. */
|
||||
|
||||
#undef LINK_SPEC
|
||||
|
Loading…
Add table
Reference in a new issue