REGRESSION in 3.2.1-pre on mips-irix6 (and elsewhere) compiling execute/20011219-1.c
Graham Stott
graham.stott@btinternet.com
Wed Nov 13 11:31:00 GMT 2002
Jan,
Jan Hubicka wrote:
>>
>>--On Wednesday, November 13, 2002 02:11:26 AM -0500 "Kaveh R. Ghazi"
>><ghazi@caip.rutgers.edu> wrote:
>>
>>
>>>Sometime in the last day or so, I'm getting a new regression from the
>>>gcc-3.2.1-pre testsuite on mips-irix6 when compiling
>>>execute/20011219-1.c.
>>
>>Jan, Graham -- I'd bet that this is fallout from your PR8502 patch.
>>
>>Would you please take a look?
>
> I will do. I tought it is failing in ppc, so tried it to reproduce on
> ppc croos that of course failed. Another try.
> However the patch just prevents optimization to happen, so it is
> probably latent bug somewhere else :)
>
> Honza
>
>>--
>>Mark Mitchell mark@codesourcery.com
>>CodeSourcery, LLC http://www.codesourcery.com
>
>
Oh what a twisty maze our cfg jumptable tidying up cost is.
I'm wandering if it's caused by a deadjump table not getting deleted
perhaps we can refine the new test to be
rtx label;
....
if (reload_completed
&& (label = JUMP_LABEL (insn))
&& LABEL_NUSES (label) > LABEL_PRESERVE_P (label)
&& (table = NEXT_INSN (label)) != NULL_RTX
&& GET_CODE (table) == JUMP_INSN
&& (GET_CODE (PATTERN (table)) == ADDR_VEC
|| GET_CODE (PATTERN (table)) == ADDR_DIFF_VEC))
return false;
This should allow a dead jump table to get deleted post reload
and also prevent a jump table that's referenced from being deleted.
I'll try and reproduce the problem on an mips cross compiler and
see my idea fixes the problem.
Graham
More information about the Gcc
mailing list