diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2025-07-17 16:00:42 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2025-07-18 10:22:19 -0700 |
commit | aec84988738cd6bc67f22a26d54b0f5ac9167ee4 (patch) | |
tree | 43891b625b76e1d249d741f8ee76d0cd8b7cc64d /sysdeps/unix/sysv/linux/sparc/sparc64/Versions | |
parent | 13bf7812ef512d86d026ada34e75b22692152441 (diff) | |
download | glibc-master.zip glibc-master.tar.gz glibc-master.tar.bz2 |
There are 3 variants of modf and modff: SSE2, SSE4.1 and AVX. s_modf.c
and s_modff.c include the generic implementation compiled with the minimum
x86 ISA level. The IFUNC selector is used only if the minimum ISA level
is less than AVX. SSE4.1 variant is included only if the ISA level is
less than SSE4.1. AVX variant is included only the ISA level is less than
AVX.
AVX variant should be compiled with -mavx, not -msse2avx -DSSE2AVX which
are used to encode SSE assembly sources with EVEX encoding.
The routines that are shared between libc and libm should use different
rules to avoid using the same MODULE_NAME, to avoid potential issues
like BZ #33165 where __stack_chk_fail not being routed to the internal
symbol.
Tested with -march=x86-64, -march=x86-64-v2, -march=x86-64-v3 and
-march=x86-64-v4.
This fixes BZ #33165 and BZ #33173.
Co-authored-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'sysdeps/unix/sysv/linux/sparc/sparc64/Versions')
0 files changed, 0 insertions, 0 deletions