This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix PR middle-end/28690, indexed load/store performance + reload bug
- From: David Edelsohn <dje at watson dot ibm dot com>
- To: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- Cc: dalej at apple dot com (Dale Johannesen), bergner at vnet dot ibm dot com (Peter Bergner), gcc-patches at gcc dot gnu dot org, matz at suse dot de (Michael Matz), ulrich dot weigand at de dot ibm dot com (Ulrich Weigand), pinskia at gmail dot com (Andrew Pinski)
- Date: Tue, 12 Dec 2006 09:39:56 -0500
- Subject: Re: [PATCH] Fix PR middle-end/28690, indexed load/store performance + reload bug
- References: <200612121140.kBCBeUYD009654@d12av02.megacenter.de.ibm.com>
>>>>> Ulrich Weigand writes:
Ulrich> Well, the problem itself is target-specific, because the predicate
Ulrich> gpc_register_operand that accepts only certain registers is target-
Ulrich> specific.
Ulrich> I guess one question is, why do you need that predicate in the first
Ulrich> place, and don't just use register_operand? In particular, given the
Ulrich> issues discussed in this thread, the predicate doesn't appear to have
Ulrich> the intended effect anyway ...
As stated in the GCC documentation of predicates:
"Operand predicates can allow operands that are not actually acceptable to
the hardware, as long as the constraints give reload the ability to fix
them up. However, GCC will usually generate better code if the predicates
specify the requirements of the machine instructions as closely as
possible."
David