+2016-04-28 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/70777
+ * fold-const.c (fold_binary_loc): Remove x*x to pow(x,2.0)
+ canonicalization.
+
2016-04-28 Oleg Endo <olegendo@gcc.gnu.org>
* common/config/sh/sh-common.c: Remove SH5 support.
&& TREE_CODE (arg1) == CONJ_EXPR
&& operand_equal_p (arg0, TREE_OPERAND (arg1, 0), 0))
return fold_mult_zconjz (loc, type, arg0);
-
- if (flag_unsafe_math_optimizations)
- {
-
- /* Canonicalize x*x as pow(x,2.0), which is expanded as x*x. */
- if (!in_gimple_form
- && optimize
- && operand_equal_p (arg0, arg1, 0))
- {
- tree powfn = mathfn_built_in (type, BUILT_IN_POW);
-
- if (powfn)
- {
- tree arg = build_real (type, dconst2);
- return build_call_expr_loc (loc, powfn, 2, arg0, arg);
- }
- }
- }
}
goto associate;