]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
target-def.h (TARGET_STRUCT_VALUE_RTX): Define as hook_rtx_tree_int_null.
authorKazu Hirata <kazu@cs.umass.edu>
Sun, 8 Feb 2004 23:08:48 +0000 (23:08 +0000)
committerKazu Hirata <kazu@gcc.gnu.org>
Sun, 8 Feb 2004 23:08:48 +0000 (23:08 +0000)
* 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

23 files changed:
gcc/ChangeLog
gcc/config/alpha/alpha.c
gcc/config/arc/arc.c
gcc/config/avr/avr.c
gcc/config/fr30/fr30.c
gcc/config/h8300/h8300.c
gcc/config/i386/i386.c
gcc/config/ip2k/ip2k.c
gcc/config/iq2000/iq2000.c
gcc/config/m32r/m32r.c
gcc/config/mcore/mcore.c
gcc/config/mips/mips.c
gcc/config/mn10300/mn10300.c
gcc/config/pdp11/pdp11.c
gcc/config/rs6000/rs6000.c
gcc/config/s390/s390.c
gcc/config/stormy16/stormy16.c
gcc/config/v850/v850.c
gcc/config/xtensa/xtensa.c
gcc/doc/tm.texi
gcc/target-def.h
gcc/targhooks.c
gcc/targhooks.h

index 59aa6a88077dada6e2b6b4b4efd2616252eecf65..241bca6ab5d069356d0ad490fe7bc03c0d9ef518 100644 (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>
 
        * README.Portability: Change "ISO C89" to "ISO C90".
index b1eb7f69b4f764bf055a6f36e8ceb3fcb475973d..38f7b2a880152e74a0499e12bc766044f0151ecc 100644 (file)
@@ -10221,8 +10221,6 @@ alpha_init_libfuncs (void)
 #define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_true
 #undef TARGET_PROMOTE_PROTOTYPES
 #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
 #define TARGET_RETURN_IN_MEMORY alpha_return_in_memory
 #undef TARGET_SETUP_INCOMING_VARARGS
index f0c1bf22fac09b9ca75b37465ac4b5b90865ad5b..0f4396ac1c1f308a45de36c25bc5acf0e2ce9860 100644 (file)
@@ -136,8 +136,6 @@ static bool arc_return_in_memory (tree, tree);
 #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
 #undef TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY arc_return_in_memory
 
index 07540df9f3a682d87e84f8aeafcfe56b99e11ad4..207f5f390bc626209bbc61c78310b12072942716 100644 (file)
@@ -244,8 +244,6 @@ int avr_case_values_threshold = 30000;
 #undef TARGET_MACHINE_DEPENDENT_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
 #define TARGET_RETURN_IN_MEMORY avr_return_in_memory
 
index d6ffc760e359bd1f64473ab062277abf95ed4028..7a4f04ff9c3a22502eae809f3006dc51f7dafa61 100644 (file)
@@ -154,9 +154,6 @@ static rtx fr30_pass_by_value (tree, tree);
 #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
-
 #undef TARGET_SETUP_INCOMING_VARARGS
 #define TARGET_SETUP_INCOMING_VARARGS fr30_setup_incoming_varargs
 
index 668f273f363c94852a426f52cf7206d0c3303e3b..c8d79378cbfe8041a61705250278e7195011ab91 100644 (file)
@@ -4680,8 +4680,6 @@ h8300_return_in_memory (tree type, tree fntype ATTRIBUTE_UNUSED)
 #undef TARGET_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
 #define TARGET_RETURN_IN_MEMORY h8300_return_in_memory
 
index 6a0701cbfebc261981ea542b6965d790bdefbfd8..a91a39c05eac0ba6d63b917753143a48e4702d48 100644 (file)
@@ -1028,9 +1028,6 @@ static void init_ext_80387_constants (void);
 #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
-
 #undef TARGET_SETUP_INCOMING_VARARGS
 #define TARGET_SETUP_INCOMING_VARARGS ix86_setup_incoming_varargs
 
index 13652e41218c3484e35b24df94bb5ae39145d0a9..7c3d46fd1d3e3c9e9f56c27402223efe1e73bb2b 100644 (file)
@@ -115,8 +115,6 @@ const struct attribute_spec ip2k_attribute_table[];
 #undef TARGET_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
 #define TARGET_RETURN_IN_MEMORY ip2k_return_in_memory
 
index ca48c915d1d7895ff92a45afc600031c130aa756..90efc4b44d37522ea8452d340d4f3737b763391f 100644 (file)
@@ -192,8 +192,6 @@ static bool iq2000_return_in_memory   (tree, tree);
 #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
 #undef  TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY                iq2000_return_in_memory
 
index 849c73f3a60421fe5c8da27df1f1490b1bacc867..dcab504d3692c7e1cfc53033632766f2ab875a0f 100644 (file)
@@ -150,8 +150,6 @@ static bool m32r_rtx_costs (rtx, int, int, int *);
 #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
 #undef  TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY m32r_return_in_memory
 
index 8f2036ce7ec7cc4e1bfb2974dcbaf9c01edb73c9..468b7d1f416032e7bd87db5643e697dce3f93709 100644 (file)
@@ -190,8 +190,6 @@ static bool       mcore_return_in_memory    (tree, tree);
 #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
 #undef  TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY                mcore_return_in_memory
 
index 689d6fe72d64bbc215b8590b5c6756f8baa69f5f..ad6d3c5088068927f872c0532bd640eba7e532d9 100644 (file)
@@ -807,8 +807,6 @@ const struct mips_cpu_info mips_cpu_info_table[] = {
 #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
 #undef TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY mips_return_in_memory
 #undef TARGET_RETURN_IN_MSB
index f7811390d4726e18d46be7a274eccafe457990fe..2c68dcb04bab7bb52ea9bbd19352fe18902389c5 100644 (file)
@@ -93,8 +93,6 @@ static rtx mn10300_builtin_saveregs (void);
 #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
 #undef TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY mn10300_return_in_memory
 
index 9102dcdd3a002a2d8777e818215ebcad55614853..71adbeaa39c1a907b9ed541553e3c426dca254b8 100644 (file)
@@ -169,8 +169,6 @@ static bool pdp11_return_in_memory (tree, tree);
 #undef TARGET_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
 #define TARGET_RETURN_IN_MEMORY pdp11_return_in_memory
 
index 9cacc88f70011a5cf21329b5fe168d65422cc07c..2c36d9e240804da486bd8e1d804ee2026f6ce199 100644 (file)
@@ -595,10 +595,6 @@ static const char alt_reg_names[][8] =
 #undef TARGET_PROMOTE_FUNCTION_RETURN
 #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
 #define TARGET_RETURN_IN_MEMORY rs6000_return_in_memory
 
index 343d16582254cedb38408eb5c0e7fa4fb6dfbd4c..dabd52625f061428b7e395538a4d0b88edc98965 100644 (file)
@@ -154,9 +154,6 @@ static tree s390_build_builtin_va_list (void);
 #undef TARGET_PROMOTE_FUNCTION_RETURN
 #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;
 
 extern int reload_completed;
index 7678ccfcafd22ce49f011ad93912d2ed70147313..e19236b35da4c67956c484da980f608a5320371b 100644 (file)
@@ -2204,8 +2204,6 @@ xstormy16_return_in_memory (tree type, tree fntype ATTRIBUTE_UNUSED)
 #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
 #undef TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY xstormy16_return_in_memory
 
index 83cf9d13f2313151b3a67aac0d2a88ae5dc3ce93..08adab1293d08646b6a5907b690c66c5fd08c2ee 100644 (file)
@@ -122,8 +122,6 @@ static int v850_interrupt_p = FALSE;
 #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
 #undef TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY v850_return_in_memory
 
index 359ab77e4c397d2247ed1c1c52a215a3888f2469..c6cc33d608fd9a5f99d7e3335c9374fdccea9dfa 100644 (file)
@@ -246,8 +246,6 @@ static const int reg_nonleaf_alloc_order[FIRST_PSEUDO_REGISTER] =
 #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
 #undef TARGET_RETURN_IN_MEMORY
 #define TARGET_RETURN_IN_MEMORY xtensa_return_in_memory
 
index f290c1c21f5cdc6eaa6293299fe2807538bfdca3..a141627c100f1b70d27ed4e002ced9d53308d995 100644 (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
 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
-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
 is found by the called function is not the same place that the
index 54a47721c9db6b5f304b1cc375bdb59c0825522d..289ab412c6eec9ea668d9ac4b02d5de1aca6a25b 100644 (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_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_MSB hook_bool_tree_false
 
index ce491b283396828c69823c732d64a5e19ef43003..a2c8273a517857135f6f8e4c2c4978879dc1f79f 100644 (file)
@@ -78,13 +78,6 @@ default_cc_modes_compatible (enum machine_mode m1, enum machine_mode m2)
   return VOIDmode;
 }
 
-rtx
-default_struct_value_rtx (tree fntype ATTRIBUTE_UNUSED,
-                         int incoming ATTRIBUTE_UNUSED)
-{
-  abort ();
-}
-
 bool
 default_return_in_memory (tree type,
                          tree fntype ATTRIBUTE_UNUSED)
index 2de18e75bb61a48e2c1108621bd5111dd9c2b9f2..cbe0f6abb8af229cca22bec96c9ad699644a2a12 100644 (file)
@@ -23,7 +23,6 @@ extern void default_external_libcall (rtx);
 extern enum machine_mode default_cc_modes_compatible (enum machine_mode,
                                                      enum machine_mode);
 
-extern rtx default_struct_value_rtx (tree, int);
 extern bool default_return_in_memory (tree, tree);
 
 extern rtx default_expand_builtin_saveregs (void);