[Bug middle-end/67891] [6 Regression] FAIL: gcc.dg/pr43300.c (internal compiler error) on alpha-linux-gnu
aoliva at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Oct 9 06:18:00 GMT 2015
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.
More information about the Gcc-bugs
mailing list