diff options
author | Richard Guenther <rguenther@suse.de> | 2005-07-14 07:39:56 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2005-07-14 07:39:56 +0000 |
commit | 1d636cc69fa14e7f7daa4eef6ecb6a6a1413cfda (patch) | |
tree | db222e8988c1c3f0439e84b38f6bc6ae99babae0 /gcc/targhooks.c | |
parent | 94b00ee4e1126901db295a7223b3c6d7c5b1868d (diff) | |
download | gcc-1d636cc69fa14e7f7daa4eef6ecb6a6a1413cfda.zip gcc-1d636cc69fa14e7f7daa4eef6ecb6a6a1413cfda.tar.gz gcc-1d636cc69fa14e7f7daa4eef6ecb6a6a1413cfda.tar.bz2 |
Makefile.in (explow.o, [...]): Depend on target.h.
2005-07-14 Richard Guenther <rguenther@suse.de>
* Makefile.in (explow.o, reg-stack.o): Depend on target.h.
* calls.c (expand_call): Pass fntype to hard_function_value.
(emit_library_call_value_1): Likewise.
* explow.c: Include target.h.
(hard_function_value): Take extra argument, the fntype.
Use new target hook for function_value.
* expr.h (hard_function_value): Change prototype.
* function.c (aggregate_value_p): Pass 0 as fntype to
hard_function_value.
(assign_parms): Use new target hook for function_value.
Pass 0 as fntype to hard_function_value.
(expand_function_end): Likewise.
* reg-stack.c: Include target.h.
(stack_result): Use new target hook for function_value.
* target-def.h: New target hook function_value.
* target.h: Likewise.
* targhooks.c (default_function_value): New function.
* targhooks.h (default_function_value): Declare.
From-SVN: r102013
Diffstat (limited to 'gcc/targhooks.c')
-rw-r--r-- | gcc/targhooks.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/targhooks.c b/gcc/targhooks.c index 4fc6e10..c0c4201 100644 --- a/gcc/targhooks.c +++ b/gcc/targhooks.c @@ -417,4 +417,26 @@ hook_bool_rtx_commutative_p (rtx x, int outer_code ATTRIBUTE_UNUSED) return COMMUTATIVE_P (x); } +rtx +default_function_value (tree ret_type ATTRIBUTE_UNUSED, + tree fn_decl_or_type, + bool outgoing ATTRIBUTE_UNUSED) +{ + /* The old interface doesn't handle receiving the function type. */ + if (fn_decl_or_type + && !DECL_P (fn_decl_or_type)) + fn_decl_or_type = NULL; + +#ifdef FUNCTION_OUTGOING_VALUE + if (outgoing) + return FUNCTION_OUTGOING_VALUE (ret_type, fn_decl_or_type); +#endif + +#ifdef FUNCTION_VALUE + return FUNCTION_VALUE (ret_type, fn_decl_or_type); +#else + return NULL_RTX; +#endif +} + #include "gt-targhooks.h" |