This is the mail archive of the gcc-patches@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]

Re: New optimization for reload_combine


On 07/20/10 05:45, Bernd Schmidt wrote:
On 07/19/2010 12:00 PM, Bernd Schmidt wrote:
I've committed the following fix for the bootstrap comparison failures.
DEBUG_INSNs got in the way, as they do. This also fixes a problem
observed with sh libjava, we need to avoid moving something after an
insn that can throw. Another fix which I found by inspection is for the
use_ruid bookkeeping, the interaction between the new and the old code
could have caused problems there.
It's still producing different code for -g vs. no-debug on powerpc.  It
turns out that we only store a limited amount of uses for a reg, and
somehow the powerpc compiler produces a huge amount of debug_insns,
which fill the buffer and prevent us from doing the optimization on real
insns.

Not sure yet how to fix it, probably by not tracking DEBUG_INSNs at all
and letting them get out of date.
The only middle ground I see would be to track them, but if the buffer fills, you go through and purge all the DEBUG_INSN entries from the buffer and associated data structures. Otherwise I think you have to track them without bound or ignore them completely.


Jeff



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