Commit 32e37414 by Yury Gribov Committed by Richard Biener

re PR tree-optimization/81089 (ICE: tree check: expected ssa_name, have…

re PR tree-optimization/81089 (ICE: tree check: expected ssa_name, have integer_cst in register_edge_assert_for_2, at tree-vrp.c:5023)

2017-06-16  Yury Gribov  <tetra2005@gmail.com>

	PR tree-optimization/81089
	* tree-vrp.c (is_masked_range_test): Validate operands of
	subexpression.

From-SVN: r249237
parent 0186cacf
2017-06-16 Yury Gribov <tetra2005@gmail.com>
PR tree-optimization/81089
* tree-vrp.c (is_masked_range_test): Validate operands of
subexpression.
2017-06-15 Martin Sebor <msebor@redhat.com>
PR c++/80560
......
......@@ -5651,8 +5651,9 @@ is_masked_range_test (tree name, tree valt, enum tree_code cond_code,
|| gimple_assign_rhs_code (def_stmt) != BIT_AND_EXPR)
return false;
tree t = gimple_assign_rhs1 (def_stmt);
tree maskt = gimple_assign_rhs2 (def_stmt);
if (TREE_CODE (maskt) != INTEGER_CST)
if (TREE_CODE (t) != SSA_NAME || TREE_CODE (maskt) != INTEGER_CST)
return false;
wide_int mask = maskt;
......@@ -5663,11 +5664,9 @@ is_masked_range_test (tree name, tree valt, enum tree_code cond_code,
|| (val & mask) != val)
return false;
tree t = gimple_assign_rhs1 (def_stmt);
tree type = TREE_TYPE (t);
bool is_range = cond_code == EQ_EXPR;
tree type = TREE_TYPE (t);
wide_int min = wi::min_value (type),
max = wi::max_value (type);
......
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