Annotation of GNUtools/cc/config/mips/osfrose.h, revision 1.1.1.1

1.1       root        1: /* Definitions of target machine for GNU compiler.
                      2:    DECstation (OSF/1 reference port with OSF/rose) version.
                      3:    Copyright (C) 1991, 1992 Free Software Foundation, Inc.
                      4: 
                      5: This file is part of GNU CC.
                      6: 
                      7: GNU CC is free software; you can redistribute it and/or modify
                      8: it under the terms of the GNU General Public License as published by
                      9: the Free Software Foundation; either version 2, or (at your option)
                     10: any later version.
                     11: 
                     12: GNU CC is distributed in the hope that it will be useful,
                     13: but WITHOUT ANY WARRANTY; without even the implied warranty of
                     14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     15: GNU General Public License for more details.
                     16: 
                     17: You should have received a copy of the GNU General Public License
                     18: along with GNU CC; see the file COPYING.  If not, write to
                     19: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
                     20: 
                     21: #define DECSTATION
                     22: #define OSF_OS
                     23: 
                     24: #define HALF_PIC_DEBUG TARGET_DEBUG_B_MODE
                     25: #define HALF_PIC_PREFIX        "$Lp."
                     26: 
                     27: #include "halfpic.h"
                     28: 
                     29: #define WORD_SWITCH_TAKES_ARG(STR)                                     \
                     30:  (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) || !strcmp (STR, "pic-names"))
                     31: 
                     32: #define CPP_PREDEFINES "\
                     33: -DOSF -DOSF1 -Dbsd4_2 -DMIPSEL -Dhost_mips -Dmips -Dunix -DR3000 -DSYSTYPE_BSD \
                     34: -Asystem(unix) -Asystem(xpg4) -Acpu(mips) -Amachine(mips)"
                     35: 
                     36: #define ASM_SPEC       "\
                     37: %{mmips-as: \
                     38:        %{pipe:%e:-pipe not supported} \
                     39:        %{EL} %{!EL:-EL} \
                     40:        %{EB: %e-EB not supported} \
                     41:        %{!mrnames: %{!.s:-nocpp} %{.s: %{cpp} %{nocpp}}} \
                     42:        %{mips1} %{mips2} %{mips3} \
                     43:        %{O:-O2} %{O1:-O2} %{O2:-O2} %{O3:-O3} \
                     44:        %{g} %{g0} %{g1} %{g2} %{g3} \
                     45:        %{K} %{Q}} \
                     46:        %{v*: -v} \
                     47:        %{G*}"
                     48: 
                     49: #ifndef CROSS_COMPILE
                     50: #define ASM_FINAL_SPEC "\
                     51: %{mmips-as: %{!mno-mips-tfile: \
                     52:        \n mips-tfile %{v*: -v} %{d*} \
                     53:                        %{K: -I %b.o~} \
                     54:                        %{!K: %{save-temps: -I %b.o~}} \
                     55:                        %{c:%W{o*}%{!o*:-o %b.o}}%{!c:-o %U.o} \
                     56:                        %{.s:%i} %{!.s:%g.s}}}"
                     57: 
                     58: #else                          /* CROSS_COMPILE */
                     59: #define ASM_FINAL_SPEC "\
                     60: %{mmips-as: %{mmips-tfile: \
                     61:        \n mips-tfile %{v*: -v} %{d*} \
                     62:                        %{K: -I %b.o~} \
                     63:                        %{!K: %{save-temps: -I %b.o~}} \
                     64:                        %{c:%W{o*}%{!o*:-o %b.o}}%{!c:-o %U.o} \
                     65:                        %{.s:%i} %{!.s:%g.s}}}"
                     66: #endif
                     67: 
                     68: #define CPP_SPEC "\
                     69: %{.S:  %{!ansi:%{!traditional:%{!traditional-cpp:%{!ftraditional: -traditional}}}}} \
                     70: %{.S:  -D__LANGUAGE_ASSEMBLY__ -D__LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY} \
                     71:        -ULANGUAGE_C -U__LANGUAGE_C__} \
                     72: %{.s:  %{!ansi:%{!traditional:%{!traditional-cpp:%{!ftraditional: -traditional}}}}} \
                     73: %{.s:  -D__LANGUAGE_ASSEMBLY__ -D__LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY} \
                     74:        -ULANGUAGE_C -U__LANGUAGE_C__} \
                     75: %{.cc: -D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS} \
                     76: %{.cxx:        -D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS} \
                     77: %{.C:  -D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS} \
                     78: %{.m:  -D__LANGUAGE_OBJECTIVE_C__ -D__LANGUAGE_OBJECTIVE_C} \
                     79: %{!.S:%{!.s:   -D__LANGUAGE_C__  -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C}}}"
                     80: 
                     81: #define LINK_SPEC "\
                     82: %{G*} \
                     83: %{mmips-as: \
                     84:        %{EL} %{!EL: -EL} \
                     85:        %{EB: %e-EB not supported} \
                     86:        %{mips1} %{mips2} %{mips3} \
                     87:        %{bestGnum}} \
                     88: %{!mmips-as: \
                     89:        %{v*: -v} \
                     90:        %{!noshrlib: %{pic-none: -noshrlib} %{!pic-none: -warn_nopic}} \
                     91:        %{nostdlib} %{noshrlib} %{glue}}"
                     92: 
                     93: #define LIB_SPEC "-lc"
                     94: 
                     95: /* Define this macro meaning that `gcc' should find the library
                     96:    `libgcc.a' by hand, rather than passing the argument `-lgcc' to
                     97:    tell the linker to do the search. */
                     98: 
                     99: #define LINK_LIBGCC_SPECIAL 1
                    100: 
                    101: #define STARTFILE_SPEC "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}"
                    102: 
                    103: #define MACHINE_TYPE "DECstation with OSF/rose objects"
                    104: 
                    105: #ifndef MD_EXEC_PREFIX
                    106: #define MD_EXEC_PREFIX         "/usr/ccs/gcc/"
                    107: #endif
                    108: 
                    109: #ifndef MD_STARTFILE_PREFIX
                    110: #define MD_STARTFILE_PREFIX    "/usr/ccs/lib/"
                    111: #endif
                    112: 
                    113: /* Turn on -mpic-extern by default.  */
                    114: #define CC1_SPEC "\
                    115: %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \
                    116: %{G*} \
                    117: %{pic-none:   -mno-half-pic} \
                    118: %{pic-lib:    -mhalf-pic} \
                    119: %{pic-extern: -mhalf-pic} \
                    120: %{pic-calls:  -mhalf-pic} \
                    121: %{pic-names*: -mhalf-pic} \
                    122: %{!pic-*:     -mhalf-pic}"
                    123: 
                    124: /* Specify size_t, ptrdiff_t, and wchar_t types.  */
                    125: #define SIZE_TYPE      "long unsigned int"
                    126: #define PTRDIFF_TYPE   "int"
                    127: #define WCHAR_TYPE     "unsigned int"
                    128: #define WCHAR_TYPE_SIZE BITS_PER_WORD
                    129: 
                    130: /* OSF/1 uses gas, not the mips assembler.  */
                    131: #define TARGET_DEFAULT MASK_GAS
                    132: 
                    133: /* OSF/rose uses stabs, not ECOFF.  */
                    134: #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
                    135: 
                    136: /* enable dwarf debugging for testing */
                    137: #define DWARF_DEBUGGING_INFO
                    138: 
                    139: /* Tell collect that the object format is OSF/rose.  */
                    140: #define OBJECT_FORMAT_ROSE
                    141: 
                    142: /* Tell collect where the appropriate binaries are.  */
                    143: #define REAL_LD_FILE_NAME      "/usr/ccs/gcc/gld"
                    144: #define REAL_NM_FILE_NAME      "/usr/ccs/bin/nm"
                    145: #define REAL_STRIP_FILE_NAME   "/usr/ccs/bin/strip"
                    146: 
                    147: /* Default to -G 0 unless doing ecoff work.  */
                    148: #define MIPS_DEFAULT_GVALUE ((TARGET_MIPS_AS) ? 8 : 0)
                    149: 
                    150: /* Use atexit for static constructors/destructors, instead of defining
                    151:    our own exit function.  */
                    152: #define HAVE_ATEXIT
                    153: 
                    154: /* Generate calls to memcpy, etc., not bcopy, etc.  */
                    155: #define TARGET_MEM_FUNCTIONS
                    156: 
                    157: /* A C statement to output assembler commands which will identify
                    158:    the object file as having been compiled with GNU CC (or another
                    159:    GNU compiler).
                    160: 
                    161:    If you don't define this macro, the string `gcc2_compiled.:' is
                    162:    output.  This string is calculated to define a symbol which, on
                    163:    BSD systems, will never be defined for any other reason.  GDB
                    164:    checks for the presence of this symbol when reading the symbol
                    165:    table of an executable.
                    166: 
                    167:    On non-BSD systems, you must arrange communication with GDB in
                    168:    some other fashion.  If GDB is not used on your system, you can
                    169:    define this macro with an empty body.
                    170: 
                    171:    On OSF/1, gcc2_compiled. confuses the kernel debugger, so don't
                    172:    put it out.  */
                    173: 
                    174: #define ASM_IDENTIFY_GCC(STREAM)
                    175: 
                    176: /* Identify the front-end which produced this file.  To keep symbol
                    177:    space down, and not confuse kdb, only do this if the language is
                    178:    not C.  */
                    179: 
                    180: #define ASM_IDENTIFY_LANGUAGE(STREAM)                                  \
                    181: {                                                                      \
                    182:   if (strcmp (lang_identify (), "c") != 0)                             \
                    183:     output_lang_identify (STREAM);                                     \
                    184: }
                    185: 
                    186: #include "mips/mips.h"

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.