]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/config/m68k/next.h
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / config / m68k / next.h
diff --git a/gcc/config/m68k/next.h b/gcc/config/m68k/next.h
deleted file mode 100644 (file)
index 3ccffc8..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/* Target definitions for GNU compiler for mc680x0 running NeXTSTEP
-   Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 1999
-   Free Software Foundation, Inc.
-
-This file is part of GNU CC.
-
-GNU CC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU CC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU CC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
-
-#include "m68k/m68k.h"
-#include "nextstep.h"
-
-/* See m68k.h.  0407 means 68040 (or 68030 or 68020, with 68881/2).  */
-
-#define TARGET_DEFAULT (MASK_68040|MASK_BITFIELD|MASK_68881|MASK_68020)
-
-/* Boundary (in *bits*) on which stack pointer should be aligned.  */
-
-#undef STACK_BOUNDARY
-#define STACK_BOUNDARY 32
-
-/* Names to predefine in the preprocessor for this target machine.  */
-
-#define CPP_PREDEFINES "-Dmc68000 -Dm68k -DNeXT -Dunix -D__MACH__ -D__BIG_ENDIAN__ -D__ARCHITECTURE__=\"m68k\" -Asystem=unix  -Asystem=mach -Acpu=m68k -Amachine=m68k -D_NEXT_SOURCE"
-
-/* Every structure or union's size must be a multiple of 2 bytes.
-   (Why isn't this in m68k.h?)  */
-
-#define STRUCTURE_SIZE_BOUNDARY 16
-
-#undef ASM_OUTPUT_FLOAT_OPERAND
-#ifdef REAL_VALUE_TO_TARGET_SINGLE
-#define ASM_OUTPUT_FLOAT_OPERAND(CODE,FILE,VALUE)                      \
-  do {                                                                 \
-    long hex;                                                          \
-    REAL_VALUE_TO_TARGET_SINGLE (VALUE, hex);                          \
-    fprintf (FILE, "#0%c%lx", (CODE) == 'f' ? 'b' : 'x', hex);         \
-  } while (0)
-#else
-#define ASM_OUTPUT_FLOAT_OPERAND(CODE,FILE,VALUE)              \
-  do{                                                          \
-      if (CODE != 'f')                                         \
-        {                                                      \
-          long l;                                              \
-          REAL_VALUE_TO_TARGET_SINGLE (VALUE, l);              \
-          if (sizeof (int) == sizeof (long))                   \
-            asm_fprintf ((FILE), "%I0x%x", (int) l);           \
-          else                                                 \
-            asm_fprintf ((FILE), "%I0x%lx", l);                        \
-        }                                                      \
-      else if (REAL_VALUE_ISINF (VALUE))                       \
-        {                                                      \
-          if (REAL_VALUE_NEGATIVE (VALUE))                     \
-            fprintf (FILE, "#0r-99e999");                      \
-          else                                                 \
-            fprintf (FILE, "#0r99e999");                       \
-        }                                                      \
-      else                                                     \
-        { char dstr[30];                                       \
-          REAL_VALUE_TO_DECIMAL ((VALUE), "%.9g", dstr);       \
-          fprintf (FILE, "#0r%s", dstr);                       \
-        }                                                      \
-    } while (0)
-#endif
-
-#undef ASM_OUTPUT_DOUBLE_OPERAND
-#ifdef REAL_VALUE_TO_TARGET_DOUBLE
-#define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)                          \
-  do {                                                                 \
-    long hex[2];                                                       \
-    REAL_VALUE_TO_TARGET_DOUBLE (VALUE, hex);                          \
-    fprintf (FILE, "#0b%lx%08lx", hex[0], hex[1]);                     \
-  } while (0)
-#else
-#define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)                          \
- do { if (REAL_VALUE_ISINF (VALUE))                                    \
-        {                                                              \
-          if (REAL_VALUE_NEGATIVE (VALUE))                             \
-            fprintf (FILE, "#0r-99e999");                              \
-          else                                                         \
-            fprintf (FILE, "#0r99e999");                               \
-        }                                                              \
-      else                                                             \
-        { char dstr[30];                                               \
-          REAL_VALUE_TO_DECIMAL ((VALUE), "%.20g", dstr);              \
-          fprintf (FILE, "#0r%s", dstr);                               \
-        }                                                              \
-    } while (0)
-#endif
-
-/* We do not define JUMP_TABLES_IN_TEXT_SECTION, since we wish to keep
-   the text section pure.  There is no point in addressing the jump
-   tables using pc relative addressing, since they are not in the text
-   section, so we undefine CASE_VECTOR_PC_RELATIVE.  This also
-   causes the compiler to use absolute addresses in the jump table,
-   so we redefine CASE_VECTOR_MODE to be SImode.  */
-
-#undef CASE_VECTOR_MODE
-#define CASE_VECTOR_MODE SImode
-#undef CASE_VECTOR_PC_RELATIVE
-
-/* Make sure jump tables have the same alignment as other pointers.  */
-
-#define ASM_OUTPUT_CASE_LABEL(FILE,PREFIX,NUM,TABLEINSN)       \
-{ ASM_OUTPUT_ALIGN (FILE, 1); ASM_OUTPUT_INTERNAL_LABEL (FILE, PREFIX, NUM); }
-
-/* Don't treat addresses involving labels differently from symbol names.
-   Previously, references to labels generated pc-relative addressing modes
-   while references to symbol names generated absolute addressing modes.  */
-
-#undef GO_IF_INDEXABLE_BASE
-#define GO_IF_INDEXABLE_BASE(X, ADDR)  \
-{ if (LEGITIMATE_BASE_REG_P (X)) goto ADDR; }
-
-/* This accounts for the return pc and saved fp on the m68k.  */
-
-#define OBJC_FORWARDING_STACK_OFFSET 8
-#define OBJC_FORWARDING_MIN_OFFSET 8
-
-/* FINALIZE_TRAMPOLINE enables executable stack.  The
-   __enable_execute_stack also clears the insn cache.  */
-
-#undef FINALIZE_TRAMPOLINE
-#define FINALIZE_TRAMPOLINE(TRAMP) \
-  emit_library_call(gen_rtx_SYMBOL_REF (Pmode, "__enable_execute_stack"), \
-                   0, VOIDmode, 1, memory_address (SImode, (TRAMP)), Pmode)
-
-/* A C expression used to clear the instruction cache from 
-   address BEG to address END.   On NeXTSTEP this i a system trap.  */
-
-#define CLEAR_INSN_CACHE(BEG, END)   \
-   asm volatile ("trap #2")
-
-/* GCC is the primary compiler for NeXTSTEP, so we don't need this.  */
-#undef PCC_STATIC_STRUCT_RETURN