https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81611
--- Comment #13 from Alexandre Oliva <aoliva at gcc dot gnu.org> --- We do have such constant propagation on such ports as x86* and arm, but not on avr. Presumably (I haven't checked) it has to do with available addressing modes, and gimple's avoiding, even in MEM_REFs, address expressions that don't fit its more stringent requirements.