[PATCH] rs6000: Fix constraint v with rs6000_constraints[RS6000_CONSTRAINT_v]
David Edelsohn
dje.gcc@gmail.com
Thu Jan 13 03:07:22 GMT 2022
On Wed, Jan 12, 2022 at 8:56 PM Kewen.Lin <linkw@linux.ibm.com> wrote:
>
> Hi,
>
> This patch is to fix register constraint v with
> rs6000_constraints[RS6000_CONSTRAINT_v] instead of ALTIVEC_REGS,
> just like some other existing register constraints with
> RS6000_CONSTRAINT_*.
>
> I happened to see this and hope it's not intentional and just
> got neglected.
>
> Bootstrapped and regtested on powerpc64le-linux-gnu P9 and
> powerpc64-linux-gnu P8.
>
> Is it ok for trunk?
Why do you want to make this change?
rs6000_constraints[RS6000_CONSTRAINT_v] = ALTIVEC_REGS;
but all of the patterns that use a "v" constraint are (or should be)
protected by TARGET_ALTIVEC, or some final condition that only is
active for TARGET_ALTIVEC. The other constraints are conditionally
set because they can be used in a pattern with multiple alternatives
where the pattern itself is active but some of the constraints
correspond to NO_REGS when some instruction variants for VSX is not
enabled.
The change isn't wrong, but it doesn't correct a bug and provides no
additional benefit nor clarty that I can see.
Thanks, David
More information about the Gcc-patches
mailing list