home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2J (Developer) / os42jdev.iso / NextDeveloper / Source / GNU / gcc / config / m68k / plexus.h < prev    next >
C/C++ Source or Header  |  1995-06-15  |  4KB  |  118 lines

  1. /* Definitions of target machine for GNU compiler.
  2.    Copyright (C) 1990, 1994 Free Software Foundation, Inc.
  3.  
  4.    Written by Randy Welch
  5.    Send bug reports, questions and improvements to any of the following
  6.    addresses:
  7.  
  8.    randy@kcin.uucp
  9.    randy@tss.com
  10.    rwelch@netcom.com
  11.    plx-info@wpg.com        Plexus users mailing list
  12.  
  13.    For 680X0 based Plexus Computers running SYSVR2
  14.  
  15.    The Plexus port of gcc requires you to use gas ( either 1.3X with COFF 
  16.    patches or 2.X ),  If you use gas 2.X you have to use binutils-2.X.
  17.       
  18.    With using gas-2.X the Plexus gcc port is now capable of generating
  19.    output suitable for use by gdb-4.X ( send mail to above address for
  20.    info on getting gdb patches or other GNU items for the Plexus )
  21.  
  22.    This is configured for label output default by gas as LXXX instead of
  23.    plexus cc/as combination requires .LXXX
  24.  
  25. This file is part of GNU CC.
  26.  
  27. GNU CC is free software; you can redistribute it and/or modify
  28. it under the terms of the GNU General Public License as published by
  29. the Free Software Foundation; either version 1, or (at your option)
  30. any later version.
  31.  
  32. GNU CC is distributed in the hope that it will be useful,
  33. but WITHOUT ANY WARRANTY; without even the implied warranty of
  34. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  35. GNU General Public License for more details.
  36.  
  37. You should have received a copy of the GNU General Public License
  38. along with GNU CC; see the file COPYING.  If not, write to
  39. the Free Software Foundation, 59 Temple Place - Suite 330,
  40. Boston, MA 02111-1307, USA.  */
  41.  
  42.  
  43. #include "m68k/m68k.h"
  44.  
  45. /* Define __HAVE_68881 in preprocessor only if -m68881 is specified.
  46.    This will control the use of inline 68881 insns in certain macros. */
  47.  
  48. #define TARGET_DEFAULT 5                      /* set to 5 if on a '020 box */
  49.  
  50. /* Don't try using XFmode.  */
  51. #undef LONG_DOUBLE_TYPE_SIZE
  52. #define LONG_DOUBLE_TYPE_SIZE 64
  53.  
  54. #define CPP_SPEC "%{m68881:-D__HAVE_68881__}"
  55. #define CPP_PREDEFINES "-Dm68 -Dunix -Dplexus -Asystem(unix)  -Acpu(m68k) -Amachine(m68k)"
  56.  
  57. #if TARGET_DEFAULT & 01
  58. #define ASM_SPEC\
  59. "%{m68000:-mc68000}%{mc68000:-mc68000}%{!mc68000:%{!m68000:-mc68020}}"
  60. #undef STRICT_ALIGNMENT
  61. #define STRICT_ALIGNMENT 0
  62. #else
  63. #define ASM_SPEC\
  64. "%{m68020:-mc68020}%{mc68020:-mc68020}%{!mc68020:%{!mc68020:-mc68000}}"
  65. #endif
  66.  
  67. /***************************************************************************/
  68. /*  Un comment the following if you want adb to be able to follow a core   */
  69. /*  file if you compile a program with -O                                  */
  70. /***************************************************************************/
  71. /* #define FRAME_POINTER_REQUIRED */
  72.  
  73. /* Let's be compatible with the Plexus C compiler by default.  Why not?  */
  74. #define PLEXUS_CC_COMPAT
  75.  
  76. #ifdef PLEXUS_CC_COMPAT
  77. #define STRUCTURE_SIZE_BOUNDARY 16    /* for compatibility with cc */
  78. #undef STACK_BOUNDARY
  79. #define STACK_BOUNDARY 32        /* ditto */
  80. #endif
  81.  
  82. #undef NEED_PROBE
  83. #define NEED_PROBE -132            /* plexus needs a stack probe */
  84.  
  85. /***********************************************************************/
  86. /* if you have binutils-2.X and gas-2.X running you can generate code  */
  87. /* that gdb can understand ( gdb support available for 4.11 )          */
  88. /*                                                                     */
  89. /* If you use gas-1.3X don't define this as the version of the coff    */
  90. /* patches for gas-1.3x ( stabs in coff ) does not generate coff debug */
  91. /* syms                                                                */
  92. /***********************************************************************/
  93. #define HAVE_GAS_2_X
  94.  
  95. #ifdef HAVE_GAS_2_X
  96. #undef DBX_DEBUGGING_INFO
  97. #define SDB_DEBUGGING_INFO
  98.  
  99. #undef ASM_FILE_START
  100. #define ASM_FILE_START(FILE) \
  101.   output_file_directive((FILE), main_input_filename)
  102.  
  103. #else
  104. #undef DBX_DEBUGGING_INFO        /* no real debugger */
  105. #undef SDB_DEBUGGING_INFO
  106. #endif
  107. #define TARGET_MEM_FUNCTIONS
  108.  
  109. /***********************************************************************/
  110. /*                          items for collect2                         */
  111. /***********************************************************************/
  112.  
  113. #define NM_FLAGS ""
  114. #define NO_SYS_SIGLIST
  115. #define NO_DUP2
  116.  
  117. #define SIZE_TYPE "int"
  118.