This is the mail archive of the
mailing list for the GCC project.
Re: new-regalloc vs alpha
- To: Richard Henderson <rth at redhat dot com>
- Subject: Re: new-regalloc vs alpha
- From: Daniel Berlin <dberlin at redhat dot com>
- Date: Thu, 1 Feb 2001 12:47:31 -0500 (EST)
- cc: Daniel Berlin <dberlin at redhat dot com>, <gcc-patches at gcc dot gnu dot org>
On Tue, 30 Jan 2001, Richard Henderson wrote:
> On Tue, Jan 30, 2001 at 05:33:23PM -0500, Daniel Berlin wrote:
> > > (set (reg:DI foo) (mem:DI (reg:DI $f10)))
> > Shouldn't reload fix this for us though?
> Yes, it should. And if it knows what sort of instruction this is,
> it _will_ fix it up. The problem arises only when the insn code
> is unknown (step one in the outlined scenario), which means that
> it has no operand locations or constraints to work with.
You know what's ironic?
This (the above insn) happens because we try to follow the register
allocation order, which says to try the float regs first, and since they
seem okay to us, we do.
It also causes us to not find spill regs available in the float_reg class
on powerpc occasionally.
If i ignore the allocation order preference, both the above problem, and
the inability to find spill regs for the FLOAT_REGS class on powerpc, go
Maybe I should just ignore the allocation order, since all it seems to do
is cause us problems?