Add ifunc tests for x86_64 memset_chk and memset
This patch adds ifunc tests for x86_64 memset_chk and memset. It also defines HAS_AVX2 with AVX2_Usable since AVX2 may not be usable even if processor has AVX2. * sysdeps/x86_64/multiarch/ifunc-impl-list.c (__libc_ifunc_impl_list): Add tests for memset_chk and memset. * sysdeps/x86_64/multiarch/init-arch.h (HAS_AVX2): Defined with AVX2_Usable.
This commit is contained in:
parent
257ce7127e
commit
d92d8f8a42
@ -1,3 +1,11 @@
|
||||
2014-06-20 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* sysdeps/x86_64/multiarch/ifunc-impl-list.c (__libc_ifunc_impl_list):
|
||||
Add tests for memset_chk and memset.
|
||||
|
||||
* sysdeps/x86_64/multiarch/init-arch.h (HAS_AVX2): Defined
|
||||
with AVX2_Usable.
|
||||
|
||||
2014-06-20 Maciej W. Rozycki <macro@codesourcery.com>
|
||||
|
||||
[BZ #16046]
|
||||
|
@ -61,6 +61,17 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
|
||||
__memmove_ssse3)
|
||||
IFUNC_IMPL_ADD (array, i, memmove, 1, __memmove_sse2))
|
||||
|
||||
/* Support sysdeps/x86_64/multiarch/memset_chk.S. */
|
||||
IFUNC_IMPL (i, name, __memset_chk,
|
||||
IFUNC_IMPL_ADD (array, i, __memset_chk, 1, __memset_chk_sse2)
|
||||
IFUNC_IMPL_ADD (array, i, __memset_chk, HAS_AVX2,
|
||||
__memset_chk_avx2))
|
||||
|
||||
/* Support sysdeps/x86_64/multiarch/memset.S. */
|
||||
IFUNC_IMPL (i, name, memset,
|
||||
IFUNC_IMPL_ADD (array, i, memset, 1, __memset_sse2)
|
||||
IFUNC_IMPL_ADD (array, i, memset, HAS_AVX2, __memset_avx2))
|
||||
|
||||
/* Support sysdeps/x86_64/multiarch/stpncpy.S. */
|
||||
IFUNC_IMPL (i, name, stpncpy,
|
||||
IFUNC_IMPL_ADD (array, i, stpncpy, HAS_SSSE3,
|
||||
|
@ -158,7 +158,6 @@ extern const struct cpu_features *__get_cpu_features (void)
|
||||
# define HAS_SSE4_1 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSE4_1)
|
||||
# define HAS_SSE4_2 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSE4_2)
|
||||
# define HAS_RTM HAS_CPU_FEATURE (COMMON_CPUID_INDEX_7, ebx, bit_RTM)
|
||||
# define HAS_AVX2 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_7, ebx, bit_AVX2)
|
||||
|
||||
# define index_Fast_Rep_String FEATURE_INDEX_1
|
||||
# define index_Fast_Copy_Backward FEATURE_INDEX_1
|
||||
@ -179,6 +178,7 @@ extern const struct cpu_features *__get_cpu_features (void)
|
||||
# define HAS_SLOW_BSF HAS_ARCH_FEATURE (Slow_BSF)
|
||||
# define HAS_FAST_UNALIGNED_LOAD HAS_ARCH_FEATURE (Fast_Unaligned_Load)
|
||||
# define HAS_AVX HAS_ARCH_FEATURE (AVX_Usable)
|
||||
# define HAS_AVX2 HAS_ARCH_FEATURE (AVX2_Usable)
|
||||
# define HAS_FMA HAS_ARCH_FEATURE (FMA_Usable)
|
||||
# define HAS_FMA4 HAS_ARCH_FEATURE (FMA4_Usable)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user