]> git.ipfire.org Git - thirdparty/gcc.git/commit
i386: Allow 64 bit mask register for -mno-evex512
authorHaochen Jiang <haochen.jiang@intel.com>
Wed, 20 Dec 2023 02:10:43 +0000 (10:10 +0800)
committerHaochen Jiang <haochen.jiang@intel.com>
Wed, 20 Dec 2023 02:10:43 +0000 (10:10 +0800)
commitd3545378dbcd08f8692dff0ff79676ad7983031f
treefe2c1494d78eac3ebde2b0b2e78e82762699c51b
parent576c1fc4401a9dae9757ac2e4fa37d05e130fa3d
i386: Allow 64 bit mask register for -mno-evex512

gcc/ChangeLog:

* config/i386/avx512bwintrin.h: Allow 64 bit mask intrin usage
for -mno-evex512.
* config/i386/i386-builtin.def: Remove OPTION_MASK_ISA2_EVEX512
for 64 bit mask builtins.
* config/i386/i386.cc (ix86_hard_regno_mode_ok): Allow 64 bit
mask register for -mno-evex512.
* config/i386/i386.md (SWI1248_AVX512BWDQ_64): Remove
TARGET_EVEX512.
(*zero_extendsidi2): Change isa attribute to avx512bw.
(kmov_isa): Ditto.
(*anddi_1): Ditto.
(*andn<mode>_1): Remove TARGET_EVEX512.
(*one_cmplsi2_1_zext): Change isa attribute to avx512bw.
(*ashl<mode>3_1): Ditto.
(*lshr<mode>3_1): Ditto.
* config/i386/sse.md (SWI1248_AVX512BWDQ): Remove TARGET_EVEX512.
(SWI1248_AVX512BW): Ditto.
(SWI1248_AVX512BWDQ2): Ditto.
(*knotsi_1_zext): Ditto.
(kunpckdi): Ditto.
(SWI24_MASK): Removed.
(vec_pack_trunc_<mode>): Change iterator from SWI24_MASK to SWI24.
(vec_unpacks_lo_di): Remove TARGET_EVEX512.
(SWI48x_MASK): Removed.
(vec_unpacks_hi_<mode>): Change iterator from SWI48x_MASK to SWI48x.

gcc/testsuite/ChangeLog:

* gcc.target/i386/avx10_1-6.c: Remove check for errors.
* gcc.target/i386/noevex512-2.c: Diito.
gcc/config/i386/avx512bwintrin.h
gcc/config/i386/i386-builtin.def
gcc/config/i386/i386.cc
gcc/config/i386/i386.md
gcc/config/i386/sse.md
gcc/testsuite/gcc.target/i386/avx10_1-6.c
gcc/testsuite/gcc.target/i386/noevex512-2.c