Commit 64447a2d by Gary Funck Committed by Gary Funck

re PR middle-end/66984 (ICE: fold_binary changes type of operand, causing…

re PR middle-end/66984 (ICE: fold_binary changes type of operand, causing failure in verify_gimple_assign_binary)

2015-07-24  Gary Funck  <gary@intrepid.com>

	PR middle-end/66984
	* fold-const.c (fold_binary_loc): Call fold_convert on arguments to
        fold_build2 for CEIL_DIV_EXPR and FLOOR_DIV_EXPR optimization.

From-SVN: r226168
parent a5a57bf3
2015-07-24 Gary Funck <gary@intrepid.com>
PR middle-end/66984
* fold-const.c (fold_binary_loc): Call fold_convert on arguments to
fold_build2 for CEIL_DIV_EXPR and FLOOR_DIV_EXPR optimization.
2015-07-24 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (gen_parallel_loop): Add debug print for alternative
......
......@@ -10746,7 +10746,9 @@ fold_binary_loc (location_t loc,
after the last round to changes to the DIV code in expmed.c. */
if ((code == CEIL_DIV_EXPR || code == FLOOR_DIV_EXPR)
&& multiple_of_p (type, arg0, arg1))
return fold_build2_loc (loc, EXACT_DIV_EXPR, type, arg0, arg1);
return fold_build2_loc (loc, EXACT_DIV_EXPR, type,
fold_convert (type, arg0),
fold_convert (type, arg1));
strict_overflow_p = false;
if (TREE_CODE (arg1) == INTEGER_CST
......
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