Commit 16b05965 by Martin Liska Committed by Martin Liska

Call get_ops just for SSA_NAMEs (PR tree-optimization/71987)

	PR tree-optimization/71987
	* tree-ssa-reassoc.c (maybe_optimize_range_tests): Call get_ops
	just for SSA_NAMEs. Fix GNU coding style.
	* gcc.dg/torture/pr71987.c: New test.

From-SVN: r238704
parent 19bb30c0
2016-07-25 Martin Liska <mliska@suse.cz>
PR tree-optimization/71987
* tree-ssa-reassoc.c (maybe_optimize_range_tests): Call get_ops
just for SSA_NAMEs. Fix GNU coding style.
2016-07-25 Martin Liska <mliska@suse.cz>
PR gcov-profile/64874
* gcov-io.h: Update command about file format.
* gcov-iov.c (main): Adapt the numbering scheme.
......
2016-07-25 Martin Liska <mliska@suse.cz>
* gcc.dg/torture/pr71987.c: New test.
2016-07-22 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71935
......
/* PR tree-optimization/71987 */
int a, b, *c, *d;
short fn1 (int p1)
{
return a ? p1 : a;
}
void fn2 ()
{
int e, *f = &e;
b = fn1 (d != &e);
c = f;
}
int main ()
{
fn2 ();
return 0;
}
......@@ -3519,7 +3519,8 @@ maybe_optimize_range_tests (gimple *stmt)
(or &, corresponding to 1/0 in the phi arguments,
push into ops the individual range test arguments
of the bitwise or resp. and, recursively. */
if (!get_ops (rhs, code, &ops,
if (TREE_CODE (rhs) == SSA_NAME
&& !get_ops (rhs, code, &ops,
loop_containing_stmt (stmt))
&& (TREE_CODE_CLASS (gimple_assign_rhs_code (stmt))
!= tcc_comparison)
......@@ -3540,8 +3541,8 @@ maybe_optimize_range_tests (gimple *stmt)
else if (is_gimple_assign (stmt)
&& (TREE_CODE_CLASS (gimple_assign_rhs_code (stmt))
== tcc_comparison)
&&!get_ops (lhs, code, &ops,
loop_containing_stmt (stmt))
&& !get_ops (lhs, code, &ops,
loop_containing_stmt (stmt))
&& has_single_use (lhs))
{
operand_entry *oe = operand_entry_pool.allocate ();
......
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