https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110986
--- Comment #21 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Created attachment 56134 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56134&action=edit the scalar patterns This adds the scalar patterns which I had talked about before. I have not tested this patch yet except to see if we get the code which we were expecting (again). Even for: ``` long long f(unsigned a, unsigned b) { return a ? ~b : b; } ``` Which I don't think there was a testcase before. Will add one tomorrow for this and fully test it too.