]> git.ipfire.org Git - thirdparty/gcc.git/commit
i386: Remove 256 bit rounding for AVX10.2 minmax and convert instructions
authorHaochen Jiang <haochen.jiang@intel.com>
Mon, 24 Mar 2025 06:23:37 +0000 (14:23 +0800)
committerHaochen Jiang <haochen.jiang@intel.com>
Mon, 24 Mar 2025 06:23:37 +0000 (14:23 +0800)
commit1a5a77f1eb43acdf90fff2da0a0f37186aecbdf4
tree066f62e940b49d58496bee03ec441a60cb640423
parent6b36b659e379723f97a2b4adf63276378784e06d
i386: Remove 256 bit rounding for AVX10.2 minmax and convert instructions

Since we will support 512 bit on both P-core and E-core, 256 bit
rounding is not that useful because we currently have rounding feature
directly on E-core now and no need to use 256-bit rounding as somehow
a workaround. This patch will remove those in AVX10.2 minmax and convert
intrins.

gcc/ChangeLog:

* config/i386/avx10_2convertintrin.h: Remove rounding intrins.
Use non-round builtins.
* config/i386/avx10_2minmaxintrin.h: Ditto.
* config/i386/i386-builtin.def (BDESC): Ditto.
* config/i386/i386-builtin-types.def: Remove unused type.
* config/i386/i386-expand.cc
(ix86_expand_args_builtin): Ditto.
(ix86_expand_round_builtin): Ditto.

gcc/testsuite/ChangeLog:

* gcc.target/i386/avx-1.c: Remove rounding tests.
* gcc.target/i386/avx10_2-convert-1.c: Ditto.
* gcc.target/i386/avx10_2-minmax-1.c: Ditto.
* gcc.target/i386/sse-13.c: Ditto.
* gcc.target/i386/sse-14.c: Ditto.
* gcc.target/i386/sse-22.c: Ditto.
* gcc.target/i386/sse-23.c: Ditto.
12 files changed:
gcc/config/i386/avx10_2convertintrin.h
gcc/config/i386/avx10_2minmaxintrin.h
gcc/config/i386/i386-builtin-types.def
gcc/config/i386/i386-builtin.def
gcc/config/i386/i386-expand.cc
gcc/testsuite/gcc.target/i386/avx-1.c
gcc/testsuite/gcc.target/i386/avx10_2-convert-1.c
gcc/testsuite/gcc.target/i386/avx10_2-minmax-1.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