This is the mail archive of the
mailing list for the GCC project.
Re: RFC reminder: an alternative -fsched-pressure implementation
- From: Richard Sandiford <rdsandiford at googlemail dot com>
- To: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- Cc: vmakarov at redhat dot com (Vladimir Makarov), gcc-patches at gcc dot gnu dot org, Andreas dot Krebbel at de dot ibm dot com
- Date: Thu, 26 Apr 2012 16:51:49 +0100
- Subject: Re: RFC reminder: an alternative -fsched-pressure implementation
- References: <email@example.com> <201204251142.q3PBg9CT021118@d06av02.portsmouth.uk.ibm.com>
"Ulrich Weigand" <firstname.lastname@example.org> writes:
> Richard Sandiford wrote:
>> Vladimir Makarov <email@example.com> writes:
>> > Taking your results for S390 and ARM with Neon into account, I guess it
>> > should be included and probably made by default for these 2 targets (for
>> > sure for s390).
>> OK, thanks to both of you.
>> Ulrich and Andreas: would you be happy for s390 to use this by default?
>> I'll update the patch and install if so.
> I've talked to Andreas, and we agree that s390 should use this as default.
> If you install the base patch, we'll do the back-end change accordingly.
> (I'll also work with Ramana to enable it on ARM where it makes sense,
> probably when targeting Cortex-A cores.)
OK, installed after bootstrapping & regression-testing on
x86_64-linux-gnu, both as normal and with:
(a) the i386 -fschedule-insns override disabled
(b) -fsched-pressure on by default and
(c) -fsched-pressure-algorithm=model by default
The results from the first run were the same as the baseline ones.
The second run had an extra spill failure in a guality test for -m32,
but I think that sort of thing is expected. It also had a debug quality
regression in pr43479.c. We had a chain of debug_insns that were
logically independent but which (regardless of the patch) were
nevertheless constrained to be in sequence. The patch moved some later
non-debug instructions ahead of where the first debug instruction could go.
It seemed that the RA was such that the values used by the later debug
instructions were no longer valid.