Commit e344dbf3 by J"orn Rennecke Committed by Joern Rennecke

flow.c (propagate_one_insn): Call mark_set_regs for stack pointer updates too.

	* flow.c (propagate_one_insn): Call mark_set_regs for stack pointer
	updates too.

From-SVN: r81334
parent 65a939f7
2004-04-30 J"orn Rennecke <joern.rennecke@superh.com>
* flow.c (propagate_one_insn): Call mark_set_regs for stack pointer
updates too.
2004-04-30 Paul Brook <paul@codesourcery.com> 2004-04-30 Paul Brook <paul@codesourcery.com>
* arm.c (arm_needs_doubleword_align): Use mode alignment. * arm.c (arm_needs_doubleword_align): Use mode alignment.
......
...@@ -1707,12 +1707,18 @@ propagate_one_insn (struct propagate_block_info *pbi, rtx insn) ...@@ -1707,12 +1707,18 @@ propagate_one_insn (struct propagate_block_info *pbi, rtx insn)
&& GET_CODE (SET_SRC (PATTERN (insn))) == PLUS && GET_CODE (SET_SRC (PATTERN (insn))) == PLUS
&& XEXP (SET_SRC (PATTERN (insn)), 0) == stack_pointer_rtx && XEXP (SET_SRC (PATTERN (insn)), 0) == stack_pointer_rtx
&& GET_CODE (XEXP (SET_SRC (PATTERN (insn)), 1)) == CONST_INT) && GET_CODE (XEXP (SET_SRC (PATTERN (insn)), 1)) == CONST_INT)
{
/* We have an insn to pop a constant amount off the stack. /* We have an insn to pop a constant amount off the stack.
(Such insns use PLUS regardless of the direction of the stack, (Such insns use PLUS regardless of the direction of the stack,
and any insn to adjust the stack by a constant is always a pop.) and any insn to adjust the stack by a constant is always a pop
or part of a push.)
These insns, if not dead stores, have no effect on life, though These insns, if not dead stores, have no effect on life, though
they do have an effect on the memory stores we are tracking. */ they do have an effect on the memory stores we are tracking. */
invalidate_mems_from_set (pbi, stack_pointer_rtx); invalidate_mems_from_set (pbi, stack_pointer_rtx);
/* Still, we need to update local_set, lest ifcvt.c:dead_or_predicable
concludes that the stack pointer is not modified. */
mark_set_regs (pbi, PATTERN (insn), insn);
}
else else
{ {
rtx note; rtx note;
......
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