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: [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.


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