Commit 3b2ee170 by Iain Sandoe

calls.c (load_register_parameters): Move check for zero sized items so that only the call to ...

	* calls.c (load_register_parameters): Move check for zero
	sized items so that only the call to 
	mem_overlaps_already_clobbered_arg_p () is protected.

From-SVN: r162402
parent 20b3c24c
2010-07-22 Iain Sandoe <iains@gcc.gnu.org>
* calls.c (load_register_parameters): Move check for zero
sized items so that only the call to
mem_overlaps_already_clobbered_arg_p () is protected.
2010-07-22 Jan Hubicka <jh@suse.cz>
* ipa-pure-const.c (varying_state): Break out from ...
......
......@@ -1668,15 +1668,16 @@ load_register_parameters (struct arg_data *args, int num_actuals,
emit_move_insn (gen_rtx_REG (word_mode, REGNO (reg) + j),
args[i].aligned_regs[j]);
else if ((partial == 0 || args[i].pass_on_stack)
&& size != 0)
else if (partial == 0 || args[i].pass_on_stack)
{
rtx mem = validize_mem (args[i].value);
/* Check for overlap with already clobbered argument area. */
/* Check for overlap with already clobbered argument area,
providing that this has non-zero size. */
if (is_sibcall
&& mem_overlaps_already_clobbered_arg_p (XEXP (args[i].value, 0),
size))
&& (size == 0
|| mem_overlaps_already_clobbered_arg_p
(XEXP (args[i].value, 0), size)))
*sibcall_failure = 1;
/* Handle a BLKmode that needs shifting. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment