https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101541
--- Comment #7 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Created attachment 56118 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56118&action=edit Patch which I am testing which allows for more (independent of the other) This patch improves the case where we have a conversion at the end (after the negate expression). And with both of these patches together we are able to catch almost all. There is one more phi-opt patch needed to catch the case where the conversion before the negate expression is conditional but that is for another day.