about summary refs log tree commit diff
path: root/sysdeps/s390/ifunc-memset.h
diff options
context:
space:
mode:
authorStefan Liebler <stli@linux.ibm.com>2018-12-18 13:57:05 +0100
committerStefan Liebler <stli@linux.ibm.com>2018-12-18 13:57:05 +0100
commit07be392807ac78330da90f01408aa7e042a97a88 (patch)
tree61dbb46016a8c0699a234552b2bd4a6eaa063065 /sysdeps/s390/ifunc-memset.h
parent712a254a97ade7f48fb7a434339faa05c048ce1f (diff)
downloadglibc-07be392807ac78330da90f01408aa7e042a97a88.tar.gz
glibc-07be392807ac78330da90f01408aa7e042a97a88.tar.xz
glibc-07be392807ac78330da90f01408aa7e042a97a88.zip
S390: Implement bzero with memset.
This patch removes the bzero s390 implementation with mvcle and
adds entry points for bzero in memset ifunc variants.
Therefore an ifunc resolver is implemented for bzero, too.

ChangeLog:

	* sysdeps/s390/s390-32/bzero.S: Delete file.
	* sysdeps/s390/s390-64/bzero.S: Likewise.
	* sysdeps/s390/Makefile (sysdep_routines): Add bzero.
	* sysdeps/s390/bzero.c: New file.
	* sysdeps/s390/memset-z900.S: Add bzero entry points.
	* sysdeps/s390/ifunc-memset.h: Add bzero function macros.
	* sysdeps/s390/multiarch/ifunc-impl-list.c
	(__libc_ifunc_impl_list): Add bzero ifunc variants.
Diffstat (limited to 'sysdeps/s390/ifunc-memset.h')
-rw-r--r--sysdeps/s390/ifunc-memset.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sysdeps/s390/ifunc-memset.h b/sysdeps/s390/ifunc-memset.h
index 9a13b1001f..32bc155f7e 100644
--- a/sysdeps/s390/ifunc-memset.h
+++ b/sysdeps/s390/ifunc-memset.h
@@ -25,16 +25,19 @@
 
 #if defined HAVE_S390_MIN_Z196_ZARCH_ASM_SUPPORT
 # define MEMSET_DEFAULT		MEMSET_Z196
+# define BZERO_DEFAULT		BZERO_Z196
 # define HAVE_MEMSET_Z900_G5	0
 # define HAVE_MEMSET_Z10	0
 # define HAVE_MEMSET_Z196	1
 #elif defined HAVE_S390_MIN_Z10_ZARCH_ASM_SUPPORT
 # define MEMSET_DEFAULT		MEMSET_Z10
+# define BZERO_DEFAULT		BZERO_Z10
 # define HAVE_MEMSET_Z900_G5	0
 # define HAVE_MEMSET_Z10	1
 # define HAVE_MEMSET_Z196	HAVE_MEMSET_IFUNC
 #else
 # define MEMSET_DEFAULT		MEMSET_Z900_G5
+# define BZERO_DEFAULT		BZERO_Z900_G5
 # define HAVE_MEMSET_Z900_G5	1
 # define HAVE_MEMSET_Z10	HAVE_MEMSET_IFUNC
 # define HAVE_MEMSET_Z196	HAVE_MEMSET_IFUNC
@@ -48,18 +51,24 @@
 
 #if HAVE_MEMSET_Z900_G5
 # define MEMSET_Z900_G5		__memset_default
+# define BZERO_Z900_G5		__bzero_default
 #else
 # define MEMSET_Z900_G5		NULL
+# define BZERO_Z900_G5		NULL
 #endif
 
 #if HAVE_MEMSET_Z10
 # define MEMSET_Z10		__memset_z10
+# define BZERO_Z10		__bzero_z10
 #else
 # define MEMSET_Z10		NULL
+# define BZERO_Z10		NULL
 #endif
 
 #if HAVE_MEMSET_Z196
 # define MEMSET_Z196		__memset_z196
+# define BZERO_Z196		__bzero_z196
 #else
 # define MEMSET_Z196		NULL
+# define BZERO_Z196		NULL
 #endif