https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85533
Randy Brecker <randy.brecker64 at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Target|avr |x86 avr Status|RESOLVED |VERIFIED Version|7.3.0 |8.0.1 --- Comment #3 from Randy Brecker <randy.brecker64 at gmail dot com> --- This is also true von x86_64, where we get: movzbl x(%rip), %eax sarl %eax movb %al, x(%rip) movzbl y(%rip), %eax shrb %al movb %al, y(%rip) xorl %eax, %eax Looks like a FE bug here.