Annotation of gcc/config/m68k/ccur-GAS.h, revision 1.1

1.1     ! root        1: /* Definitions of target machine for GNU compiler.  Concurrent 68k version.
        !             2:    Copyright (C) 1987, 1988 Free Software Foundation, Inc.
        !             3: 
        !             4: This file is part of GNU CC.
        !             5: 
        !             6: GNU CC is free software; you can redistribute it and/or modify
        !             7: it under the terms of the GNU General Public License as published by
        !             8: the Free Software Foundation; either version 1, or (at your option)
        !             9: any later version.
        !            10: 
        !            11: GNU CC is distributed in the hope that it will be useful,
        !            12: but WITHOUT ANY WARRANTY; without even the implied warranty of
        !            13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        !            14: GNU General Public License for more details.
        !            15: 
        !            16: You should have received a copy of the GNU General Public License
        !            17: along with GNU CC; see the file COPYING.  If not, write to
        !            18: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
        !            19: 
        !            20: #ifndef MASSCOMP
        !            21: #define MASSCOMP
        !            22: #endif
        !            23: 
        !            24: #ifndef CONCURRENT
        !            25: #define CONCURRENT
        !            26: #endif
        !            27: 
        !            28: #ifndef __mc68000__
        !            29: #define __mc68000__
        !            30: #endif
        !            31: 
        !            32: #ifndef __mc68020__
        !            33: #define __mc68020__
        !            34: #endif
        !            35: 
        !            36: #define USE_GAS
        !            37: #define MOVE_RATIO 100
        !            38: 
        !            39: #define SPACE_AFTER_L_OPTION
        !            40: #define SWITCHES_NEED_SPACES " "
        !            41: 
        !            42: #define TARGET_DEFAULT 0407 /* See m68k.h.  7 means 68020 with 68881.  */
        !            43: 
        !            44: #include "m68k/m68k.h"
        !            45: 
        !            46: #define SIZE_TYPE "int"
        !            47: 
        !            48: /* for 68k machines this only needs to be TRUE for the 68000 */
        !            49: 
        !            50: #undef STRICT_ALIGNMENT     
        !            51: #define STRICT_ALIGNMENT 0
        !            52: 
        !            53: /* Names to predefine in the preprocessor for this target machine.  */
        !            54: #define CPP_PREDEFINES \
        !            55:     "-Dmc68000 -Dmasscomp -DMASSCOMP -Dunix -DLANGUAGE_C -Dconcurrent -DCONCURRENT"
        !            56: 
        !            57: #undef TARGET_VERSION
        !            58: #define TARGET_VERSION fprintf (stderr, " (68k, GNU GAS syntax)");
        !            59: 
        !            60: /* Discard internal local symbols beginning with 'L'. */
        !            61: #define LINK_SPEC "-X"
        !            62: 
        !            63: /* Every structure or union's size must be a multiple of 4 bytes. */
        !            64: #define STRUCTURE_SIZE_BOUNDARY 16 
        !            65: 
        !            66: /* No data type wants to be aligned rounder than this.  */
        !            67: #undef BIGGEST_ALIGNMENT
        !            68: #define BIGGEST_ALIGNMENT 32
        !            69: 
        !            70: /* Allocation boundary (in *bits*) for storing pointers in memory.  */
        !            71: #undef POINTER_BOUNDARY
        !            72: #define POINTER_BOUNDARY 32
        !            73: 
        !            74: /* Alignment of field after `int : 0' in a structure.  */
        !            75: #undef EMPTY_FIELD_BOUNDARY
        !            76: #define EMPTY_FIELD_BOUNDARY 32
        !            77: 
        !            78: /* Allocation boundry in bits for the code of a function */
        !            79: #undef  FUNCTION_BOUNDRY
        !            80: #define FUNCTION_BOUNDRY 32
        !            81: 
        !            82: /* Make strings long-word aligned so dhrystones will run faster. */
        !            83: #define CONSTANT_ALIGNMENT(EXP, ALIGN) \
        !            84:    (TREE_CODE (EXP) == STRING_CST \
        !            85:     && (ALIGN) < BITS_PER_WORD ? BITS_PER_WORD : (ALIGN))
        !            86: 
        !            87: /* Make arrays of chars word-aligned for the same reasons.  */
        !            88: #define DATA_ALIGNMENT(TYPE, ALIGN)            \
        !            89:   (TREE_CODE (TYPE) == ARRAY_TYPE              \
        !            90:    && TYPE_MODE (TREE_TYPE (TYPE)) == QImode   \
        !            91:    && (ALIGN) < BITS_PER_WORD ? BITS_PER_WORD : (ALIGN))
        !            92: 
        !            93: /* This is BSD, so it wants DBX format.  */
        !            94: #define DBX_DEBUGGING_INFO
        !            95: 
        !            96: /* Override parts of m68k.h */
        !            97: 
        !            98: #undef CALL_USED_REGISTERS
        !            99: #define CALL_USED_REGISTERS \
        !           100:  {1, 1, 0, 0, 0, 0, 0, 0, \
        !           101:   1, 1, 0, 0, 0, 0, 0, 1, \
        !           102:   1, 1, 0, 0, 0, 0, 1, 1 }
        !           103: 
        !           104: #undef REG_ALLOC_ORDER
        !           105: #define REG_ALLOC_ORDER \
        !           106: {  0,  1,  2,  3,  4,  5,  6,  7,\
        !           107:    8,  9, 10, 11, 12, 13, 14, 15, \
        !           108:   16, 17, 22, 23, 18, 19, 20, 21 }
        !           109: 
        !           110: #undef ASM_FILE_START
        !           111: #define ASM_FILE_START(FILE)   \
        !           112:   fprintf (FILE, "#NO_APP\n.globl fltused\n");
        !           113: 
        !           114: #undef ASM_OUTPUT_ALIGN
        !           115: #define ASM_OUTPUT_ALIGN(FILE,LOG)     \
        !           116: { int _LOG = LOG;                       \
        !           117:   if (_LOG == 1)                       \
        !           118:     fprintf (FILE, "\t.even\n");       \
        !           119:   else if (_LOG == 2)                   \
        !           120:     fprintf (FILE, "\t.align 4\n");     \
        !           121:   else if (_LOG != 0)                  \
        !           122:     fprintf (FILE, "\t.align %d\n", _LOG);\
        !           123: }
        !           124: 
        !           125: /* crt0.c should use the vax-bsd style of entry, with a dummy arg.  */
        !           126: 
        !           127: #define CRT0_DUMMIES bogus_fp,

unix.superglobalmegacorp.com

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