https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89411
--- Comment #4 from Jim Wilson <wilson at gcc dot gnu.org> --- Created attachment 45925 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45925&action=edit work in progress patches for a fix This implements two ways to fix it, a simple way that just fails for BLKmode, and a more complex way that passes in a SYMBOL_REF and tries to extract decl size and alignment from it. There are ifdefs so you can choose which one gets used. I'd like to do a lot more testing to see what the optimization effect is from the two patches, and to see how often they trigger, and to make sure they won't generate a compiler error on anything important (like gcc, glibc, newlib, linux kernel).