From 9184f8921b86b372e5dfef4097af21fa2f4ea26f Mon Sep 17 00:00:00 2001 From: Kazu Hirata Date: Wed, 28 Jan 2004 05:12:22 +0000 Subject: [PATCH] i386.c (TARGET_PROMOTE_PROTOTYPES): New. * 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. From-SVN: r76778 --- gcc/ChangeLog | 8 ++++++++ gcc/config/i386/i386.c | 6 ++++++ gcc/config/i386/i386.h | 16 +--------------- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0b6819244b7..e44a7daf559 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2004-01-28 Kazu Hirata + + * 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 * config/pa/pa.c (emit_move_sequence): Check that operand1 is a diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 1401fc0ed94..df7efd1f314 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -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; /* The svr4 ABI for the i386 says that records and unions are returned diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 52b193bb022..f49f8b4bed6 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -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