This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Lousy scheduling decisions owing to bad interaction betweensched and greg :(
- From: Richard Earnshaw <rearnsha at gcc dot gnu dot org>
- To: Joern Rennecke <joern dot rennecke at superh dot com>
- Cc: Dave Korn <dk at artimi dot com>, gcc at gcc dot gnu dot org
- Date: Fri, 03 Sep 2004 15:42:25 +0100
- Subject: Re: Lousy scheduling decisions owing to bad interaction betweensched and greg :(
- Organization: GNU
- References: <200409031329.i83DTcJ23009@chloe.uk.w2k.superh.com>
On Fri, 2004-09-03 at 14:29, Joern Rennecke wrote:
> > ===================================================================
> > 4) Does an expander sound like the right solution to the problem?
> > ===================================================================
>
> Yes. You'll also have to have an insn predicate for movsi that rejects
> memory-memory moves to prevent the rtl optimizers from generating them.
It can't really be a predicate (in the strict sense) because they can
only validate one operand. Instead you need a final condition on the
insn that rejects it in the case where both operands turn out to be
memory operands. The ARM does this for its mov<mm> patterns as, I
suspect, do several ports.
R.