[PATCH] [AVX512]For vector compare to mask register, UNSPEC is needed instead of comparison operator [PR96243]

Hongtao Liu crazylht@gmail.com
Tue Aug 4 08:20:56 GMT 2020


ping^2

On Mon, Jul 27, 2020 at 5:31 PM Hongtao Liu <crazylht@gmail.com> wrote:
>
> ping
>
> On Mon, Jul 20, 2020 at 4:40 PM Hongtao Liu <crazylht@gmail.com> wrote:
> >
> > Correct PR number in ChangeLog
> > it's pr96243.
> >
> > On Mon, Jul 20, 2020 at 1:46 PM Hongtao Liu <crazylht@gmail.com> wrote:
> > >
> > > Hi:
> > >   For rtx like (eq:HI (V8SI 90) (V8SI 91)), cse will take it as a
> > > boolean value and try to do some optimization. But it is not true for
> > > vector compare, also other places in rtl passes hold the same
> > > assumption.
> > >
> > > Bootstrap is ok, regression test is ok for i386 backend.
> > >
> > > 2020-07-20  Hongtao Liu  <hongtao.liu@intel.com>
> > >
> > > gcc/
> > >         PR target/96243
> > >         * config/i386/i386-expand.c (ix86_expand_sse_cmp): Refine for
> > >         maskcmp.
> > >         (ix86_expand_mask_vec_cmp): Change prototype.
> > >         * config/i386/i386-protos.h (ix86_expand_mask_vec_cmp): Change
> > > prototype.
> > >         * config/i386/i386.c (ix86_print_operand): Remove operand
> > >         modifier 'I'.
> > >         * config/i386/sse.md
> > >         (*<avx512>_cmp<mode>3<mask_scalar_merge_name><round_saeonly_name>,
> > >         *<avx512>_cmp<mode>3<mask_scalar_merge_name>,
> > >         *<avx512>_ucmp<mode>3<mask_scalar_merge_name>,
> > >         *<avx512>_ucmp<mode>3<mask_scalar_merge_name>,
> > >         avx512f_maskcmp<mode>3): Deleted.
> > >
> > > gcc/testsuite
> > >         * gcc.target/i386/pr92865-1.c: Adjust testcase.
> > >
> > >
> > > --
> > > BR,
> > > Hongtao
> >
> >
> >
> > --
> > BR,
> > Hongtao
>
>
>
> --
> BR,
> Hongtao



-- 
BR,
Hongtao


More information about the Gcc-patches mailing list