ICE building libgcc2.c for MIPS, too

Adam Nemet anemet@caviumnetworks.com
Sun Jul 15 04:18:00 GMT 2007


Sandra Loosemore <sandra@codesourcery.com> writes:
> #6  0x0875dc03 in rest_of_handle_combine ()
>     at /scratch/sandra/mips-mainline/src/gcc-mainline/gcc/combine.c:1264
>
> ...
>
> Looks like a job for valgrind?  But I'm out of time for working on
> this, at least for now.  Can anyone else take a stab at it?

I am seeing the same thing.  The issues is basically that after the
no_new_pseudoes change mips_split_symbol through mips_force_temporary
will create new pseudos during combine.  The regnumber of these regs
will address out of the reg_stat array in combine.

This is incorrect as in combine you are supposed to use the scratch
register that combine provides through a clobber clause which AFAIK is
always an existing pseudo.  I am planning to fix this by changing
mips_split_symbol to use the scratch register instead of a new pseudo
when invoked from a splitter.  I will try to get the patch tested
overnight.

Adam



More information about the Gcc mailing list