This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug debug/47881] [4.6 Regression] -fcompare-debug failure (length) with -O -fno-dce -funroll-loops -fno-web


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

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-07 11:32:53 UTC ---
Problems start when the combiner leaves in a trivially dead insn by substing it
later on in some subsequent insn.  Nothing until IRA calls
delete_trivially_dead_insns, and when IRA calls it, it removes that insn, which
effectively shortens the lifetime of one of the pseudos.  Unfortunately that
psuedo is set multiple times (probably -funroll-loops is the reason), so
delete_trivially_dead_insns isn't trying to reset or change related debug
insns, it doesn't have enough infrastructure to do so.  Normally DF would then
reset them, but DF isn't recomputed until IRA finishes.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]