This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.17-329-g2d67d91


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  2d67d91ac08aa2f793d220ad8712541fefa0ba79 (commit)
      from  cdcf361fda31ec8b3e93e89d5aa26ee5b68f8867 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=2d67d91ac08aa2f793d220ad8712541fefa0ba79

commit 2d67d91ac08aa2f793d220ad8712541fefa0ba79
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Wed Mar 6 00:10:21 2013 +0000

    Remove powerpc64 bounded-pointers code.

diff --git a/ChangeLog b/ChangeLog
index b1e02a7..e7fa53a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,149 @@
+2013-03-06  Joseph Myers  <joseph@codesourcery.com>
+
+	[BZ #13550]
+	* sysdeps/generic/bp-sym.h: Remove file.
+	* sysdeps/powerpc/powerpc64/bp-asm.h: Likewise.
+	* sysdeps/powerpc/powerpc64/__longjmp-common.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__longjmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/a2/memcpy.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/cell/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/memcpy.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/memset.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	(memset) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(memset) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	(__bzero): Don't use BP_SYM.
+	(__bzero) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(__bzero) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc64/power4/memcmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcmp): Don't use BP_SYM.  Remove comment about bounded
+	pointers.
+	* sysdeps/powerpc/powerpc64/power4/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power4/memset.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	(memset) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(memset) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	(__bzero): Don't use BP_SYM.
+	(__bzero) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(__bzero) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc64/power4/strncmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM.  Remove comment about bounded
+	pointers.
+	* sysdeps/powerpc/powerpc64/power6/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power6/memset.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	(memset) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(memset) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	(__bzero): Don't use BP_SYM.
+	(__bzero) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(__bzero) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc64/power7/memchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__memchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/memcmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcmp): Don't use BP_SYM.  Remove comment about bounded
+	pointers.
+	* sysdeps/powerpc/powerpc64/power7/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/mempcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__mempcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/memrchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__memrchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/memset.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	(__bzero): Likewise.
+	* sysdeps/powerpc/powerpc64/power7/rawmemchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__rawmemchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/strcasecmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__STRCMP): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/strchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/strchrnul.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__strchrnul): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/strlen.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strlen): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/power7/strncmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM.  Remove comment about bounded
+	pointers.
+	* sysdeps/powerpc/powerpc64/power7/strnlen.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__strnlen): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc64/setjmp-common.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__GI__setjmp): Don't use BP_SYM.
+	(_setjmp): Likewise.
+	(__sigsetjmp): Likewise.
+	* sysdeps/powerpc/powerpc64/start.S: Don't include "bp-sym.h".
+	(L(start_addresses)): Don't use BP_SYM.
+	(_start): Likewise.
+	* sysdeps/powerpc/powerpc64/stpcpy.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__stpcpy): Don't use BP_SYM, CHECK_BOUNDS_LOW,
+	STORE_RETURN_BOUNDS, CHECK_BOUNDS_HIGH and STORE_RETURN_VALUE.
+	(__stpcpy) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(__stpcpy) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc64/strchr.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strchr): Don't use BP_SYM, CHECK_BOUNDS_LOW, STORE_RETURN_BOUNDS,
+	CHECK_BOUNDS_HIGH_RTN and STORE_RETURN_VALUE.  Remove comment
+	about bounded pointers.
+	(strchr) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(strchr) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc64/strcmp.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strcmp): Don't use BP_SYM and CHECK_BOUNDS_LOW.  Remove comment
+	about bounded pointers.  Remove GKM FIXME comments.
+	(strcmp) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc64/strcpy.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strcpy): Don't use BP_SYM, CHECK_BOUNDS_LOW and
+	STORE_RETURN_BOUNDS.  Remove comment about bounded pointers.
+	Remove GKM FIXME comments.
+	(strcpy) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(strcpy) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc64/strlen.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strlen): Don't use BP_SYM and CHECK_BOUNDS_LOW.  Remove comment
+	about bounded pointers.  Remove GKM FIXME comment.
+	* sysdeps/powerpc/powerpc64/strncmp.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM.  Remove comment about bounded
+	pointers.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__brk): Don't use BP_SYM and DISCARD_BOUNDS.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__clone): Don't use BP_SYM and DISCARD_BOUNDS.  Remove GKM FIXME
+	comment.
+
 2013-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
 
 	* stdio-common/vfprintf.c (vfprintf): Check malloc return; don't
diff --git a/NEWS b/NEWS
index 7ece484..a12b1c8 100644
--- a/NEWS
+++ b/NEWS
@@ -9,9 +9,9 @@ Version 2.18
 
 * The following bugs are resolved with this release:
 
-  11561, 13951, 14142, 14200, 14317, 14327, 14496, 14920, 14964, 14981,
-  14982, 14985, 14994, 14996, 15003, 15006, 15020, 15023, 15036, 15054,
-  15055, 15062, 15078, 15160.
+  11561, 13550, 13951, 14142, 14200, 14317, 14327, 14496, 14920, 14964,
+  14981, 14982, 14985, 14994, 14996, 15003, 15006, 15020, 15023, 15036,
+  15054, 15055, 15062, 15078, 15160.
 
 * Add support for calling C++11 thread_local object destructors on thread
   and program exit.  This needs compiler support for offloading C++11
diff --git a/sysdeps/generic/bp-sym.h b/sysdeps/generic/bp-sym.h
deleted file mode 100644
index 089912a..0000000
--- a/sysdeps/generic/bp-sym.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Bounded-pointer symbol modifier.
-   Copyright (C) 2000-2013 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Greg McGary <greg@mcgary.org>
-
-   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/>.  */
-
-#define BP_SYM(name) _BP_SYM (name)
-#if __BOUNDED_POINTERS__
-# define _BP_SYM(name) __BP_##name
-#else
-# define _BP_SYM(name) name
-#endif
diff --git a/sysdeps/powerpc/powerpc64/__longjmp-common.S b/sysdeps/powerpc/powerpc64/__longjmp-common.S
index 1803275..70c3704 100644
--- a/sysdeps/powerpc/powerpc64/__longjmp-common.S
+++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S
@@ -24,8 +24,6 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #ifndef __NO_VMX__
 	.section	".toc","aw"
@@ -45,9 +43,8 @@
 #endif
 
 	.machine	"altivec"
-ENTRY (BP_SYM (__longjmp))
+ENTRY (__longjmp)
 	CALL_MCOUNT 2
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
 #ifndef __NO_VMX__
 	ld    r5,.LC__dl_hwcap@toc(r2)
 # ifdef SHARED
@@ -178,4 +175,4 @@ L(no_vmx):
 	lfd fp31,((JB_FPRS+17)*8)(r3)
 	mr r3,r4
 	blr
-END (BP_SYM (__longjmp))
+END (__longjmp)
diff --git a/sysdeps/powerpc/powerpc64/a2/memcpy.S b/sysdeps/powerpc/powerpc64/a2/memcpy.S
index 42ec5e3..84c82bb 100644
--- a/sysdeps/powerpc/powerpc64/a2/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/a2/memcpy.S
@@ -18,8 +18,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #define PREFETCH_AHEAD 4        /* no cache lines SRC prefetching ahead  */
 #define ZERO_AHEAD 2            /* no cache lines DST zeroing ahead  */
@@ -32,7 +30,7 @@
 
 
 	.machine  a2
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT 3
 
 	dcbt    0,r4            /* Prefetch ONE SRC cacheline  */
@@ -522,5 +520,5 @@ L(endloop2_128):
 	b       L(lessthancacheline)
 
 
-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/bp-asm.h b/sysdeps/powerpc/powerpc64/bp-asm.h
deleted file mode 100644
index 6c6c387..0000000
--- a/sysdeps/powerpc/powerpc64/bp-asm.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/* Bounded-pointer definitions for PowerPC64 assembler.
-   Copyright (C) 2000-2013 Free Software Foundation, Inc.
-   Contributed by Greg McGary <greg@mcgary.org>
-
-   This file is part of the GNU C Library.  Its master source is NOT part of
-   the C library, however.  The master source lives in the GNU MP Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 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
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If
-   not, see <http://www.gnu.org/licenses/>.  */
-
-#if __BOUNDED_POINTERS__
-
-/* Byte offsets of BP components.  */
-# define oVALUE	0
-# define oLOW	4
-# define oHIGH	8
-
-/* Don't check bounds, just convert the BP register to its simple
-   pointer value.  */
-
-# define DISCARD_BOUNDS(rBP)			\
-	ld	rBP, oVALUE(rBP)
-
-/* Check low bound, with the side effect that the BP register is converted
-   its simple pointer value.  Move the high bound into a register for
-   later use.  */
-
-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH)	\
-	ld	rHIGH, oHIGH(rBP);		\
-	ld	rLOW, oLOW(rBP);		\
-	ld	rBP, oVALUE(rBP);		\
-	tdllt	rBP, rLOW
-
-/* Check the high bound, which is in a register, using the given
-   conditional trap instruction.  */
-
-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc) \
-	TWLcc	rVALUE, rHIGH
-
-/* Check the high bound, which is stored at the return-value's high
-   bound slot, using the given conditional trap instruction.  */
-
-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc)	\
-	ld	rHIGH, oHIGH(rRTN);			\
-	TWLcc	rVALUE, rHIGH
-
-/* Check both bounds, with the side effect that the BP register is
-   converted to its simple pointer value.  */
-
-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH)	\
-	CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH);	\
-	tdlge	rBP, rHIGH
-
-/* Check bounds on a memory region of given length, with the side
-   effect that the BP register is converted to its simple pointer
-   value.  */
-
-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH)	\
-	CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH);			\
-	sub	rHIGH, rHIGH, rLENGTH;				\
-	tdlgt	rBP, rHIGH
-
-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH)	\
-	CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH);			\
-	subi	rHIGH, rHIGH, LENGTH;				\
-	tdlgt	rBP, rHIGH
-
-/* Store a pointer value register into the return-value's pointer
-   value slot.  */
-
-# define STORE_RETURN_VALUE(rVALUE)		\
-	std	rVALUE, oVALUE(rRTN)
-
-/* Store a low and high bounds into the return-value's pointer bounds
-   slots.  */
-
-# define STORE_RETURN_BOUNDS(rLOW, rHIGH)	\
-	std	rLOW, oLOW(rRTN);		\
-	std	rHIGH, oHIGH(rRTN)
-
-/* Stuff zero value/low/high into the BP addressed by rRTN.  */
-
-# define RETURN_NULL_BOUNDED_POINTER		\
-	li	r4, 0;				\
-	STORE_RETURN_VALUE (r4);		\
-	STORE_RETURN_BOUNDS (r4, r4)
-
-#else
-
-# define DISCARD_BOUNDS(rBP)
-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH)
-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc)
-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc)
-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH)
-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH)
-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH)
-# define STORE_RETURN_VALUE(rVALUE)
-# define STORE_RETURN_BOUNDS(rLOW, rHIGH)
-
-# define RETURN_NULL_BOUNDED_POINTER li rRTN, 0
-
-#endif
diff --git a/sysdeps/powerpc/powerpc64/cell/memcpy.S b/sysdeps/powerpc/powerpc64/cell/memcpy.S
index 5ba4ebf..a271965 100644
--- a/sysdeps/powerpc/powerpc64/cell/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/cell/memcpy.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #define PREFETCH_AHEAD 6	/* no cache lines SRC prefetching ahead  */
 #define ZERO_AHEAD 4		/* no cache lines DST zeroing ahead  */
@@ -41,7 +39,7 @@
 
 .align  7
 
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT 3
 
 	dcbt	0,r4		/* Prefetch ONE SRC cacheline  */
@@ -240,5 +238,5 @@ EALIGN (BP_SYM (memcpy), 5, 0)
 	stb	r0,0(r6)
 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/memcpy.S b/sysdeps/powerpc/powerpc64/memcpy.S
index 7c1b656..b8c4cc8 100644
--- a/sysdeps/powerpc/powerpc64/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/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'.
@@ -35,7 +33,7 @@
    possible when both source and destination are doubleword aligned.
    Each case has a optimized unrolled loop.   */
 
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT 3
 
     cmpldi cr1,5,31
@@ -364,5 +362,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/memset.S b/sysdeps/powerpc/powerpc64/memset.S
index f107f8b..6acf149 100644
--- a/sysdeps/powerpc/powerpc64/memset.S
+++ b/sysdeps/powerpc/powerpc64/memset.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.section	".toc","aw"
 .LC0:
@@ -33,22 +31,15 @@
    cache line (256 bits). There is a special case for setting cache lines
    to 0, to take advantage of the dcbz instruction.  */
 
-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
 
@@ -56,14 +47,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
@@ -261,25 +244,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/memcmp.S b/sysdeps/powerpc/powerpc64/power4/memcmp.S
index 7df52f8..6378ecb 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 734434a..c43d1d2 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 1982692..dbecee8 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 19877fa..1276e16 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)
diff --git a/sysdeps/powerpc/powerpc64/power6/memcpy.S b/sysdeps/powerpc/powerpc64/power6/memcpy.S
index 64f5b2f..55c0d71 100644
--- a/sysdeps/powerpc/powerpc64/power6/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/power6/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'.
@@ -43,7 +41,7 @@
    for the destination.  */
 
 	.machine	"power6"
-EALIGN (BP_SYM (memcpy), 7, 0)
+EALIGN (memcpy, 7, 0)
 	CALL_MCOUNT 3
 
     cmpldi cr1,5,31
@@ -1165,5 +1163,5 @@ L(du_done):
     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/power6/memset.S b/sysdeps/powerpc/powerpc64/power6/memset.S
index a7913a1..541a45f 100644
--- a/sysdeps/powerpc/powerpc64/power6/memset.S
+++ b/sysdeps/powerpc/powerpc64/power6/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,34 +26,19 @@
    to 0, to take advantage of the dcbz instruction.  */
 
 	.machine power6
-EALIGN (BP_SYM (memset), 7, 0)
+EALIGN (memset, 7, 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
 #define rMEMP3	r9	/* Alt mem pointer.  */
 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
@@ -393,25 +376,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/power7/memchr.S b/sysdeps/powerpc/powerpc64/power7/memchr.S
index 7b71a19..3416897 100644
--- a/sysdeps/powerpc/powerpc64/power7/memchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/memchr.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memchr (char *s [r3], int byte [r4], int size [r5])  */
 	.machine  power7
-ENTRY (BP_SYM (__memchr))
+ENTRY (__memchr)
 	CALL_MCOUNT 2
 	dcbt	0,r3
 	clrrdi  r8,r3,3
@@ -202,6 +200,6 @@ L(loop_small):                /* loop_small has been unrolled.  */
 	blr
 
 
-END (BP_SYM (__memchr))
-weak_alias (BP_SYM (__memchr), BP_SYM(memchr))
+END (__memchr)
+weak_alias (__memchr, memchr)
 libc_hidden_builtin_def (memchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/memcmp.S b/sysdeps/powerpc/powerpc64/power7/memcmp.S
index a7caa48..f190c64 100644
--- a/sysdeps/powerpc/powerpc64/power7/memcmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/memcmp.S
@@ -17,15 +17,13 @@
    <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 power7
-EALIGN (BP_SYM(memcmp),4,0)
+EALIGN (memcmp,4,0)
 	CALL_MCOUNT 3
 
 #define rTMP	r0
@@ -33,9 +31,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 */
@@ -978,6 +973,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/power7/memcpy.S b/sysdeps/powerpc/powerpc64/power7/memcpy.S
index aa0db8e..800a9f1 100644
--- a/sysdeps/powerpc/powerpc64/power7/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/power7/memcpy.S
@@ -18,15 +18,13 @@
    <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'.  */
 
 	.machine power7
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT 3
 
 	cmpldi  cr1,5,31
@@ -502,5 +500,5 @@ L(end_unaligned_loop):
 	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/power7/mempcpy.S b/sysdeps/powerpc/powerpc64/power7/mempcpy.S
index 9993040..f20be93 100644
--- a/sysdeps/powerpc/powerpc64/power7/mempcpy.S
+++ b/sysdeps/powerpc/powerpc64/power7/mempcpy.S
@@ -18,15 +18,13 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 
 /* __ptr_t [r3] __mempcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
     Returns 'dst' + 'len'.  */
 
 	.machine  power7
-EALIGN (BP_SYM (__mempcpy), 5, 0)
+EALIGN (__mempcpy, 5, 0)
 	CALL_MCOUNT 3
 
 	cmpldi	cr1,5,31
@@ -451,7 +449,7 @@ L(end_unaligned_loop):
 	add	3,3,5
 	blr
 
-END_GEN_TB (BP_SYM (__mempcpy),TB_TOCLESS)
-libc_hidden_def (BP_SYM (__mempcpy))
-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy))
+END_GEN_TB (__mempcpy,TB_TOCLESS)
+libc_hidden_def (__mempcpy)
+weak_alias (__mempcpy, mempcpy)
 libc_hidden_builtin_def (mempcpy)
diff --git a/sysdeps/powerpc/powerpc64/power7/memrchr.S b/sysdeps/powerpc/powerpc64/power7/memrchr.S
index d3ffe4c..d24fbbb 100644
--- a/sysdeps/powerpc/powerpc64/power7/memrchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/memrchr.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memrchr (char *s [r3], int byte [r4], int size [r5])  */
 	.machine  power7
-ENTRY (BP_SYM (__memrchr))
+ENTRY (__memrchr)
 	CALL_MCOUNT
 	dcbt	0,r3
 	mr	r7,r3
@@ -174,6 +172,6 @@ L(loop_small):
 	ble	L(null)
 	b	L(loop_small)
 
-END (BP_SYM (__memrchr))
-weak_alias (BP_SYM (__memrchr), BP_SYM(memrchr))
+END (__memrchr)
+weak_alias (__memrchr, memrchr)
 libc_hidden_builtin_def (memrchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/memset.S b/sysdeps/powerpc/powerpc64/power7/memset.S
index abb2d35..b24cfa1 100644
--- a/sysdeps/powerpc/powerpc64/power7/memset.S
+++ b/sysdeps/powerpc/powerpc64/power7/memset.S
@@ -18,14 +18,12 @@
    <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'.  */
 
 	.machine power7
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
 	CALL_MCOUNT 3
 
 L(_memset):
@@ -382,16 +380,16 @@ L(small):
 	stw	4,4(10)
 	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
 	mr	r5,r4
 	li	r4,0
 	b	L(_memset)
-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/power7/rawmemchr.S b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
index 5fc284d..50a33d8 100644
--- a/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] rawmemchr (void *s [r3], int c [r4])  */
 	.machine  power7
-ENTRY (BP_SYM(__rawmemchr))
+ENTRY (__rawmemchr)
 	CALL_MCOUNT 2
 	dcbt	0,r3
 	clrrdi	r8,r3,3	      /* Align the address to doubleword boundary.  */
@@ -97,6 +95,6 @@ L(done):
 	srdi	r0,r0,3	      /* Convert leading zeroes to bytes.  */
 	add	r3,r8,r0      /* Return address of the matching char.  */
 	blr
-END (BP_SYM (__rawmemchr))
+END (__rawmemchr)
 weak_alias (__rawmemchr,rawmemchr)
 libc_hidden_builtin_def (__rawmemchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/strcasecmp.S b/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
index 6323154..9eee384 100644
--- a/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 #include <locale-defines.h>
 
 /* int [r3] strcasecmp (const char *s1 [r3], const char *s2 [r4] )
@@ -33,7 +31,7 @@
 # define STRCMP   strcasecmp
 #endif
 
-ENTRY (BP_SYM (__STRCMP))
+ENTRY (__STRCMP)
 	CALL_MCOUNT 2
 
 #define rRTN	r3	/* Return value */
@@ -118,7 +116,7 @@ L(done):
 	subf	r0, rLWR2, rLWR1
 	extsw	rRTN, r0
 	blr
-END (BP_SYM (__STRCMP))
+END (__STRCMP)
 
-weak_alias (BP_SYM (__STRCMP), BP_SYM (STRCMP))
+weak_alias (__STRCMP, STRCMP)
 libc_hidden_builtin_def (__STRCMP)
diff --git a/sysdeps/powerpc/powerpc64/power7/strchr.S b/sysdeps/powerpc/powerpc64/power7/strchr.S
index 04b7d4f..3ffe7a1 100644
--- a/sysdeps/powerpc/powerpc64/power7/strchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/strchr.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strchr (char *s [r3], int c [r4])  */
 	.machine  power7
-ENTRY (BP_SYM(strchr))
+ENTRY (strchr)
 	CALL_MCOUNT 2
 	dcbt	0,r3
 	clrrdi	r8,r3,3	      /* Align the address to doubleword boundary.  */
@@ -198,6 +196,6 @@ L(done_null):
 	srdi	r0,r0,3	      /* Convert leading zeros to bytes.  */
 	add	r3,r8,r0      /* Return address of the matching null byte.  */
 	blr
-END (BP_SYM (strchr))
-weak_alias (BP_SYM (strchr), BP_SYM (index))
+END (strchr)
+weak_alias (strchr, index)
 libc_hidden_builtin_def (strchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/strchrnul.S b/sysdeps/powerpc/powerpc64/power7/strchrnul.S
index 2b1e1c0..9dbc51b 100644
--- a/sysdeps/powerpc/powerpc64/power7/strchrnul.S
+++ b/sysdeps/powerpc/powerpc64/power7/strchrnul.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strchrnul (char *s [r3], int c [r4])  */
 	.machine  power7
-ENTRY (BP_SYM(__strchrnul))
+ENTRY (__strchrnul)
 	CALL_MCOUNT 2
 	dcbt	0,r3
 	clrrdi	r8,r3,3	      /* Align the address to doubleword boundary.  */
@@ -112,6 +110,6 @@ L(done):
 	srdi	r0,r0,3	      /* Convert leading zeros to bytes.  */
 	add	r3,r8,r0      /* Return address of matching c/null byte.  */
 	blr
-END (BP_SYM (__strchrnul))
+END (__strchrnul)
 weak_alias (__strchrnul,strchrnul)
 libc_hidden_builtin_def (__strchrnul)
diff --git a/sysdeps/powerpc/powerpc64/power7/strlen.S b/sysdeps/powerpc/powerpc64/power7/strlen.S
index a36aa7d..3432169 100644
--- a/sysdeps/powerpc/powerpc64/power7/strlen.S
+++ b/sysdeps/powerpc/powerpc64/power7/strlen.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strlen (char *s [r3])  */
 	.machine  power7
-ENTRY (BP_SYM (strlen))
+ENTRY (strlen)
 	CALL_MCOUNT 1
 	dcbt	0,r3
 	clrrdi	r4,r3,3	      /* Align the address to doubleword boundary.  */
@@ -94,5 +92,5 @@ L(done):
 	srdi	r0,r0,3	      /* Convert leading zeroes to bytes.  */
 	add	r3,r5,r0      /* Compute final length.  */
 	blr
-END (BP_SYM (strlen))
+END (strlen)
 libc_hidden_builtin_def (strlen)
diff --git a/sysdeps/powerpc/powerpc64/power7/strncmp.S b/sysdeps/powerpc/powerpc64/power7/strncmp.S
index 25a6baf..77ecad5 100644
--- a/sysdeps/powerpc/powerpc64/power7/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/strncmp.S
@@ -17,8 +17,6 @@
    <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.  */
 
@@ -26,7 +24,7 @@
 		     const char *s2 [r4],
 		     size_t size [r5])  */
 
-EALIGN (BP_SYM(strncmp),5,0)
+EALIGN (strncmp,5,0)
 	CALL_MCOUNT 3
 
 #define rTMP	r0
@@ -34,9 +32,6 @@ EALIGN (BP_SYM(strncmp),5,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
@@ -179,5 +174,5 @@ L(u4):	sub	rRTN,rWORD1,rWORD2
 L(ux):
 	li	rRTN,0
 	blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)
diff --git a/sysdeps/powerpc/powerpc64/power7/strnlen.S b/sysdeps/powerpc/powerpc64/power7/strnlen.S
index 23e0a35..37c7dbf 100644
--- a/sysdeps/powerpc/powerpc64/power7/strnlen.S
+++ b/sysdeps/powerpc/powerpc64/power7/strnlen.S
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strnlen (char *s [r3], int size [r4])  */
 	.machine  power7
-ENTRY (BP_SYM (__strnlen))
+ENTRY (__strnlen)
 	CALL_MCOUNT 2
 	dcbt	0,r3
 	clrrdi  r8,r3,3
@@ -167,6 +165,6 @@ L(loop_small):
 	cmpld	r9,r7
 	bge	L(end_max)
 	b	L(loop_small)
-END (BP_SYM (__strnlen))
-weak_alias (BP_SYM (__strnlen), BP_SYM(strnlen))
+END (__strnlen)
+weak_alias (__strnlen, strnlen)
 libc_hidden_builtin_def (strnlen)
diff --git a/sysdeps/powerpc/powerpc64/setjmp-common.S b/sysdeps/powerpc/powerpc64/setjmp-common.S
index 8586c2d..58ec610 100644
--- a/sysdeps/powerpc/powerpc64/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc64/setjmp-common.S
@@ -23,8 +23,6 @@
 #else
 #include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #ifndef __NO_VMX__
 	.section	".toc","aw"
@@ -55,24 +53,23 @@ END (setjmp)
    that saves r2 since the call won't go via a plt call stub.  See
    bugz #269.  __GI__setjmp is used in csu/libc-start.c when
    HAVE_CLEANUP_JMP_BUF is defined.  */
-ENTRY (BP_SYM (__GI__setjmp))
+ENTRY (__GI__setjmp)
 	std r2,40(r1)		/* Save the callers TOC in the save area.  */
 	cfi_endproc
-END_2 (BP_SYM (__GI__setjmp))
+END_2 (__GI__setjmp)
 /* Fall thru. */
 #endif
 
-ENTRY (BP_SYM (_setjmp))
+ENTRY (_setjmp)
 	CALL_MCOUNT 1
 	li r4,0			/* Set second argument to 0.  */
 	b JUMPTARGET (GLUE(__sigsetjmp,_ent))
-END (BP_SYM (_setjmp))
+END (_setjmp)
 libc_hidden_def (_setjmp)
 
-ENTRY (BP_SYM (__sigsetjmp))
+ENTRY (__sigsetjmp)
 	CALL_MCOUNT 2
 JUMPTARGET(GLUE(__sigsetjmp,_ent)):
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
 #ifdef PTR_MANGLE
 	mr   r5, r1
 	PTR_MANGLE (r5, r6)
@@ -219,18 +216,18 @@ L(no_vmx):
 	li	r3,0
 	blr
 #elif defined SHARED
-	b	JUMPTARGET (BP_SYM (__sigjmp_save))
+	b	JUMPTARGET (__sigjmp_save)
 #else
 	mflr	r0
 	std	r0,16(r1)
 	stdu	r1,-112(r1)
 	cfi_adjust_cfa_offset(112)
 	cfi_offset(lr,16)
-	bl	JUMPTARGET (BP_SYM (__sigjmp_save))
+	bl	JUMPTARGET (__sigjmp_save)
 	nop
 	ld	r0,112+16(r1)
 	addi	r1,r1,112
 	mtlr	r0
 	blr
 #endif
-END (BP_SYM (__sigsetjmp))
+END (__sigsetjmp)
diff --git a/sysdeps/powerpc/powerpc64/start.S b/sysdeps/powerpc/powerpc64/start.S
index 210779c..ec0fd30 100644
--- a/sysdeps/powerpc/powerpc64/start.S
+++ b/sysdeps/powerpc/powerpc64/start.S
@@ -34,7 +34,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include "bp-sym.h"
 
  /* These are the various addresses we require.  */
 #ifdef PIC
@@ -46,7 +45,7 @@
 L(start_addresses):
 	.quad	0 /* was _SDA_BASE_  but not in 64-bit ABI*/
 /*     function descriptors so don't need JUMPTARGET */
-	.quad	BP_SYM(main)
+	.quad	main
 	.quad 	__libc_csu_init
 	.quad 	__libc_csu_fini
 
@@ -71,7 +70,7 @@ ENTRY(_start)
 	ld	r8,.L01(r2)
 
  /* and continue in libc-start, in glibc.  */
-	b	JUMPTARGET(BP_SYM(__libc_start_main))
+	b	JUMPTARGET(__libc_start_main)
 /* The linker needs this nop to recognize that it's OK to call via a
    TOC adjusting stub.  */
 	nop
diff --git a/sysdeps/powerpc/powerpc64/stpcpy.S b/sysdeps/powerpc/powerpc64/stpcpy.S
index d9cffe9..070cd46 100644
--- a/sysdeps/powerpc/powerpc64/stpcpy.S
+++ b/sysdeps/powerpc/powerpc64/stpcpy.S
@@ -17,37 +17,24 @@
    <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.  */
 
 /* char * [r3] stpcpy (char *dest [r3], const char *src [r4])  */
 
-EALIGN (BP_SYM (__stpcpy), 4, 0)
+EALIGN (__stpcpy, 4, 0)
 	CALL_MCOUNT 2
 
 #define rTMP	r0
 #define rRTN	r3
-#if __BOUNDED_POINTERS__
-# define rDEST	r4		/* pointer to previous word in dest */
-# define rSRC	r5		/* pointer to previous word in src */
-# define rLOW	r11
-# define rHIGH	r12
-#else
-# define rDEST	r3		/* pointer to previous word in dest */
-# define rSRC	r4		/* pointer to previous word in src */
-#endif
+#define rDEST	r3		/* pointer to previous word in dest */
+#define rSRC	r4		/* pointer to previous word in src */
 #define rWORD	r6		/* current word from src */
 #define rFEFE	r7		/* 0xfefefeff */
 #define r7F7F	r8		/* 0x7f7f7f7f */
 #define rNEG	r9		/* ~(word in src | 0x7f7f7f7f) */
 #define rALT	r10		/* alternate word from src */
 
-	CHECK_BOUNDS_LOW (rSRC, rLOW, rHIGH)
-	CHECK_BOUNDS_LOW (rDEST, rLOW, rHIGH)
-	STORE_RETURN_BOUNDS (rLOW, rHIGH)
-
 	or	rTMP, rSRC, rDEST
 	clrldi.	rTMP, rTMP, 62
 	addi	rDEST, rDEST, -4
@@ -85,8 +72,6 @@ L(g1):	rlwinm.	rTMP, rALT, 8, 24, 31
 	stbu	rTMP, 1(rDEST)
 	beqlr-
 	stbu	rALT, 1(rDEST)
-	CHECK_BOUNDS_HIGH (rDEST, rHIGH, twlgt)
-	STORE_RETURN_VALUE (rDEST)
 	blr
 
 /* Oh well.  In this case, we just do a byte-by-byte copy.  */
@@ -108,15 +93,11 @@ L(u0):	lbzu	rALT, 1(rSRC)
 	cmpwi	rWORD, 0
 	bne+	L(u0)
 L(u2):	stbu	rWORD, 1(rDEST)
-	CHECK_BOUNDS_HIGH (rDEST, rHIGH, twlgt)
-	STORE_RETURN_VALUE (rDEST)
 	blr
 L(u1):	stbu	rALT, 1(rDEST)
-	CHECK_BOUNDS_HIGH (rDEST, rHIGH, twlgt)
-	STORE_RETURN_VALUE (rDEST)
 	blr
-END (BP_SYM (__stpcpy))
+END (__stpcpy)
 
-weak_alias (BP_SYM (__stpcpy), BP_SYM (stpcpy))
+weak_alias (__stpcpy, stpcpy)
 libc_hidden_def (__stpcpy)
 libc_hidden_builtin_def (stpcpy)
diff --git a/sysdeps/powerpc/powerpc64/strchr.S b/sysdeps/powerpc/powerpc64/strchr.S
index 3bd3929..d2d8cd3 100644
--- a/sysdeps/powerpc/powerpc64/strchr.S
+++ b/sysdeps/powerpc/powerpc64/strchr.S
@@ -17,32 +17,19 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* See strlen.s for comments on how this works.  */
 
 /* char * [r3] strchr (const char *s [r3] , int c [r4] )  */
 
-ENTRY (BP_SYM (strchr))
+ENTRY (strchr)
 	CALL_MCOUNT 2
 
 #define rTMP1	r0
 #define rRTN	r3	/* outgoing result */
-/* Note:  The Bounded pointer support in this code is broken.  This code
-   was inherited from PPC32 and that support was never completed.
-   Currently PPC gcc does not support -fbounds-check or -fbounded-pointers.
-   These artifacts are left in the code as a reminder in case we need
-   bounded pointer support in the future.  */
-#if __BOUNDED_POINTERS__
-# define rSTR	r4
-# define rCHR	r5	/* byte we're looking for, spread over the whole word */
-# define rWORD	r8	/* the current word */
-#else
-# define rSTR	r8	/* current word pointer */
-# define rCHR	r4	/* byte we're looking for, spread over the whole word */
-# define rWORD	r5	/* the current word */
-#endif
+#define rSTR	r8	/* current word pointer */
+#define rCHR	r4	/* byte we're looking for, spread over the whole word */
+#define rWORD	r5	/* the current word */
 #define rCLZB	rCHR	/* leading zero byte count */
 #define rFEFE	r6	/* constant 0xfefefefefefefeff (-0x0101010101010101) */
 #define r7F7F	r7	/* constant 0x7f7f7f7f7f7f7f7f */
@@ -51,9 +38,6 @@ ENTRY (BP_SYM (strchr))
 #define rMASK	r11	/* mask with the bits to ignore set to 0 */
 #define rTMP3	r12
 
-	CHECK_BOUNDS_LOW (rSTR, rTMP1, rTMP2)
-	STORE_RETURN_BOUNDS (rTMP1, rTMP2)
-
 	dcbt	0,rRTN
 	rlwimi	rCHR, rCHR, 8, 16, 23
 	li	rMASK, -1
@@ -101,7 +85,6 @@ L(loopentry):
 L(missed):
 	and.	rTMP1, rTMP1, rTMP2
 	li	rRTN, 0
-	STORE_RETURN_VALUE (rSTR)
 	beqlr
 /* It did happen. Decide which one was first...
    I'm not sure if this is actually faster than a sequence of
@@ -119,8 +102,6 @@ L(missed):
 	cntlzd	rCLZB, rTMP2
 	srdi	rCLZB, rCLZB, 3
 	add	rRTN, rSTR, rCLZB
-	CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, tdlge)
-	STORE_RETURN_VALUE (rSTR)
 	blr
 
 L(foundit):
@@ -132,10 +113,8 @@ L(foundit):
 	subi	rSTR, rSTR, 8
 	srdi	rCLZB, rCLZB, 3
 	add	rRTN, rSTR, rCLZB
-	CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, tdlge)
-	STORE_RETURN_VALUE (rSTR)
 	blr
-END (BP_SYM (strchr))
+END (strchr)
 
-weak_alias (BP_SYM (strchr), BP_SYM (index))
+weak_alias (strchr, index)
 libc_hidden_builtin_def (strchr)
diff --git a/sysdeps/powerpc/powerpc64/strcmp.S b/sysdeps/powerpc/powerpc64/strcmp.S
index 46600d5..c9d6dac 100644
--- a/sysdeps/powerpc/powerpc64/strcmp.S
+++ b/sysdeps/powerpc/powerpc64/strcmp.S
@@ -17,29 +17,18 @@
    <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] strcmp (const char *s1 [r3], const char *s2 [r4])  */
 
-EALIGN (BP_SYM(strcmp), 4, 0)
+EALIGN (strcmp, 4, 0)
 	CALL_MCOUNT 2
 
 #define rTMP	r0
 #define rRTN	r3
 #define rSTR1	r3	/* first string arg */
 #define rSTR2	r4	/* second string arg */
-/* 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.
-   These artifacts are left in the code as a reminder in case we need
-   bounded pointer support in the future.  */
-#if __BOUNDED_POINTERS__
-# define rHIGH1	r11
-# define rHIGH2 r12
-#endif
 #define rWORD1	r5	/* current word in s1 */
 #define rWORD2	r6	/* current word in s2 */
 #define rFEFE	r7	/* constant 0xfefefefefefefeff (-0x0101010101010101) */
@@ -47,9 +36,6 @@ EALIGN (BP_SYM(strcmp), 4, 0)
 #define rNEG	r9	/* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
 #define rBITDIF	r10	/* bits that differ in s1 & s2 words */
 
-	CHECK_BOUNDS_LOW (rSTR1, rTMP, rHIGH1)
-	CHECK_BOUNDS_LOW (rSTR2, rTMP, rHIGH2)
-
 	dcbt	0,rSTR1
 	or	rTMP, rSTR2, rSTR1
 	dcbt	0,rSTR2
@@ -98,7 +84,6 @@ L(endstring):
 	blr
 L(equal):
 	li	rRTN, 0
-	/* GKM FIXME: check high bounds.  */
 	blr
 
 L(different):
@@ -113,7 +98,6 @@ L(highbit):
 	srdi	rWORD2, rWORD2, 56
 	srdi	rWORD1, rWORD1, 56
 	sub	rRTN, rWORD1, rWORD2
-	/* GKM FIXME: check high bounds.  */
 	blr
 
 
@@ -137,11 +121,9 @@ L(u1):	cmpwi	cr1, rWORD1, 0
 	cmpd	rWORD1, rWORD2
 	bne+	cr1, L(u0)
 L(u3):	sub	rRTN, rWORD1, rWORD2
-	/* GKM FIXME: check high bounds.  */
 	blr
 L(u4):	lbz	rWORD1, -1(rSTR1)
 	sub	rRTN, rWORD1, rWORD2
-	/* GKM FIXME: check high bounds.  */
 	blr
-END (BP_SYM (strcmp))
+END (strcmp)
 libc_hidden_builtin_def (strcmp)
diff --git a/sysdeps/powerpc/powerpc64/strcpy.S b/sysdeps/powerpc/powerpc64/strcpy.S
index 56845cf..4c6fd3f 100644
--- a/sysdeps/powerpc/powerpc64/strcpy.S
+++ b/sysdeps/powerpc/powerpc64/strcpy.S
@@ -17,50 +17,28 @@
    <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.  */
 
 /* char * [r3] strcpy (char *dest [r3], const char *src [r4])  */
 
-EALIGN (BP_SYM (strcpy), 4, 0)
+EALIGN (strcpy, 4, 0)
 	CALL_MCOUNT 2
 
 #define rTMP	r0
 #define rRTN	r3	/* incoming DEST arg preserved as result */
-/* 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.
-   These artifacts are left in the code as a reminder in case we need
-   bounded pointer support in the future.  */
-#if __BOUNDED_POINTERS__
-# define rDEST	r4	/* pointer to previous word in dest */
-# define rSRC	r5	/* pointer to previous word in src */
-# define rLOW	r11
-# define rHIGH	r12
-#else
-# define rSRC	r4	/* pointer to previous word in src */
-# define rDEST	r5	/* pointer to previous word in dest */
-#endif
+#define rSRC	r4	/* pointer to previous word in src */
+#define rDEST	r5	/* pointer to previous word in dest */
 #define rWORD	r6	/* current word from src */
 #define rFEFE	r7	/* constant 0xfefefefefefefeff (-0x0101010101010101) */
 #define r7F7F	r8	/* constant 0x7f7f7f7f7f7f7f7f */
 #define rNEG	r9	/* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
 #define rALT	r10	/* alternate word from src */
 
-	CHECK_BOUNDS_LOW (rSRC, rLOW, rHIGH)
-	CHECK_BOUNDS_LOW (rDEST, rLOW, rHIGH)
-	STORE_RETURN_BOUNDS (rLOW, rHIGH)
-
 	dcbt	0,rSRC
 	or	rTMP, rSRC, rRTN
 	clrldi.	rTMP, rTMP, 61
-#if __BOUNDED_POINTERS__
-	addi	rDEST, rDEST, -8
-#else
 	addi	rDEST, rRTN, -8
-#endif
 	dcbtst	0,rRTN
 	bne	L(unaligned)
 
@@ -112,7 +90,6 @@ L(g1):
 	stb	rTMP, 14(rDEST)
 	beqlr-
 	stb	rALT, 15(rDEST)
-	/* GKM FIXME: check high bound.  */
 	blr
 
 /* Oh well.  In this case, we just do a byte-by-byte copy.  */
@@ -134,11 +111,9 @@ L(u0):	lbzu	rALT, 1(rSRC)
 	cmpwi	rWORD, 0
 	bne+	L(u0)
 L(u2):	stb	rWORD, 1(rDEST)
-	/* GKM FIXME: check high bound.  */
 	blr
 L(u1):	stb	rALT, 1(rDEST)
-	/* GKM FIXME: check high bound.  */
 	blr
 
-END (BP_SYM (strcpy))
+END (strcpy)
 libc_hidden_builtin_def (strcpy)
diff --git a/sysdeps/powerpc/powerpc64/strlen.S b/sysdeps/powerpc/powerpc64/strlen.S
index 3ef4cc8..dafd033 100644
--- a/sysdeps/powerpc/powerpc64/strlen.S
+++ b/sysdeps/powerpc/powerpc64/strlen.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* The algorithm here uses the following techniques:
 
@@ -77,7 +75,7 @@
 
 /* int [r3] strlen (char *s [r3])  */
 
-ENTRY (BP_SYM (strlen))
+ENTRY (strlen)
 	CALL_MCOUNT 1
 
 #define rTMP1	r0
@@ -94,13 +92,6 @@ ENTRY (BP_SYM (strlen))
 #define rTMP3	r11
 #define rTMP4	r12
 
-/* 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.
-   These artifacts are left in the code as a reminder in case we need
-   bounded pointer support in the future.  */
-	CHECK_BOUNDS_LOW (rRTN, rTMP1, rTMP2)
-
 	dcbt	0,rRTN
 	clrrdi	rSTR, rRTN, 3
 	lis	r7F7F, 0x7f7f
@@ -168,7 +159,6 @@ L(done0):
 	subf	rTMP1, rRTN, rSTR
 	srdi	rTMP3, rTMP3, 3
 	add	rRTN, rTMP1, rTMP3
-	/* GKM FIXME: check high bound.  */
 	blr
-END (BP_SYM (strlen))
+END (strlen)
 libc_hidden_builtin_def (strlen)
diff --git a/sysdeps/powerpc/powerpc64/strncmp.S b/sysdeps/powerpc/powerpc64/strncmp.S
index 89a3246..e272688 100644
--- a/sysdeps/powerpc/powerpc64/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/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 rFEFE	r8	/* constant 0xfefefefefefefeff (-0x0101010101010101) */
@@ -160,5 +155,5 @@ L(u1):
 L(u2):	lbzu	rWORD1, -1(rSTR1)	
 L(u3):	sub	rRTN, rWORD1, rWORD2
 	blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
index 06596ce..348aeb5 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
@@ -19,17 +19,14 @@
 #include <sysdep.h>
 #define _ERRNO_H	1
 #include <bits/errno.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.comm	__curbrk,8,8
 	.section	".toc","aw"
 .LC__curbrk:
 	.tc __curbrk[TC],__curbrk
 	.section ".text"
-ENTRY (BP_SYM (__brk))
+ENTRY (__brk)
 	CALL_MCOUNT 1
-	DISCARD_BOUNDS (r3)	/* the bounds are meaningless, so toss 'em.  */
 
 	std	r3,48(r1)
 	DO_CALL(SYS_ify(brk))
@@ -41,6 +38,6 @@ ENTRY (BP_SYM (__brk))
 	blelr+
 	li      r3,ENOMEM
 	TAIL_CALL_SYSCALL_ERROR
-END (BP_SYM (__brk))
+END (__brk)
 
-weak_alias (BP_SYM (__brk), BP_SYM (brk))
+weak_alias (__brk, brk)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
index f74dcae..cf46856 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
@@ -19,8 +19,6 @@
 #include <sysdep.h>
 #define _ERRNO_H	1
 #include <bits/errno.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #define CLONE_VM	0x00000100
 #define CLONE_THREAD	0x00010000
@@ -33,11 +31,8 @@
                   int flags [r5], void *arg [r6], void *parent_tid [r7],
                   void *tls [r8], void *child_tid [r9]); */
 
-ENTRY (BP_SYM (__clone))
+ENTRY (__clone)
 	CALL_MCOUNT 7
-	/* GKM FIXME: add bounds checks, where sensible.  */
-	DISCARD_BOUNDS (r4)
-	DISCARD_BOUNDS (r6)
 
 	/* Check for child_stack == NULL || fn == NULL.  */
 	cmpdi	cr0,r4,0
@@ -144,6 +139,6 @@ L(parent):
 	cfi_restore(r31)
 	PSEUDO_RET
 
-END (BP_SYM (__clone))
+END (__clone)
 
-weak_alias (BP_SYM (__clone), BP_SYM (clone))
+weak_alias (__clone, clone)

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                         |  146 +++++++++++++++++++++
 NEWS                                              |    6 +-
 sysdeps/generic/bp-sym.h                          |   25 ----
 sysdeps/powerpc/powerpc64/__longjmp-common.S      |    7 +-
 sysdeps/powerpc/powerpc64/a2/memcpy.S             |    6 +-
 sysdeps/powerpc/powerpc64/bp-asm.h                |  113 ----------------
 sysdeps/powerpc/powerpc64/cell/memcpy.S           |    6 +-
 sysdeps/powerpc/powerpc64/memcpy.S                |    6 +-
 sysdeps/powerpc/powerpc64/memset.S                |   44 ++-----
 sysdeps/powerpc/powerpc64/power4/memcmp.S         |    9 +-
 sysdeps/powerpc/powerpc64/power4/memcpy.S         |    6 +-
 sysdeps/powerpc/powerpc64/power4/memset.S         |   44 ++-----
 sysdeps/powerpc/powerpc64/power4/strncmp.S        |    9 +-
 sysdeps/powerpc/powerpc64/power6/memcpy.S         |    6 +-
 sysdeps/powerpc/powerpc64/power6/memset.S         |   44 ++-----
 sysdeps/powerpc/powerpc64/power7/memchr.S         |    8 +-
 sysdeps/powerpc/powerpc64/power7/memcmp.S         |    9 +-
 sysdeps/powerpc/powerpc64/power7/memcpy.S         |    6 +-
 sysdeps/powerpc/powerpc64/power7/mempcpy.S        |   10 +-
 sysdeps/powerpc/powerpc64/power7/memrchr.S        |    8 +-
 sysdeps/powerpc/powerpc64/power7/memset.S         |   12 +-
 sysdeps/powerpc/powerpc64/power7/rawmemchr.S      |    6 +-
 sysdeps/powerpc/powerpc64/power7/strcasecmp.S     |    8 +-
 sysdeps/powerpc/powerpc64/power7/strchr.S         |    8 +-
 sysdeps/powerpc/powerpc64/power7/strchrnul.S      |    6 +-
 sysdeps/powerpc/powerpc64/power7/strlen.S         |    6 +-
 sysdeps/powerpc/powerpc64/power7/strncmp.S        |    9 +-
 sysdeps/powerpc/powerpc64/power7/strnlen.S        |    8 +-
 sysdeps/powerpc/powerpc64/setjmp-common.S         |   19 +--
 sysdeps/powerpc/powerpc64/start.S                 |    5 +-
 sysdeps/powerpc/powerpc64/stpcpy.S                |   29 +----
 sysdeps/powerpc/powerpc64/strchr.S                |   33 +----
 sysdeps/powerpc/powerpc64/strcmp.S                |   22 +---
 sysdeps/powerpc/powerpc64/strcpy.S                |   33 +----
 sysdeps/powerpc/powerpc64/strlen.S                |   14 +--
 sysdeps/powerpc/powerpc64/strncmp.S               |    9 +-
 sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S   |    9 +-
 sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S |   11 +-
 38 files changed, 265 insertions(+), 500 deletions(-)
 delete mode 100644 sysdeps/generic/bp-sym.h
 delete mode 100644 sysdeps/powerpc/powerpc64/bp-asm.h


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]