commit c6669b5cde3d7b504aec388282e7af955af58681 Author: Kyrylo Tkachov Date: Mon Jul 20 15:02:17 2015 +0100 [match.pd] PR middle-end/66915 Restrict A - B -> A + (-B) to non-fixed-point types diff --git a/gcc/match.pd b/gcc/match.pd index 4427000..3d7b32e 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -522,8 +522,8 @@ along with GCC; see the file COPYING3. If not see /* A - B -> A + (-B) if B is easily negatable. */ (simplify (minus @0 negate_expr_p@1) - (plus @0 (negate @1))) - + (if (!FIXED_POINT_TYPE_P (type)) + (plus @0 (negate @1)))) /* Try to fold (type) X op CST -> (type) (X op ((type-x) CST)) when profitable.