Annotation of gcc/config/m68k/tower.h, revision 1.1.1.4

1.1       root        1: /* Definitions of target machine for GNU compiler.
1.1.1.3   root        2:    Copyright (C) 1990, 1994 Free Software Foundation, Inc.
1.1       root        3: 
                      4:    Written by Robert Andersson, International Systems, Oslo, Norway.
                      5:    Please send bug reports, questions and improvements to [email protected].
                      6: 
                      7:    For NCR Tower 32/4x0 and 32/6x0 running System V Release 3.
                      8:    I don't have access to 200/700/800/850 machines, so I don't know if it
                      9:    works on those as well.  It shouldn't be far from it however.
                     10:    The hardware floating point support is completely untested, as I do
                     11:    not have access to a machine with a 6888x FPU in it.
                     12:    It does not work on the System V Release 2 based OS releases.  Making it
                     13:    work will not be easy, due to the silly way in which stack expansion is
                     14:    implemented in the OS.
                     15: 
                     16:    This file is included in tower-as.h.
                     17:    Do *NOT* include this file directly.
                     18: 
                     19: 
                     20: This file is part of GNU CC.
                     21: 
                     22: GNU CC is free software; you can redistribute it and/or modify
                     23: it under the terms of the GNU General Public License as published by
                     24: the Free Software Foundation; either version 2, or (at your option)
                     25: any later version.
                     26: 
                     27: GNU CC is distributed in the hope that it will be useful,
                     28: but WITHOUT ANY WARRANTY; without even the implied warranty of
                     29: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     30: GNU General Public License for more details.
                     31: 
                     32: You should have received a copy of the GNU General Public License
                     33: along with GNU CC; see the file COPYING.  If not, write to
1.1.1.4 ! root       34: the Free Software Foundation, 59 Temple Place - Suite 330,
        !            35: Boston, MA 02111-1307, USA.  */
1.1       root       36: 
                     37: 
                     38: #include "m68k/m68k.h"
                     39: 
                     40: 
                     41: /* See m68k.h.  5 means 68020 with no 68881.  */
                     42: 
                     43: #define TARGET_DEFAULT 5
                     44: 
                     45: /* Don't try using XFmode.  */
                     46: #undef LONG_DOUBLE_TYPE_SIZE
                     47: #define LONG_DOUBLE_TYPE_SIZE 64
                     48: 
                     49: /* Names to predefine in the preprocessor for this target machine.  */
                     50: 
1.1.1.2   root       51: #define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_200 -Asystem(unix) -Asystem(svr3) -Acpu(m68k) -Amachine(m68k)"
1.1       root       52: 
                     53: #if 0  /* It is incorrect to test these symbols.
                     54:          They describe the host, not the target.
                     55:          It should not matter which model is specified.  */
                     56: #ifdef tower32_600
1.1.1.2   root       57: #define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_600 -Asystem(unix) -Asystem(svr3) -Acpu(m68k) -Amachine(m68k)"
1.1       root       58: #endif
                     59: #ifdef tower32_700
1.1.1.2   root       60: #define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_700 -Asystem(unix) -Asystem(svr3) -Acpu(m68k) -Amachine(m68k)"
1.1       root       61: #endif
                     62: #ifdef tower32_800
1.1.1.2   root       63: #define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_800 -Asystem(unix) -Asystem(svr3) -Acpu(m68k) -Amachine(m68k)"
1.1       root       64: #endif
                     65: #ifdef tower32_850
1.1.1.2   root       66: #define CPP_PREDEFINES "-Dunix -Dtower32 -Dtower32_850 -Asystem(unix) -Asystem(svr3) -Acpu(m68k) -Amachine(m68k)"
1.1       root       67: #endif
                     68: #endif
                     69: 
                     70: /* The startfiles and libraries depend on the -p and -m68881 options.
                     71:    The Tower does not support the -pg option.  */
                     72: 
                     73: #define LINK_SPEC                                              \
                     74: "%{p:%{m68881:-L/usr/lib/fp/libp} -L/usr/lib/libp}             \
                     75:  %{m68881:-L/usr/lib/fp}"
                     76: 
                     77: #define LIB_SPEC \
                     78: "%{shlib:-lc_s} -lc crtend.o%s crtn.o%s"
                     79: 
                     80: #define STARTFILE_SPEC \
                     81: "%{p:mcrt1.o%s} %{!p:crt1.o%s} crtbegin.o%s"
                     82: 
                     83: /* Use mem* functions, recognize #ident lines.  */
                     84: 
                     85: #define TARGET_MEM_FUNCTIONS
                     86: #define IDENT_DIRECTIVE
                     87: 
                     88: /* Every structure and union's size must be a multiple of two bytes.  */
                     89: 
                     90: #define STRUCTURE_SIZE_BOUNDARY 16
                     91: 
                     92: /* All register names should have a leading % character.  */
                     93: 
                     94: #undef REGISTER_NAMES
                     95: #define REGISTER_NAMES \
                     96: {"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7",                      \
                     97:  "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%a6", "%sp",                      \
                     98:  "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7"};
                     99: 
1.1.1.3   root      100: #undef REGISTER_PREFIX
                    101: #define REGISTER_PREFIX "%"
                    102: 
                    103: #undef IMMEDIATE_PREFIX
1.1.1.4 ! root      104: #define IMMEDIATE_PREFIX "&"
1.1.1.3   root      105: 
1.1       root      106: /* We do not want leading underscores.  */
                    107: 
                    108: #undef ASM_OUTPUT_LABELREF
                    109: #define ASM_OUTPUT_LABELREF(FILE,NAME)  \
                    110:   fprintf (FILE, "%s", NAME)

unix.superglobalmegacorp.com

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