about summary refs log tree commit diff
path: root/sysdeps/powerpc/powerpc64/power4
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2013-03-06 00:10:21 +0000
committerJoseph Myers <joseph@codesourcery.com>2013-03-06 00:10:21 +0000
commit2d67d91ac08aa2f793d220ad8712541fefa0ba79 (patch)
tree26aa1d67b2b91074c8d2ca4206a938661ccf739d /sysdeps/powerpc/powerpc64/power4
parentcdcf361fda31ec8b3e93e89d5aa26ee5b68f8867 (diff)
downloadglibc-2d67d91ac08aa2f793d220ad8712541fefa0ba79.tar.gz
glibc-2d67d91ac08aa2f793d220ad8712541fefa0ba79.tar.xz
glibc-2d67d91ac08aa2f793d220ad8712541fefa0ba79.zip
Remove powerpc64 bounded-pointers code.
Diffstat (limited to 'sysdeps/powerpc/powerpc64/power4')
-rw-r--r--sysdeps/powerpc/powerpc64/power4/memcmp.S9
-rw-r--r--sysdeps/powerpc/powerpc64/power4/memcpy.S6
-rw-r--r--sysdeps/powerpc/powerpc64/power4/memset.S44
-rw-r--r--sysdeps/powerpc/powerpc64/power4/strncmp.S9
4 files changed, 15 insertions, 53 deletions
diff --git a/sysdeps/powerpc/powerpc64/power4/memcmp.S b/sysdeps/powerpc/powerpc64/power4/memcmp.S
index 7df52f810b..6378ecb2d9 100644
--- a/sysdeps/powerpc/powerpc64/power4/memcmp.S
+++ b/sysdeps/powerpc/powerpc64/power4/memcmp.S
@@ -17,13 +17,11 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memcmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5])  */
 
 	.machine power4
-EALIGN (BP_SYM(memcmp), 4, 0)
+EALIGN (memcmp, 4, 0)
 	CALL_MCOUNT 3
 
 #define rTMP	r0
@@ -31,9 +29,6 @@ EALIGN (BP_SYM(memcmp), 4, 0)
 #define rSTR1	r3	/* first string arg */
 #define rSTR2	r4	/* second string arg */
 #define rN	r5	/* max string length */
-/* Note:  The Bounded pointer support in this code is broken.  This code
-   was inherited from PPC32 and that support was never completed.
-   Current PPC gcc does not support -fbounds-check or -fbounded-pointers.  */
 #define rWORD1	r6	/* current word in s1 */
 #define rWORD2	r7	/* current word in s2 */
 #define rWORD3	r8	/* next word in s1 */
@@ -976,6 +971,6 @@ L(duzeroLength):
 	li	rRTN,0
 	blr
 
-END (BP_SYM (memcmp))
+END (memcmp)
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp, bcmp)
diff --git a/sysdeps/powerpc/powerpc64/power4/memcpy.S b/sysdeps/powerpc/powerpc64/power4/memcpy.S
index 734434af07..c43d1d2e4e 100644
--- a/sysdeps/powerpc/powerpc64/power4/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/power4/memcpy.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
    Returns 'dst'.
@@ -36,7 +34,7 @@
    Each case has a optimized unrolled loop.   */
 
 	.machine power4
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT 3
 
     cmpldi cr1,5,31
@@ -413,5 +411,5 @@ EALIGN (BP_SYM (memcpy), 5, 0)
     ld 31,-8(1)
     ld 3,-16(1)
     blr
-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS)
+END_GEN_TB (memcpy,TB_TOCLESS)
 libc_hidden_builtin_def (memcpy)
diff --git a/sysdeps/powerpc/powerpc64/power4/memset.S b/sysdeps/powerpc/powerpc64/power4/memset.S
index 198269272b..dbecee8b97 100644
--- a/sysdeps/powerpc/powerpc64/power4/memset.S
+++ b/sysdeps/powerpc/powerpc64/power4/memset.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5]));
    Returns 's'.
@@ -28,22 +26,15 @@
    to 0, to take advantage of the dcbz instruction.  */
 
 	.machine power4
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
 	CALL_MCOUNT 3
 
 #define rTMP	r0
 #define rRTN	r3	/* Initial value of 1st argument.  */
-#if __BOUNDED_POINTERS__
-# define rMEMP0	r4	/* Original value of 1st arg.  */
-# define rCHR	r5	/* Char to set in each byte.  */
-# define rLEN	r6	/* Length of region to set.  */
-# define rMEMP	r10	/* Address at which we are storing.  */
-#else
-# define rMEMP0	r3	/* Original value of 1st arg.  */
-# define rCHR	r4	/* Char to set in each byte.  */
-# define rLEN	r5	/* Length of region to set.  */
-# define rMEMP	r6	/* Address at which we are storing.  */
-#endif
+#define rMEMP0	r3	/* Original value of 1st arg.  */
+#define rCHR	r4	/* Char to set in each byte.  */
+#define rLEN	r5	/* Length of region to set.  */
+#define rMEMP	r6	/* Address at which we are storing.  */
 #define rALIGN	r7	/* Number of bytes we are setting now (when aligning). */
 #define rMEMP2	r8
 
@@ -51,14 +42,6 @@ EALIGN (BP_SYM (memset), 5, 0)
 #define rCLS	r8	/* Cache line size obtained from static.  */
 #define rCLM	r9	/* Cache line size mask to check for cache alignment.  */
 L(_memset):
-#if __BOUNDED_POINTERS__
-	cmpldi	cr1, rRTN, 0
-	CHECK_BOUNDS_BOTH_WIDE (rMEMP0, rTMP, rTMP2, rLEN)
-	beq	cr1, L(b0)
-	STORE_RETURN_VALUE (rMEMP0)
-	STORE_RETURN_BOUNDS (rTMP, rTMP2)
-L(b0):
-#endif
 /* Take care of case for size <= 4.  */
 	cmpldi	cr1, rLEN, 8
 	andi.	rALIGN, rMEMP0, 7
@@ -249,25 +232,16 @@ L(medium_27f):
 L(medium_28t):
 	std	rCHR, -8(rMEMP)
 	blr
-END_GEN_TB (BP_SYM (memset),TB_TOCLESS)
+END_GEN_TB (memset,TB_TOCLESS)
 libc_hidden_builtin_def (memset)
 
 /* Copied from bzero.S to prevent the linker from inserting a stub
    between bzero and memset.  */
-ENTRY (BP_SYM (__bzero))
+ENTRY (__bzero)
 	CALL_MCOUNT 3
-#if __BOUNDED_POINTERS__
-	mr	r6,r4
-	li	r5,0
-	mr	r4,r3
-	/* Tell memset that we don't want a return value.  */
-	li	r3,0
-	b	L(_memset)
-#else
 	mr	r5,r4
 	li	r4,0
 	b	L(_memset)
-#endif
-END_GEN_TB (BP_SYM (__bzero),TB_TOCLESS)
+END_GEN_TB (__bzero,TB_TOCLESS)
 
-weak_alias (BP_SYM (__bzero), BP_SYM (bzero))
+weak_alias (__bzero, bzero)
diff --git a/sysdeps/powerpc/powerpc64/power4/strncmp.S b/sysdeps/powerpc/powerpc64/power4/strncmp.S
index 19877fa785..1276e16a59 100644
--- a/sysdeps/powerpc/powerpc64/power4/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/power4/strncmp.S
@@ -17,14 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* See strlen.s for comments on how the end-of-string testing works.  */
 
 /* int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5])  */
 
-EALIGN (BP_SYM(strncmp), 4, 0)
+EALIGN (strncmp, 4, 0)
 	CALL_MCOUNT 3
 
 #define rTMP	r0
@@ -32,9 +30,6 @@ EALIGN (BP_SYM(strncmp), 4, 0)
 #define rSTR1	r3	/* first string arg */
 #define rSTR2	r4	/* second string arg */
 #define rN	r5	/* max string length */
-/* Note:  The Bounded pointer support in this code is broken.  This code
-   was inherited from PPC32 and that support was never completed.
-   Current PPC gcc does not support -fbounds-check or -fbounded-pointers.  */
 #define rWORD1	r6	/* current word in s1 */
 #define rWORD2	r7	/* current word in s2 */
 #define rWORD3  r10
@@ -175,5 +170,5 @@ L(u4):	sub	rRTN, rWORD1, rWORD2
 L(ux):
 	li	rRTN, 0
 	blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)