[Bug debug/53740] [4.8 Regression] --enable-checking=yes,rtl bootstrap failure with ada

aoliva at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Jun 27 05:42:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53740

--- Comment #6 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-27 05:42:26 UTC ---
The bug was introduced in r188527, with the conditionalization of calling
insert_dead_debug_temp in the “else” clause, so that we would no longer insert
debug temps for sets that were not themselves dead, but that were used in debug
stmts after their death.  This caused a chain of debug temps to be incorrectly
introduced, which ended up triggering the problem.

Now, there is indeed a bug in the way we deal with multiregs: we're happily
using paradoxical SUBREGs to extend the value stored in a single REG to
determine the value of the whole multi-reg expression.  We only refrained from
doing so if the SET was already a SUBREG, but we had to do that for REGs too.

In the patch I'm testing now, I fix both problems.  Will post soon.



More information about the Gcc-bugs mailing list