From 59ba2d2b542142e575d185f07e1eb96800d9862c Mon Sep 17 00:00:00 2001 From: Rajalakshmi Srinivasaraghavan Date: Mon, 2 Oct 2017 17:31:13 +0530 Subject: powerpc: Optimize memrchr for power8 Vectorized loops are used for sizes greater than 32B to improve performance over power7 optimization. This shows as an average of 25% improvement depending on the position of search character. The performance is same for shorter strings. --- sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c') diff --git a/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c b/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c index a1d3ca0088..6a88536c98 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c +++ b/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c @@ -193,6 +193,9 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, /* Support sysdeps/powerpc/powerpc64/multiarch/memrchr.c. */ IFUNC_IMPL (i, name, memrchr, + IFUNC_IMPL_ADD (array, i, memrchr, + hwcap2 & PPC_FEATURE2_ARCH_2_07, + __memrchr_power8) IFUNC_IMPL_ADD (array, i, memrchr, hwcap & PPC_FEATURE_HAS_VSX, __memrchr_power7) -- cgit 1.4.1