|
|
1.1 ! root 1: /* Definitions of target machine for GNU compiler. ARM RISCiX 1.1x version. ! 2: Copyright (C) 1993 Free Software Foundation, Inc. ! 3: Contributed by Richard Earnshaw ([email protected]), based on original ! 4: work by Pieter `Tiggr' Schoenmakers ([email protected]) ! 5: and Martin Simmons (@harleqn.co.uk). ! 6: ! 7: This file is part of GNU CC. ! 8: ! 9: GNU CC is free software; you can redistribute it and/or modify ! 10: it under the terms of the GNU General Public License as published by ! 11: the Free Software Foundation; either version 2, or (at your option) ! 12: any later version. ! 13: ! 14: GNU CC is distributed in the hope that it will be useful, ! 15: but WITHOUT ANY WARRANTY; without even the implied warranty of ! 16: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! 17: GNU General Public License for more details. ! 18: ! 19: You should have received a copy of the GNU General Public License ! 20: along with GNU CC; see the file COPYING. If not, write to ! 21: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ ! 22: ! 23: /* RISCix 1.1x is basically the same as 1.2x except that it doesn't have ! 24: symrename or atexit. */ ! 25: ! 26: /* Translation to find startup files. On RISCiX boxes, gcrt0.o is in ! 27: /usr/lib. */ ! 28: #define STARTFILE_SPEC \ ! 29: "%{pg:/usr/lib/gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}" ! 30: ! 31: #ifndef CPP_PREDEFINES ! 32: #define CPP_PREDEFINES "-Darm -Driscix -Dunix -Asystem(unix) -Acpu(arm) -Amachine(arm)" ! 33: #endif ! 34: ! 35: #ifndef CPP_SPEC ! 36: #define CPP_SPEC "%{m6:-D__arm6__} %{!ansi: -D_BSD_C}" ! 37: #endif ! 38: ! 39: /* Riscix 1.1 doesn't have X/OPEN support, so only accept -mbsd (but ignore ! 40: it). ! 41: By not having -mxopen and -mno-symrename, we get warning messages, ! 42: but everything still compiles. */ ! 43: /* None of these is actually used in cc1, so they modify bit 31 */ ! 44: #define ARM_EXTRA_TARGET_SWITCHES \ ! 45: {"bsd", 0x80000000}, ! 46: ! 47: ! 48: ! 49: /* Run-time Target Specification. */ ! 50: #define TARGET_VERSION \ ! 51: fputs (" (ARM/RISCiX)", stderr); ! 52: ! 53: /* This is used in ASM_FILE_START */ ! 54: #define ARM_OS_NAME "RISCiX" ! 55: ! 56: #ifdef riscos ! 57: #define TARGET_WHEN_DEBUGGING 3 ! 58: #else ! 59: #define TARGET_WHEN_DEBUGGING 1 ! 60: #endif ! 61: ! 62: /* 'char' is signed by default on RISCiX, unsigned on RISCOS. */ ! 63: #ifdef riscos ! 64: #define DEFAULT_SIGNED_CHAR 0 ! 65: #else ! 66: #define DEFAULT_SIGNED_CHAR 1 ! 67: #endif ! 68: ! 69: /* Define this if the target system supports the function atexit form the ! 70: ANSI C standard. If this is not defined, and INIT_SECTION_ASM_OP is not ! 71: defined, a default exit function will be provided to support C++. ! 72: The man page only describes on_exit, but atexit is also there. ! 73: This seems to be missing in early versions. */ ! 74: /*#define HAVE_ATEXIT 1 */ ! 75: /* Some systems use __main in a way incompatible with its use in gcc, in these ! 76: cases use the macros NAME__MAIN to give a quoted symbol and SYMBOL__MAIN to ! 77: give the same symbol without quotes for an alternative entry point. You ! 78: must define both, or niether. */ ! 79: #ifndef NAME__MAIN ! 80: #define NAME__MAIN "__gccmain" ! 81: #define SYMBOL__MAIN __gccmain ! 82: #endif ! 83: ! 84: #include "arm/arm.h" ! 85: ! 86: /* The native RISCiX assembler does not support stabs of any kind; because ! 87: the native assembler is not used by the compiler, Acorn didn't feel it was ! 88: necessary to put them in! */ ! 89: ! 90: #ifdef DBX_DEBUGGING_INFO ! 91: #undef DBX_DEBUGGING_INFO ! 92: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.