OSDN Git Service

* config/i386/i386.c (TARGET_PROMOTE_PROTOTYPES): New.
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 Jan 2004 05:12:22 +0000 (05:12 +0000)
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 Jan 2004 05:12:22 +0000 (05:12 +0000)
(TARGET_STRUCT_VALUE_RTX): Likewise.
* config/i386/i386.h (STRUCT_VALUE_INCOMING): Remove.
(STRUCT_VALUE): Likewise.
(PROMOTE_PROTOTYPES): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76778 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.h

index 0b68192..e44a7da 100644 (file)
@@ -1,3 +1,11 @@
+2004-01-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/i386/i386.c (TARGET_PROMOTE_PROTOTYPES): New.
+       (TARGET_STRUCT_VALUE_RTX): Likewise.
+       * config/i386/i386.h (STRUCT_VALUE_INCOMING): Remove.
+       (STRUCT_VALUE): Likewise.
+       (PROMOTE_PROTOTYPES): Likewise.
+
 2004-01-27  Roger Sayle  <roger@eyesopen.com>
 
        * config/pa/pa.c (emit_move_sequence): Check that operand1 is a
index 1401fc0..df7efd1 100644 (file)
@@ -1024,6 +1024,12 @@ static void init_ext_80387_constants (void);
 #undef TARGET_BUILD_BUILTIN_VA_LIST
 #define TARGET_BUILD_BUILTIN_VA_LIST ix86_build_builtin_va_list
 
+#undef TARGET_PROMOTE_PROTOTYPES
+#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
+
+#undef TARGET_STRUCT_VALUE_RTX
+#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
+
 struct gcc_target targetm = TARGET_INITIALIZER;
 \f
 /* The svr4 ABI for the i386 says that records and unions are returned
index 52b193b..f49f8b4 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions of target machine for GCC for IA-32.
    Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-   2001, 2002, 2003 Free Software Foundation, Inc.
+   2001, 2002, 2003, 2004 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -1207,15 +1207,6 @@ do {                                                                     \
 
 #define GOT_SYMBOL_NAME "_GLOBAL_OFFSET_TABLE_"
 
-/* Register in which address to store a structure value
-   arrives in the function.  On the 386, the prologue
-   copies this from the stack to register %eax.  */
-#define STRUCT_VALUE_INCOMING 0
-
-/* Place in which caller passes the structure value address.
-   0 means push the value on the stack like an argument.  */
-#define STRUCT_VALUE 0
-
 /* A C expression which can inhibit the returning of certain function
    values in registers, based on the type of value.  A nonzero value
    says to return the function value in memory, just as large
@@ -2589,11 +2580,6 @@ enum ix86_builtins
    is done just by pretending it is already truncated.  */
 #define TRULY_NOOP_TRUNCATION(OUTPREC, INPREC) 1
 
-/* When a prototype says `char' or `short', really pass an `int'.
-   (The 386 can't easily push less than an int.)  */
-
-#define PROMOTE_PROTOTYPES 1
-
 /* A macro to update M and UNSIGNEDP when an object whose type is
    TYPE and which has the specified mode and signedness is to be
    stored in a register.  This macro is only called when TYPE is a