https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115439
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #4) > I think something like this: > ``` > [apinski@xeond2 arm]$ git diff mve.md > diff --git a/gcc/config/arm/mve.md b/gcc/config/arm/mve.md > index 9fe51298cdc..8af4797e935 100644 > --- a/gcc/config/arm/mve.md > +++ b/gcc/config/arm/mve.md > @@ -6897,6 +6897,12 @@ (define_expand "vcond_mask_<mode><MVE_vpred>" > (match_operand:MVE_VLD_ST 2 "s_register_operand")))] > "TARGET_HAVE_MVE" > { > + if (!register_operand (operands[3], <MVE_VPRED>mode)) > + operands[3] = force_reg (operands[3]); > + if (!register_operand (operands[1], <MODE>mode)) > + operands[1] = force_reg (operands[1]); > + if (!register_operand (operands[2], <MODE>mode)) > + operands[1] = force_reg (operands[2]); copy and pasto:`operands[1] = force_reg (operands[1]);` is the correct line for above. > switch (GET_MODE_CLASS (<MODE>mode)) > { > case MODE_VECTOR_INT: > > ``` > Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com>