OSDN Git Service

* rtl.h (mem_for_const_double): New declaration.
[pf3gnuchains/gcc-fork.git] / gcc / config / m68k / hp320.h
index 2e45351..6bb86d3 100644 (file)
@@ -1,5 +1,6 @@
 /* Definitions of target machine for GNU compiler.  HP-UX 68000/68020 version.
-   Copyright (C) 1987, 88, 93, 94, 95, 96, 1997, 1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1999, 2000
+   Free Software Foundation, Inc.
 
 This file is part of GNU CC.
 
@@ -78,7 +79,7 @@ Boston, MA 02111-1307, USA.  */
 /* These definitions differ from those used for GAS by defining __HPUX_ASM__.
    This is needed because some programs, particularly GDB, need to
    know which assembler is being used so that the correct `asm'
-   instructions can be used. */
+   instructions can be used.  */
 
 #define CPP_SPEC \
 "%{!msoft-float:-D__HAVE_68881__ }\
@@ -126,13 +127,13 @@ Boston, MA 02111-1307, USA.  */
 /* These are the ones defined by HPUX cc, plus mc68000 for uniformity with
    GCC on other 68000 systems.  */
 
-#define CPP_PREDEFINES "-Dhp9000s200 -Dhp9000s300 -DPWB -Dhpux -Dunix -D__hp9000s300 -D__hp9000s200 -D__PWB -D__hpux -D__unix -D__motorola__ -Asystem(unix) -Asystem(hpux) -Acpu(m68k) -Amachine(m68k)"
+#define CPP_PREDEFINES "-Dhp9000s200 -Dhp9000s300 -DPWB -Dhpux -Dunix -D__hp9000s300 -D__hp9000s200 -D__PWB -D__hpux -D__unix -D__motorola__ -Asystem=unix -Asystem=hpux -Acpu=m68k -Amachine=m68k"
 
 /* Every structure or union's size must be a multiple of 2 bytes.  */
 
 #define STRUCTURE_SIZE_BOUNDARY 16
 
-/* hpux doesn't use static area for struct returns. */
+/* hpux doesn't use static area for struct returns.  */
 #undef PCC_STATIC_STRUCT_RETURN
 
 /* Generate calls to memcpy, memcmp and memset.  */
@@ -606,10 +607,6 @@ do { register int i;                       \
     { fprintf ((FILE), "mov"); (PTR) += 4; }           \
 }
 
-/* Prevent output of `gcc_compiled.:'.  */
-
-#define ASM_IDENTIFY_GCC(FILE)
-
 #else /* not HPUX_ASM */
 
 #undef FUNCTION_PROFILER
@@ -624,14 +621,15 @@ do { register int i;                      \
 #endif /* not HPUX_ASM */
 
 /* In m68k svr4, a symbol_ref rtx can be a valid PIC operand if it is an
-   operand of a function call. */
+   operand of a function call.  */
 #undef LEGITIMATE_PIC_OPERAND_P
 #define LEGITIMATE_PIC_OPERAND_P(X) \
   ((! symbolic_operand (X, VOIDmode) \
-    && ! (GET_CODE (X) == CONST_DOUBLE && CONST_DOUBLE_MEM (X) \
-         && GET_CODE (CONST_DOUBLE_MEM (X)) == MEM             \
-         && symbolic_operand (XEXP (CONST_DOUBLE_MEM (X), 0), VOIDmode))) \
-   || (GET_CODE (X) == SYMBOL_REF && SYMBOL_REF_FLAG (X))       \
+    && ! (GET_CODE (X) == CONST_DOUBLE && mem_for_const_double (X) != 0        \
+         && GET_CODE (mem_for_const_double (X)) == MEM                 \
+         && symbolic_operand (XEXP (mem_for_const_double (X), 0),      \
+                              VOIDmode)))                              \
+   || (GET_CODE (X) == SYMBOL_REF && SYMBOL_REF_FLAG (X))              \
    || PCREL_GENERAL_OPERAND_OK)
 
 /* hpux8 and later have C++ compatible include files, so do not