error: unable to find a register to spill in class 'FP_REGS'
Jim Wilson
wilson@specifix.com
Wed Mar 14 23:10:00 GMT 2007
Markus Franke wrote:
> Does anybody have an idea what could be wrong in the machine description
> or to where start finding the error?
Compile with -da, and starting looking at the RTL dumps, mainly the greg
and lreg ones. The greg one will have a section listing all of the
reloads generated, find the list of reloads generated for this insn 45.
lreg will have info about register class preferencing. It will tell you
what register class the compiler wants to use for this insn.
The fact that this insn doesn't do FP isn't important. What is
important is how the pseudo-regs are used. If the pseudo-reg 92 is used
in 10 insns, and 8 of them are FP insns and 2 are integer move insns,
then the register allocator will prefer an FP reg, since that should
give the best overall result, as only 2 insns will need reloads. If it
used an integer reg, then 8 insns would need reloads.
--
Jim Wilson, GNU Tools Support, http://www.specifix.com
More information about the Gcc
mailing list