target-def.h (TARGET_STRUCT_VALUE_RTX): Define as hook_rtx_tree_int_null.

* target-def.h (TARGET_STRUCT_VALUE_RTX): Define as
	hook_rtx_tree_int_null.
	* targhooks.c (default_struct_value_rtx): Remove.
	* targhooks.h: Remove the prototype for
	default_struct_value_rtx.
	* config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c,
	config/fr30/fr30.c, config/h8300/h8300.c, config/i386/i386.c,
	config/ip2k/ip2k.c, config/iq2000/iq2000.c,
	config/m32r/m32r.c, config/mcore/mcore.c, config/mips/mips.c,
	config/mn10300/mn10300.c, config/pdp11/pdp11.c,
	config/rs6000/rs6000.c, config/s390/s390.c,
	config/stormy16/stormy16.c, config/v850/v850.c,
	config/xtensa/xtensa.c (TARGET_STRUCT_VALUE_RTX): Remove.
	* doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document the default.

From-SVN: r77505
This commit is contained in:
Kazu Hirata 2004-02-08 23:08:48 +00:00 committed by Kazu Hirata
parent 40c23042f4
commit 1f6acb82a2
23 changed files with 21 additions and 51 deletions

View File

@ -1,3 +1,20 @@
2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
* target-def.h (TARGET_STRUCT_VALUE_RTX): Define as
hook_rtx_tree_int_null.
* targhooks.c (default_struct_value_rtx): Remove.
* targhooks.h: Remove the prototype for
default_struct_value_rtx.
* config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c,
config/fr30/fr30.c, config/h8300/h8300.c, config/i386/i386.c,
config/ip2k/ip2k.c, config/iq2000/iq2000.c,
config/m32r/m32r.c, config/mcore/mcore.c, config/mips/mips.c,
config/mn10300/mn10300.c, config/pdp11/pdp11.c,
config/rs6000/rs6000.c, config/s390/s390.c,
config/stormy16/stormy16.c, config/v850/v850.c,
config/xtensa/xtensa.c (TARGET_STRUCT_VALUE_RTX): Remove.
* doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document the default.
2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk> 2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
* README.Portability: Change "ISO C89" to "ISO C90". * README.Portability: Change "ISO C89" to "ISO C90".

View File

@ -10221,8 +10221,6 @@ alpha_init_libfuncs (void)
#define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_true #define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_true
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_false #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_false
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY alpha_return_in_memory #define TARGET_RETURN_IN_MEMORY alpha_return_in_memory
#undef TARGET_SETUP_INCOMING_VARARGS #undef TARGET_SETUP_INCOMING_VARARGS

View File

@ -136,8 +136,6 @@ static bool arc_return_in_memory (tree, tree);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY arc_return_in_memory #define TARGET_RETURN_IN_MEMORY arc_return_in_memory

View File

@ -244,8 +244,6 @@ int avr_case_values_threshold = 30000;
#undef TARGET_MACHINE_DEPENDENT_REORG #undef TARGET_MACHINE_DEPENDENT_REORG
#define TARGET_MACHINE_DEPENDENT_REORG avr_reorg #define TARGET_MACHINE_DEPENDENT_REORG avr_reorg
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY avr_return_in_memory #define TARGET_RETURN_IN_MEMORY avr_return_in_memory

View File

@ -154,9 +154,6 @@ static rtx fr30_pass_by_value (tree, tree);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_SETUP_INCOMING_VARARGS #undef TARGET_SETUP_INCOMING_VARARGS
#define TARGET_SETUP_INCOMING_VARARGS fr30_setup_incoming_varargs #define TARGET_SETUP_INCOMING_VARARGS fr30_setup_incoming_varargs

View File

@ -4680,8 +4680,6 @@ h8300_return_in_memory (tree type, tree fntype ATTRIBUTE_UNUSED)
#undef TARGET_INIT_LIBFUNCS #undef TARGET_INIT_LIBFUNCS
#define TARGET_INIT_LIBFUNCS h8300_init_libfuncs #define TARGET_INIT_LIBFUNCS h8300_init_libfuncs
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY h8300_return_in_memory #define TARGET_RETURN_IN_MEMORY h8300_return_in_memory

View File

@ -1028,9 +1028,6 @@ static void init_ext_80387_constants (void);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_SETUP_INCOMING_VARARGS #undef TARGET_SETUP_INCOMING_VARARGS
#define TARGET_SETUP_INCOMING_VARARGS ix86_setup_incoming_varargs #define TARGET_SETUP_INCOMING_VARARGS ix86_setup_incoming_varargs

View File

@ -115,8 +115,6 @@ const struct attribute_spec ip2k_attribute_table[];
#undef TARGET_INIT_LIBFUNCS #undef TARGET_INIT_LIBFUNCS
#define TARGET_INIT_LIBFUNCS ip2k_init_libfuncs #define TARGET_INIT_LIBFUNCS ip2k_init_libfuncs
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY ip2k_return_in_memory #define TARGET_RETURN_IN_MEMORY ip2k_return_in_memory

View File

@ -192,8 +192,6 @@ static bool iq2000_return_in_memory (tree, tree);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY iq2000_return_in_memory #define TARGET_RETURN_IN_MEMORY iq2000_return_in_memory

View File

@ -150,8 +150,6 @@ static bool m32r_rtx_costs (rtx, int, int, int *);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY m32r_return_in_memory #define TARGET_RETURN_IN_MEMORY m32r_return_in_memory

View File

@ -190,8 +190,6 @@ static bool mcore_return_in_memory (tree, tree);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY mcore_return_in_memory #define TARGET_RETURN_IN_MEMORY mcore_return_in_memory

View File

@ -807,8 +807,6 @@ const struct mips_cpu_info mips_cpu_info_table[] = {
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY mips_return_in_memory #define TARGET_RETURN_IN_MEMORY mips_return_in_memory
#undef TARGET_RETURN_IN_MSB #undef TARGET_RETURN_IN_MSB

View File

@ -93,8 +93,6 @@ static rtx mn10300_builtin_saveregs (void);
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY mn10300_return_in_memory #define TARGET_RETURN_IN_MEMORY mn10300_return_in_memory

View File

@ -169,8 +169,6 @@ static bool pdp11_return_in_memory (tree, tree);
#undef TARGET_RTX_COSTS #undef TARGET_RTX_COSTS
#define TARGET_RTX_COSTS pdp11_rtx_costs #define TARGET_RTX_COSTS pdp11_rtx_costs
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY pdp11_return_in_memory #define TARGET_RETURN_IN_MEMORY pdp11_return_in_memory

View File

@ -595,10 +595,6 @@ static const char alt_reg_names[][8] =
#undef TARGET_PROMOTE_FUNCTION_RETURN #undef TARGET_PROMOTE_FUNCTION_RETURN
#define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_true #define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_true
/* Structure return values are passed as an extra parameter. */
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY rs6000_return_in_memory #define TARGET_RETURN_IN_MEMORY rs6000_return_in_memory

View File

@ -154,9 +154,6 @@ static tree s390_build_builtin_va_list (void);
#undef TARGET_PROMOTE_FUNCTION_RETURN #undef TARGET_PROMOTE_FUNCTION_RETURN
#define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_true #define TARGET_PROMOTE_FUNCTION_RETURN 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; struct gcc_target targetm = TARGET_INITIALIZER;
extern int reload_completed; extern int reload_completed;

View File

@ -2204,8 +2204,6 @@ xstormy16_return_in_memory (tree type, tree fntype ATTRIBUTE_UNUSED)
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY xstormy16_return_in_memory #define TARGET_RETURN_IN_MEMORY xstormy16_return_in_memory

View File

@ -122,8 +122,6 @@ static int v850_interrupt_p = FALSE;
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY v850_return_in_memory #define TARGET_RETURN_IN_MEMORY v850_return_in_memory

View File

@ -246,8 +246,6 @@ static const int reg_nonleaf_alloc_order[FIRST_PSEUDO_REGISTER] =
#undef TARGET_PROMOTE_PROTOTYPES #undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
#undef TARGET_STRUCT_VALUE_RTX
#define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#undef TARGET_RETURN_IN_MEMORY #undef TARGET_RETURN_IN_MEMORY
#define TARGET_RETURN_IN_MEMORY xtensa_return_in_memory #define TARGET_RETURN_IN_MEMORY xtensa_return_in_memory

View File

@ -3969,7 +3969,9 @@ If not defined, this defaults to the value 1.
This target hook should return the location of the structure value This target hook should return the location of the structure value
address (normally a @code{mem} or @code{reg}), or 0 if the address is address (normally a @code{mem} or @code{reg}), or 0 if the address is
passed as an ``invisible'' first argument. Note that @var{fndecl} may passed as an ``invisible'' first argument. Note that @var{fndecl} may
be @code{NULL}, for libcalls. be @code{NULL}, for libcalls. You do not need to define this target
hook if the address is always passed as an ``invisible'' first
argument.
On some architectures the place where the structure value address On some architectures the place where the structure value address
is found by the called function is not the same place that the is found by the called function is not the same place that the

View File

@ -329,7 +329,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_false #define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_false
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_false #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_false
#define TARGET_STRUCT_VALUE_RTX default_struct_value_rtx #define TARGET_STRUCT_VALUE_RTX hook_rtx_tree_int_null
#define TARGET_RETURN_IN_MEMORY default_return_in_memory #define TARGET_RETURN_IN_MEMORY default_return_in_memory
#define TARGET_RETURN_IN_MSB hook_bool_tree_false #define TARGET_RETURN_IN_MSB hook_bool_tree_false

View File

@ -78,13 +78,6 @@ default_cc_modes_compatible (enum machine_mode m1, enum machine_mode m2)
return VOIDmode; return VOIDmode;
} }
rtx
default_struct_value_rtx (tree fntype ATTRIBUTE_UNUSED,
int incoming ATTRIBUTE_UNUSED)
{
abort ();
}
bool bool
default_return_in_memory (tree type, default_return_in_memory (tree type,
tree fntype ATTRIBUTE_UNUSED) tree fntype ATTRIBUTE_UNUSED)

View File

@ -23,7 +23,6 @@ extern void default_external_libcall (rtx);
extern enum machine_mode default_cc_modes_compatible (enum machine_mode, extern enum machine_mode default_cc_modes_compatible (enum machine_mode,
enum machine_mode); enum machine_mode);
extern rtx default_struct_value_rtx (tree, int);
extern bool default_return_in_memory (tree, tree); extern bool default_return_in_memory (tree, tree);
extern rtx default_expand_builtin_saveregs (void); extern rtx default_expand_builtin_saveregs (void);