]> git.ipfire.org Git - thirdparty/gcc.git/commit
AVX10.2 ymm rounding: Support vcvttph2{,u}{dq,qq,w} intrins
authorHu, Lin1 <lin1.hu@intel.com>
Mon, 19 Aug 2024 02:09:00 +0000 (10:09 +0800)
committerHaochen Jiang <haochen.jiang@intel.com>
Mon, 19 Aug 2024 02:12:16 +0000 (10:12 +0800)
commit493c5096050523ebc05e5fa21612683a996b97a7
tree129468e0c5518571322ac90a19628cb1cd21123d
parent6e231f8504874828b23bbe89f3ef4086dcc15a44
AVX10.2 ymm rounding: Support vcvttph2{,u}{dq,qq,w} intrins

gcc/ChangeLog:

* config/i386/avx10_2roundingintrin.h: New intrins.
* config/i386/i386-builtin.def (BDESC): Add new builtins.
* config/i386/sse.md (avx512fp16_fix<fixunssuffix>_trunc<mode>2<mask_name>):
Extend round control for 256bit.
(unspec_avx512fp16_fix<vcvtt_uns_suffix>_trunc<mode>2<mask_name>):
Ditto.
(avx512fp16_fix<fixunssuffix>_trunc<mode>2<mask_name><round_saeonly_name>):
Add condition check.
* config/i386/subst.md
(round_saeonly_mode_condition): Add V16HI check for 256bit.

gcc/testsuite/ChangeLog:

* gcc.target/i386/avx-1.c: Add new builtin test.
* gcc.target/i386/sse-13.c: Ditto.
* gcc.target/i386/sse-14.c: Ditto.
* gcc.target/i386/sse-22.c: Add new macro test.
* gcc.target/i386/sse-23.c: Ditto.
* gcc.target/i386/avx10_2-rounding-2.c: Add test.
gcc/config/i386/avx10_2roundingintrin.h
gcc/config/i386/i386-builtin.def
gcc/config/i386/sse.md
gcc/config/i386/subst.md
gcc/testsuite/gcc.target/i386/avx-1.c
gcc/testsuite/gcc.target/i386/avx10_2-rounding-2.c
gcc/testsuite/gcc.target/i386/sse-13.c
gcc/testsuite/gcc.target/i386/sse-14.c
gcc/testsuite/gcc.target/i386/sse-22.c
gcc/testsuite/gcc.target/i386/sse-23.c