> -----Original Message-----
> From: Tamar Christina <[email protected]>
> Sent: 02 June 2021 10:34
> To: Tamar Christina <[email protected]>
> Cc: Richard Earnshaw <[email protected]>; nd <[email protected]>;
> Ramana Radhakrishnan <[email protected]>; Kyrylo
> Tkachov <[email protected]>
> Subject: RE: [PATCH][AArch32]: Correct sdot RTL on aarch32
>
> ping
>
> > -----Original Message-----
> > From: Gcc-patches <[email protected]> On Behalf Of
> Tamar
> > Christina via Gcc-patches
> > Sent: Tuesday, May 25, 2021 3:58 PM
> > To: [email protected]
> > Cc: Richard Earnshaw <[email protected]>; nd <[email protected]>;
> > Ramana Radhakrishnan <[email protected]>
> > Subject: [PATCH][AArch32]: Correct sdot RTL on aarch32
> >
> > Hi All,
> >
> > The RTL Generated from <sup>dot_prod<vsi2qi> is invalid as operand3
> > cannot be written to, it's a normal input. For the expand it's just another
> > operand but the caller does not expect it to be written to.
> >
> > Bootstrapped Regtested on arm-none-linux-gnueabihf and no issues.
> >
> > Ok for master? and backport to GCC 11, 10, 9?
Ok.
Thanks,
Kyrill
> >
> > Thanks,
> > Tamar
> >
> > gcc/ChangeLog:
> >
> > * config/arm/neon.md (<sup>dot_prod<vsi2qi>): Drop statements.
> >
> > --- inline copy of patch --
> > diff --git a/gcc/config/arm/neon.md b/gcc/config/arm/neon.md index
> >
> 61d81646475ce3bf62ece2cec2faf0c1fe978ec1..9602e9993aeebf4ec620d10
> 5fd
> > 20f64498a3b851 100644
> > --- a/gcc/config/arm/neon.md
> > +++ b/gcc/config/arm/neon.md
> > @@ -3067,13 +3067,7 @@ (define_expand "<sup>dot_prod<vsi2qi>"
> > DOTPROD)
> > (match_operand:VCVTI 3 "register_operand")))]
> > "TARGET_DOTPROD"
> > -{
> > - emit_insn (
> > - gen_neon_<sup>dot<vsi2qi> (operands[3], operands[3], operands[1],
> > - operands[2]));
> > - emit_insn (gen_rtx_SET (operands[0], operands[3]));
> > - DONE;
> > -})
> > +)
> >
> > ;; Auto-vectorizer pattern for usdot
> > (define_expand "usdot_prod<vsi2qi>"
> >
> >
> > --