Commit 91585c63 by Toon Moene Committed by Jeff Law

fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR if...

        * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
        if the dividend is a multiple of the divisor.

From-SVN: r16181
parent 6d6d0fa0
Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
* fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
if the dividend is a multiple of the divisor.
Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
* toplev.c (flag_rerun_loop_opt): New variable.
......
......@@ -4610,11 +4610,10 @@ fold (expr)
/* If arg0 is a multiple of arg1, then rewrite to the fastest div
operation, EXACT_DIV_EXPR.
Note that only CEIL_DIV_EXPR is rewritten now, only because the
others seem to be faster in some cases. This is probably just
due to more work being done to optimize others in expmed.c than on
EXACT_DIV_EXPR. */
if (code == CEIL_DIV_EXPR
Note that only CEIL_DIV_EXPR and FLOOR_DIV_EXPR are rewritten now.
At one time others generated faster code, it's not clear if they do
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 (build (EXACT_DIV_EXPR, type, arg0, arg1));
......
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