This is the mail archive of the gcc@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: IRA copy heuristics


Richard Sandiford wrote:
Richard Sandiford <rdsandiford@googlemail.com> writes:
Vladimir Makarov <vmakarov@redhat.com> writes:
Richard Sandiford wrote:
But as I said to HJ, I'm happy to apply the DF patch in isolation,
as long as we accept that the benefit of fixing a correctness
regression outweighs the potential performance regression.
Sure, regression is more important. Therefore even if you submit only one (reverse BB traverse) patch, it is ok for me.

As I wrote I am going to look at the second patch. I have feeling that even without the second patch, there will be no performance regression. I think that my latest patches (some of them are not in the mainline yet) removed IRA instability toward allocno ordering. I just need time to make sure about this.
Great! Thanks. I'll test overnight and submit tomorrow if everything
goes OK.

Bootstrapped & regression-tested on x86_64-linux-gnu, with the following FAILs fixed:

WARNING: program timed out.
FAIL: g++.old-deja/g++.eh/ia64-1.C execution test
FAIL: 21_strings/basic_string/numeric_conversions/char/stoi.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/char/stol.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/char/stoul.cc execution test

Applied as 133993.  Thanks Vlad for the review, and thanks HJ for
noticing that it fixed the above x86_64 regressions.

Thanks, Richard.

 I was wrong the patch alone results in significant performance
degradation.  The SPECInt2000 is worse by 0.8% and SPECFP2000 by 1%
(the worst degradation about %5 was found on mgrid) on x86 (Intel
Core2 in 32-bit mode).  I think the reason for this not in copies but
in something else.  I am going to investigate the problem when I have
time.

Meanwhile I am going to submit your second patch with an added
comment.  The patch permits gcc to generate the same quality code as
before your first patch.


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