https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103314
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I bet the TYPE_PRECISION (TREE_TYPE (@0)) == TYPE_PRECISION (type) case should only be allowed if @1 != @3, i.e. when the bitop initially has 2 conversions and turns it into just one, otherwise it will ping-pong endlessly.