outgoing_reg_parm_stack_space does not match.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142792
138bc75d-0d04-0410-961f-
82ee72b054a4
+2008-12-12 Jan Hubicka <jh@suse.cz>
+ Kai Tietz <kai.tietz@onevision.com>
+
+ * calls.c (expand_call): Do not sibcall if
+ outgoing_reg_parm_stack_space does not match.
+
2008-12-12 Anatoly Sokolov <aesok@post.ru>
* config/avr/avr.c (avr_mcu_t): Add attiny87, attiny327, at90pwm81,
It does not seem worth the effort since few optimizable
sibling calls will return a structure. */
|| structure_value_addr != NULL_RTX
+ /* 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))
/* Check whether the target is able to optimize the call
into a sibcall. */
|| !targetm.function_ok_for_sibcall (fndecl, exp)