https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53100

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2021-08-06 00:00:00         |2023-7-21

--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(simplify
 (plus (convert @0) (convert @1))
 (if (INTEGRAL_TYPE (type)
      && types_match (TREE_TYPE (@0), TREE_TYPE (@1))
      && element_precision (TREE_TYPE (@0)) < element_precision (type))
 (with { type ntype = find_next_best_type (TREE_TYPE (@0));
  }
  (if (ntype
       && !types_match (ntype, type)
       && element_precision (ntype) < element_precision (type))
   (convert (plus (convert:ntype @0) (convert:ntype @1)))
  )
 )
)

Where find_next_best_type checks int, long, long long types ...

Reply via email to