https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108831
--- Comment #2 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Uroš Bizjak from comment #1) > The patch also handles constant memory operands on x86_64. --cut here-- struct S { unsigned char pad1; unsigned char val; unsigned short pad2; }; unsigned char a; void test_and (struct S b) { a &= b.val; } --cut here-- compiles to: andb %ah, a(%rip)