This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] i386: Remove "m" constraint for "register_operand"
- From: Hans-Peter Nilsson <hp at bitrange dot com>
- To: Paolo Bonzini <bonzini at gnu dot org>
- Cc: Rask Ingemann Lambertsen <rask at sygehus dot dk>, gcc-patches at gcc dot gnu dot org
- Date: Fri, 10 Aug 2007 06:23:29 -0400 (EDT)
- Subject: Re: [PATCH] i386: Remove "m" constraint for "register_operand"
- References: <20070810094046.GU25795@sygehus.dk> <46BC3593.2060804@gnu.org>
On Fri, 10 Aug 2007, Paolo Bonzini wrote:
> Rask Ingemann Lambertsen wrote:
> > There is a mismatch between the constraints permitting memory operands
> > and the predicate accepting only register operands. This patch fixes that.
> > Bootstrapped and tested on x86_64-unknown-linux-gnu with no regressions. Ok
> > for trunk?
>
> I don't think so. The register_operand could be replaced with a
> general_operand following the same logic (possibly with further tweaks
> to the predicates); also, given the code that is present now in the
> trunk, reload might still use the memory constraint in case a value is
> spilled.
It's a bug to have looser constraints than predicate, but I'd
agree the correct change is to have general_operand or rather
nonimmediate_operand there.
brgds, H-P