Re: [PATCH][Arm] Auto-vectorization for MVE: vmin/vmax

2020-10-21 Thread Dennis Zhang via Gcc-patches
Hi Kyrylo,

> 
> From: Kyrylo Tkachov 
> Sent: Wednesday, October 14, 2020 10:15 AM
> To: Dennis Zhang; gcc-patches@gcc.gnu.org
> Cc: nd; Richard Earnshaw; Ramana Radhakrishnan
> Subject: RE: [PATCH][Arm] Auto-vectorization for MVE: vmin/vmax
>
> Hi Dennis,
>
> > -Original Message-
> > From: Dennis Zhang 
> > Sent: 06 October 2020 17:59
> > To: gcc-patches@gcc.gnu.org
> > Cc: Kyrylo Tkachov ; nd ;
> > Richard Earnshaw ; Ramana Radhakrishnan
> > 
> > Subject: [PATCH][Arm] Auto-vectorization for MVE: vmin/vmax
> >
> > Hi all,
> >
> > This patch enables MVE vmin/vmax instructions for auto-vectorization.
> > MVE target is included in expander smin3, umin3,
> > smax3
> > and umax3 for vectorization.
> > Related insns for vmin/vmax in mve.md are modified to use smin, umin,
> > smax and umax expressions instead of unspec to support the expanders.
> >
> > Regression tested on arm-none-eabi and bootstraped on
> > arm-none-linux-gnueabihf.
> >
> > Is it OK for trunk please?
>
> Ok.
> Thanks,
> Kyrill
>

Thanks for your approval.
This patch has been committed to trunk at 
76835dca95ab9f3f106a0db1e6152ad0740b38b3

Cheers
Dennis

RE: [PATCH][Arm] Auto-vectorization for MVE: vmin/vmax

2020-10-14 Thread Kyrylo Tkachov via Gcc-patches
Hi Dennis,

> -Original Message-
> From: Dennis Zhang 
> Sent: 06 October 2020 17:59
> To: gcc-patches@gcc.gnu.org
> Cc: Kyrylo Tkachov ; nd ;
> Richard Earnshaw ; Ramana Radhakrishnan
> 
> Subject: [PATCH][Arm] Auto-vectorization for MVE: vmin/vmax
> 
> Hi all,
> 
> This patch enables MVE vmin/vmax instructions for auto-vectorization.
> MVE target is included in expander smin3, umin3,
> smax3
> and umax3 for vectorization.
> Related insns for vmin/vmax in mve.md are modified to use smin, umin,
> smax and umax expressions instead of unspec to support the expanders.
> 
> Regression tested on arm-none-eabi and bootstraped on
> arm-none-linux-gnueabihf.
> 
> Is it OK for trunk please?

Ok.
Thanks,
Kyrill

> 
> Thanks
> Dennis
> 
> gcc/ChangeLog:
> 
> 2020-10-02  Dennis Zhang  
> 
> * config/arm/mve.md (mve_vmaxq_): Replace with ...
> (mve_vmaxq_s, mve_vmaxq_u): ... these new insns to
> use smax/umax instead of VMAXQ.
> (mve_vminq_): Replace with ...
> (mve_vminq_s, mve_vminq_u): ... these new insns to
> use smin/umin instead of VMINQ.
> (mve_vmaxnmq_f): Use smax instead of VMAXNMQ_F.
> (mve_vminnmq_f): Use smin instead of VMINNMQ_F.
> * config/arm/vec-common.md (smin3): Use the new mode macros
> ARM_HAVE__ARITH.
> (umin3, smax3, umax3): Likewise.
> 
> gcc/testsuite/ChangeLog:
> 
> 2020-10-02  Dennis Zhang  
> 
> * gcc.target/arm/simd/mve-vminmax_1.c: New test.