about summary refs log tree commit diff
path: root/sysdeps/powerpc/powerpc64/power7
diff options
context:
space:
mode:
authorWainer dos Santos Moschetta <wainersm@linux.vnet.ibm.com>2017-04-11 14:18:36 -0300
committerTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>2017-04-11 17:13:56 -0300
commitb6a66222096c2c4a93818e86cda1aff1e37ee451 (patch)
treeb72fb16b81941b5ee9b935beb5fac03f4536f20b /sysdeps/powerpc/powerpc64/power7
parent72fd128a08028488dbba13388dd38ec7fddd63f4 (diff)
downloadglibc-b6a66222096c2c4a93818e86cda1aff1e37ee451.tar.gz
glibc-b6a66222096c2c4a93818e86cda1aff1e37ee451.tar.xz
glibc-b6a66222096c2c4a93818e86cda1aff1e37ee451.zip
powerpc: refactor memcmp and memmove IFUNC.
Clean up the IFUNC implementations for powerpc in order to remove
unneeded macro definitions.

Tested on ppc64le with and without --disable-multi-arch flag.

	* sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S: Define the
	implementation-specific function name and remove unneeded
	macros definition.
	* sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S: Likewise.
	* sysdeps/powerpc/powerpc64/multiarch/memmove-power7.S: Likewise.
	* sysdeps/powerpc/powerpc64/power4/memcmp.S: Set a default function
	name if not defined and pass as parameter to macros accordingly.
	* sysdeps/powerpc/powerpc64/power7/memcmp.S: Likewise.
	* sysdeps/powerpc/powerpc64/power7/memmove.S: Likewise.
Diffstat (limited to 'sysdeps/powerpc/powerpc64/power7')
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memcmp.S8
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memmove.S7
2 files changed, 10 insertions, 5 deletions
diff --git a/sysdeps/powerpc/powerpc64/power7/memcmp.S b/sysdeps/powerpc/powerpc64/power7/memcmp.S
index 75399cb75a..96ce8cee25 100644
--- a/sysdeps/powerpc/powerpc64/power7/memcmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/memcmp.S
@@ -21,9 +21,11 @@
 /* int [r3] memcmp (const char *s1 [r3],
 		    const char *s2 [r4],
 		    size_t size [r5])  */
-
+#ifndef MEMCMP
+# define MEMCMP memcmp
+#endif
 	.machine power7
-EALIGN (memcmp, 4, 0)
+EALIGN (MEMCMP, 4, 0)
 	CALL_MCOUNT 3
 
 #define rRTN		r3
@@ -1054,6 +1056,6 @@ L(duzeroLength):
 	li	rRTN, 0
 	blr
 
-END (memcmp)
+END (MEMCMP)
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp, bcmp)
diff --git a/sysdeps/powerpc/powerpc64/power7/memmove.S b/sysdeps/powerpc/powerpc64/power7/memmove.S
index 6afe80a3b6..4c0f7c3571 100644
--- a/sysdeps/powerpc/powerpc64/power7/memmove.S
+++ b/sysdeps/powerpc/powerpc64/power7/memmove.S
@@ -27,8 +27,11 @@
    If source and destiny overlaps, a optimized backwards memcpy is used
    instead.  */
 
+#ifndef MEMMOVE
+# define MEMMOVE memmove
+#endif
 	.machine power7
-EALIGN (memmove, 5, 0)
+EALIGN (MEMMOVE, 5, 0)
 	CALL_MCOUNT 3
 
 L(_memmove):
@@ -816,7 +819,7 @@ L(end_unaligned_loop_bwd):
 	stb	r8,-7(r11)
 	/* Return original DST pointer.  */
 	blr
-END_GEN_TB (memmove, TB_TOCLESS)
+END_GEN_TB (MEMMOVE, TB_TOCLESS)
 libc_hidden_builtin_def (memmove)