diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-14 07:39:56 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-14 07:39:56 +0000 |
commit | 46b3ff29296568882d5ec4f6796ae9a28879971b (patch) | |
tree | db222e8988c1c3f0439e84b38f6bc6ae99babae0 /gcc/reg-stack.c | |
parent | f9eef6699aae8596611d814f6d8695432137b68c (diff) | |
download | gcc-46b3ff29296568882d5ec4f6796ae9a28879971b.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102013 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reg-stack.c')
-rw-r--r-- | gcc/reg-stack.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c index d1d8b9894bd..9f44f518095 100644 --- a/gcc/reg-stack.c +++ b/gcc/reg-stack.c @@ -172,6 +172,7 @@ #include "ggc.h" #include "timevar.h" #include "tree-pass.h" +#include "target.h" /* We use this array to cache info about insns, because otherwise we spend too much time in stack_regs_mentioned_p. @@ -667,14 +668,8 @@ stack_result (tree decl) result = DECL_RTL_IF_SET (DECL_RESULT (decl)); if (result != 0) - { -#ifdef FUNCTION_OUTGOING_VALUE - result - = FUNCTION_OUTGOING_VALUE (TREE_TYPE (DECL_RESULT (decl)), decl); -#else - result = FUNCTION_VALUE (TREE_TYPE (DECL_RESULT (decl)), decl); -#endif - } + result = targetm.calls.function_value (TREE_TYPE (DECL_RESULT (decl)), + decl, true); return result != 0 && STACK_REG_P (result) ? result : 0; } |