https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49839
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|minor |enhancement Ever confirmed|0 |1 Keywords| |missed-optimization Last reconfirmed| |2021-08-15 Status|UNCONFIRMED |NEW --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Trunk produces (after r12-1712): xorl %eax, %eax movl %eax, b movl %eax, a xorl %eax, %eax So almost there.