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: [VTA] retain more debug info in loop-ivopts


On Sep  4, 2009, Alexandre Oliva <aoliva@redhat.com> wrote:

>> A more convincing option would be to not delete the stmts in IVOPTs
>> but instead rely on a later DCE.  Does that work and generate equivalent
>> code?

> I'll give it a try.

It's much slower than the patch I proposed, and it misses optimization
opportunities because of the lingering useless stmts.

While my patch causes no visible compile-time variation (+/- 1% faster
or slower), your suggestion made varied from 0.5% faster to 3% slower,
on libiberty/regex.c.

It's not hard to imagine why.  Basically it means dropping useful
information about which stmts can be deleted, and carry them around
longer until we find out again that they're useless.

> Here's how I'm going to test it: write a scratch
> patch that introduces option to disable the call to remove_unused_ivs,
> and then run a stage3 build with GCC_COMPARE_DEBUG=-fthat-option.

This test didn't work: there were too many differences in internal
representation that turned out not to be significant.  However, even
using different stages for a compare (STAGE2_CFLAGS and STAGE3_CFLAGS)
failed on more than a dozen object files.

-- 
Alexandre Oliva, freedom fighter    http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/   FSF Latin America board member
Free Software Evangelist      Red Hat Brazil Compiler Engineer


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