glibc/sysdeps/s390/multiarch/wmemcmp.c
Stefan Liebler f21216015b S390: Optimize wmemcmp.
This patch provides optimized version of wmemcmp with the z13 vector
instructions.

ChangeLog:

	* sysdeps/s390/multiarch/wmemcmp-c.c: New File.
	* sysdeps/s390/multiarch/wmemcmp-vx.S: Likewise.
	* sysdeps/s390/multiarch/wmemcmp.c: Likewise.
	* sysdeps/s390/multiarch/Makefile
	(sysdep_routines): Add wmemcmp functions.
	* sysdeps/s390/multiarch/ifunc-impl-list-common.c
	(__libc_ifunc_impl_list_common): Add ifunc test for wmemcmp.
	* benchtests/bench-wmemcmp.c: New File.
	* benchtests/Makefile (wcsmbs-bench): Add wmemcmp.
2015-08-26 10:26:25 +02:00

28 lines
1.0 KiB
C

/* Multiple versions of wmemcmp.
Copyright (C) 2015 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
#if defined HAVE_S390_VX_ASM_SUPPORT && IS_IN (libc)
# include <wchar.h>
# include <ifunc-resolve.h>
s390_vx_libc_ifunc2 (__wmemcmp, wmemcmp)
#else
# include <wcsmbs/wmemcmp.c>
#endif /* !(defined HAVE_S390_VX_ASM_SUPPORT && IS_IN (libc)) */