> -----Original Message----- > From: Tamar Christina <tamar.christ...@arm.com> > Sent: 02 June 2021 10:34 > To: Tamar Christina <tamar.christ...@arm.com> > Cc: Richard Earnshaw <richard.earns...@arm.com>; nd <n...@arm.com>; > Ramana Radhakrishnan <ramana.radhakrish...@arm.com>; Kyrylo > Tkachov <kyrylo.tkac...@arm.com> > Subject: RE: [PATCH][AArch32]: Correct sdot RTL on aarch32 > > ping > > > -----Original Message----- > > From: Gcc-patches <gcc-patches-boun...@gcc.gnu.org> On Behalf Of > Tamar > > Christina via Gcc-patches > > Sent: Tuesday, May 25, 2021 3:58 PM > > To: gcc-patches@gcc.gnu.org > > Cc: Richard Earnshaw <richard.earns...@arm.com>; nd <n...@arm.com>; > > Ramana Radhakrishnan <ramana.radhakrish...@arm.com> > > 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>" > > > > > > --