https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90271
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- One thing is that store-merging doesn't optimize this, I think we have an open enhancement request for that that should be able to cure that case. Another one is that perhaps we should consider such MEM_REFs as not necessarily forcing the variable into memory, and if that is the only thing to keep it addressable, we could in tree-ssa-live.c rewrite it using BIT_INSERT_EXPR.