https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67891
--- Comment #2 from Alexandre Oliva <aoliva at gcc dot gnu.org> --- Created attachment 36469 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36469&action=edit Patch that works around the problem Ugh. assign_parms's use of emit_block_move (as for parameter a in this testcase) marks decls as addressable that weren't before, so they no longer pass is_gimple_reg in spite of having SSA defs. This is turn causes set_parm_rtl to pass the parm down to set_rtl, instead of the default def, so the RTL isn't associated with the partition holding the default def. Oops. Fortunately, ssa_default_def doesn't seem to mind being called for addressable decls, so we can just skip the is_gimple_reg test. I'm testing further to see that this is indeed the case.