Commit f85021b0 by Vladimir Makarov Committed by Vladimir Makarov

PR rtl-optimization/pr55672

2013-01-10  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/pr55672
	* lra-eliminations.c (mark_not_elimnable): Permit addition with
	const to be elimnable.

2013-01-10  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/pr55672
	* gcc.target/i386/pr55672.c: New.

From-SVN: r195095
parent ddf9322d
2013-01-10 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/pr55672
* lra-eliminations.c (mark_not_elimnable): Permit addition with
const to be elimnable.
2013-01-10 David Edelsohn <dje.gcc@gmail.com>
* configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix.
......
......@@ -657,7 +657,7 @@ mark_not_eliminable (rtx x)
case PRE_MODIFY:
if (REG_P (XEXP (x, 0)) && REGNO (XEXP (x, 0)) < FIRST_PSEUDO_REGISTER)
/* If we modify the source of an elimination rule, disable
it. Do the same if it is the source and not the hard frame
it. Do the same if it is the source and not the hard frame
register. */
for (ep = reg_eliminate;
ep < &reg_eliminate[NUM_ELIMINABLE_REGS];
......@@ -716,7 +716,10 @@ mark_not_eliminable (rtx x)
ep < &reg_eliminate[NUM_ELIMINABLE_REGS];
ep++)
if (ep->to_rtx == SET_DEST (x)
&& SET_DEST (x) != hard_frame_pointer_rtx)
&& SET_DEST (x) != hard_frame_pointer_rtx
&& (GET_CODE (SET_SRC (x)) != PLUS
|| XEXP (SET_SRC (x), 0) != SET_DEST (x)
|| ! CONST_INT_P (XEXP (SET_SRC (x), 1))))
setup_can_eliminate (ep, false);
}
......
2013-01-10 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/pr55672
* gcc.target/i386/pr55672.c: New.
2013-01-10 Jeff Law <law@redhat.com>
* gcc/dg/tree-ssa/vrp06.c: Tighten expected output. Make each
......
/* { dg-do compile } */
/* { dg-options "-O -fstack-check=generic" } */
int main ()
{
int x[8];
if (x[0] != 4)
__builtin_abort ();
return 0;
}
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