Commit b7e9703c by Jan Hubicka Committed by Jan Hubicka

expr.c (epxand_expr): Convert divisions into multiplications by reciprocals if -ffast-math.


	* expr.c (epxand_expr): Convert divisions into multiplications by
	reciprocals if -ffast-math.

From-SVN: r44090
parent 653e276c
Tue Jul 17 23:43:31 CEST 2001 Jan Hubicka <jh@suse.cz>
* expr.c (epxand_expr): Convert divisions into multiplications by
reciprocals if -ffast-math.
2001-07-17 Neil Booth <neil@daikokuya.demon.co.uk>
* dbxout.c (dbxout_really_begin_function): Rename to
......
......@@ -7830,6 +7830,16 @@ expand_expr (exp, target, tmode, modifier)
return expand_divmod (0, code, mode, op0, op1, target, unsignedp);
case RDIV_EXPR:
/* Emit a/b as a*(1/b). Later we may manage CSE the reciprocal saving
expensive divide. If not, combine will rebuild the original
computation. */
if (flag_unsafe_math_optimizations && optimize && !optimize_size
&& !real_onep (TREE_OPERAND (exp, 0)))
return expand_expr (build (MULT_EXPR, type, TREE_OPERAND (exp, 0),
build (RDIV_EXPR, type,
build_real (type, dconst1),
TREE_OPERAND (exp, 1))),
target, tmode, unsignedp);
this_optab = flodiv_optab;
goto binop;
......
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