diff options
author | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-12-17 17:05:05 +0000 |
---|---|---|
committer | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-12-17 17:05:05 +0000 |
commit | aa7aa40316af14330682a6b927d3d5675c9e5505 (patch) | |
tree | 9ecd773d8f70d4756103d7af57c47c41c90354fb /gcc/calls.c | |
parent | 91ebded8a38290059ebac02b2c4ffce08d4dc64b (diff) | |
download | gcc-aa7aa40316af14330682a6b927d3d5675c9e5505.tar.gz |
2008-12-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/38556
* calls.c (expand_call): Check outgoing_reg_parm_stack_space
only if REG_PARM_STACK_SPACE is defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142794 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index b94d29800a8..f6bc970b71b 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -2298,10 +2298,12 @@ expand_call (tree exp, rtx target, int ignore) It does not seem worth the effort since few optimizable sibling calls will return a structure. */ || structure_value_addr != NULL_RTX +#ifdef REG_PARM_STACK_SPACE /* If outgoing reg parm stack space changes, we can not do sibcall. */ || (OUTGOING_REG_PARM_STACK_SPACE (funtype) != OUTGOING_REG_PARM_STACK_SPACE (TREE_TYPE (current_function_decl))) || (reg_parm_stack_space != REG_PARM_STACK_SPACE (fndecl)) +#endif /* Check whether the target is able to optimize the call into a sibcall. */ || !targetm.function_ok_for_sibcall (fndecl, exp) |