This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix PR 44691
2010/8/19 Andrey Belevantsev <abel@ispras.ru>:
> On 19.08.2010 17:28, H.J. Lu wrote:
>>
>> 2010/8/18 Andrey Belevantsev<abel@ispras.ru>:
>>>
>>> Hello,
>>>
>>> As explained in the audit trail, the problem was that in the selective
>>> scheduler I assumed that SUBREG_REG will always be a REG, which seems to
>>> be
>>> not the case. ?This is not quite in line with what documentation says, if
>>> I
>>> read it correctly, but it seems to be used in a number of backends, so
>>> the
>>> below patch just gives up substitution also when SUBREG_REG is not a
>>> register. ?Bootstrapped and tested on ia64, and verified that the test is
>>> fixed on x86_64.
>>>
>>> I think that this qualifies as obvious, so unless Vlad or other people
>>> have
>>> any comments, I'll commit it tomorrow.
>>>
>>> Yours, Andrey
>>>
>>> 2010-08-18 ?Andrey Belevantsev<abel@ispras.ru>
>>>
>>> ? ? ? ?PR rtl-optimization/44691
>>>
>>> ? ? ? ?* sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
>>> ? ? ? ?is not a register.
>>>
>>
>> Shouldn't we add the testcase?
>
> The test is fortran.dg/pr42294.f which is actually mentioned in the bug
> report. ?Sorry for not saying this explicitly in the mail.
>
Normally this bug isn't trigged. You need to pass -O2 -fselective-scheduling2
to see it. You should copy gfortran.dg/pr42294.f and add -O2
-fselective-scheduling2.
--
H.J.