diff --git a/gcc/match.pd b/gcc/match.pd index 650c3f4cc1d..d3aabae59ac 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -3146,30 +3146,30 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) (match (unsigned_integer_sat_add @0 @1) /* SUM = ADD_OVERFLOW (X, Y) SAT_U_ADD = REALPART (SUM) | -IMAGPART (SUM) */ - (bit_ior:c (realpart (IFN_ADD_OVERFLOW:c@2 @0 @1)) (negate (imagpart @2))) + (bit_ior:c (realpart (IFN_ADD_OVERFLOW@2 @0 @1)) (negate (imagpart @2))) (if (types_match (type, @0, @1)))) (match (unsigned_integer_sat_add @0 @1) /* SUM = ADD_OVERFLOW (X, Y) SAT_U_ADD = REALPART (SUM) | -(IMAGPART (SUM) != 0) */ - (bit_ior:c (realpart (IFN_ADD_OVERFLOW:c@2 @0 @1)) + (bit_ior:c (realpart (IFN_ADD_OVERFLOW@2 @0 @1)) (negate (convert (ne (imagpart @2) integer_zerop)))) (if (types_match (type, @0, @1)))) (match (unsigned_integer_sat_add @0 @1) /* SUM = ADD_OVERFLOW (X, Y) SAT_U_ADD = IMAGPART (SUM) == 0 ? REALPART (SUM) : -1 */ - (cond^ (eq (imagpart (IFN_ADD_OVERFLOW:c@2 @0 @1)) integer_zerop) + (cond^ (eq (imagpart (IFN_ADD_OVERFLOW@2 @0 @1)) integer_zerop) (realpart @2) integer_minus_onep) (if (types_match (type, @0, @1)))) (match (unsigned_integer_sat_add @0 @1) /* SUM = ADD_OVERFLOW (X, Y) SAT_U_ADD = IMAGPART (SUM) != 0 ? -1 : REALPART (SUM) */ - (cond^ (ne (imagpart (IFN_ADD_OVERFLOW:c@2 @0 @1)) integer_zerop) + (cond^ (ne (imagpart (IFN_ADD_OVERFLOW@2 @0 @1)) integer_zerop) integer_minus_onep (realpart @2)) (if (types_match (type, @0, @1)))) (match (unsigned_integer_sat_add @0 @1) /* SUM = ADD_OVERFLOW (X, IMM) SAT_U_ADD = IMAGPART (SUM) != 0 ? -1 : REALPART (SUM) */ - (cond^ (ne (imagpart (IFN_ADD_OVERFLOW:c@2 @0 INTEGER_CST@1)) integer_zerop) + (cond^ (ne (imagpart (IFN_ADD_OVERFLOW@2 @0 INTEGER_CST@1)) integer_zerop) integer_minus_onep (realpart @2)) (if (types_match (type, @0) && int_fits_type_p (@1, type)))))