|
|
1.1 ! root 1: /* Definitions of target machine for GNU compiler. Harris tahoe version. ! 2: Copyright (C) 1989 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: ! 21: #include "tm-tahoe.h" ! 22: ! 23: #undef CPP_PREDEFINES ! 24: #define CPP_PREDEFINES "-Dtahoe -Dunix -Dhcx" ! 25: ! 26: #undef DBX_DEBUGGING_INFO ! 27: #define SDB_DEBUGGING_INFO ! 28: ! 29: #undef TARGET_DEFAULT ! 30: #define TARGET_DEFAULT 1 ! 31: ! 32: /* urem and udiv don't exist on this system. */ ! 33: #undef UDIVSI3_LIBCALL ! 34: #undef UMODSI3_LIBCALL ! 35: ! 36: /* Operand of .align is not logarithmic. */ ! 37: #undef ASM_OUTPUT_ALIGN ! 38: #define ASM_OUTPUT_ALIGN(FILE,LOG) \ ! 39: LOG ? fprintf (FILE, "\t.align %d\n", 1 << (LOG)) : 0 ! 40: ! 41: /* For the same reason, we need .align 2 after casesi. */ ! 42: #undef PRINT_OPERAND ! 43: #define PRINT_OPERAND(FILE, X, CODE) \ ! 44: { if (CODE == '@') \ ! 45: putc ('2', FILE); \ ! 46: else if (GET_CODE (X) == REG) \ ! 47: fprintf (FILE, "%s", reg_names[REGNO (X)]); \ ! 48: else if (GET_CODE (X) == MEM) \ ! 49: output_address (XEXP (X, 0)); \ ! 50: else { putc ('$', FILE); output_addr_const (FILE, X); }} ! 51: ! 52: #undef ASM_OUTPUT_LOCAL ! 53: #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED) \ ! 54: ( fputs (".bss ", (FILE)), \ ! 55: assemble_name ((FILE), (NAME)), \ ! 56: fprintf ((FILE), ",%d,4\n", (ROUNDED))) ! 57: ! 58: #define ASM_OUTPUT_ASCII(FILE, PTR, SIZE) \ ! 59: { \ ! 60: unsigned char *_p = (PTR); \ ! 61: int _thissize = (SIZE); \ ! 62: fprintf ((FILE), "\t.ascii \""); \ ! 63: for (i = 0; i < _thissize; i++) \ ! 64: { \ ! 65: register int c = _p[i]; \ ! 66: if (c >= ' ' && c < 0177 && c != '\"' && c != '\\') \ ! 67: putc (c, (FILE)); \ ! 68: else \ ! 69: { \ ! 70: fprintf ((FILE), "\\%o", c); \ ! 71: if (i < _thissize - 1 \ ! 72: && _p[i + 1] >= '0' && _p[i + 1] <= '9') \ ! 73: fprintf ((FILE), "\"\n\t.ascii \""); \ ! 74: } \ ! 75: } \ ! 76: fprintf ((FILE), "\"\n"); \ ! 77: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.