loop-iv.c (simple_rhs_p): Allow expressions that are function_invariant_p.

* loop-iv.c (simple_rhs_p): Allow expressions that are
	function_invariant_p.

From-SVN: r146701
This commit is contained in:
Bernd Schmidt 2009-04-24 11:05:59 +00:00 committed by Bernd Schmidt
parent f63426afd8
commit ce72fe6cf0
2 changed files with 4 additions and 3 deletions

View File

@ -3,6 +3,7 @@
* loop-iv.c (replace_single_def_regs): Look for REG_EQUAL notes;
follow chains of regs with a single definition, and allow expressions
that are function_invariant_p.
(simple_rhs_p): Allow expressions that are function_invariant_p.
2009-04-24 Paolo Bonzini <bonzini@gnu.org>

View File

@ -1341,10 +1341,10 @@ simple_rhs_p (rtx rhs)
op1 = XEXP (rhs, 1);
/* Allow reg OP const and reg OP reg. */
if (!(REG_P (op0) && !HARD_REGISTER_P (op0))
&& !CONSTANT_P (op0))
&& !function_invariant_p (op0))
return false;
if (!(REG_P (op1) && !HARD_REGISTER_P (op1))
&& !CONSTANT_P (op1))
&& !function_invariant_p (op1))
return false;
return true;
@ -1358,7 +1358,7 @@ simple_rhs_p (rtx rhs)
/* Allow reg OP const. */
if (!(REG_P (op0) && !HARD_REGISTER_P (op0)))
return false;
if (!CONSTANT_P (op1))
if (!function_invariant_p (op1))
return false;
return true;