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

Hongtao Liu crazylht@gmail.com
Mon Jul 20 08:40:12 GMT 2020


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


More information about the Gcc-patches mailing list