This is the mail archive of the libc-alpha@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]

Remove powerpc32 bounded-pointers code


This patch continues the removal of the bitrotten bounded-pointers
code by removing bp-asm.h and uses of bp-asm.h and bp-sym.h and
associated code conditional on __BOUNDED_POINTERS__ for powerpc32.
Tested powerpc32.

2013-02-28  Joseph Myers  <joseph@codesourcery.com>

	[BZ #13550]
	* sysdeps/powerpc/powerpc32/bp-asm.h: Remove file.
	* sysdeps/powerpc/powerpc32/__longjmp-common.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__longjmp): Don't use BP_SYM and CHECK_BOUNDS_BOTH_WIDE_LIT.
	* sysdeps/powerpc/powerpc32/a2/memcpy.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(memcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/add_n.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(__mpn_add_n): Don't use BP_SYM.
	(__mpn_add_n) [__BOUNDED_POINTERS_]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/addmul_1.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(__mpn_addmul_1): Don't use BP_SYM.
	(__mpn_addmul_1) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Don't include
	<bp-sym.h>.
	(_setjmp): Don't use BP_SYM.
	(__novmx_setjmp): Likewise.
	(__GI__setjmp): Likewise.
	(__vmx_setjmp): Likewise.
	* sysdeps/powerpc/powerpc32/bsd-setjmp.S: Don't include
	<bp-sym.h>.
	* sysdeps/powerpc/powerpc32/bzero.S: Don't include <bp-sym.h>.
	(__bzero): Don't use BP_SYM.
	(__bzero) [__BOUNDED_POINTERS__]: Remove conditional code.
	(__bzero) [!__BOUNDED_POINTERS__]: Make code unconditional.
	* sysdeps/powerpc/powerpc32/cell/memcpy.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__longjmp): Don't use BP_SYM and CHECK_BOUNDS_BOTH_WIDE_LIT.
	* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__sigsetjmp): Don't use BP_SYM and CHECK_BOUNDS_BOTH_WIDE_LIT.
	* sysdeps/powerpc/powerpc32/lshift.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(__mpn_lshift): Don't use BP_SYM.
	(__mpn_lshift) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/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.
	* sysdeps/powerpc/powerpc32/mul_1.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(__mpn_mul_1): Don't use BP_SYM.
	(__mpn_mul_1) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/power4/memcmp.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memcmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power4/memcpy.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power4/memset.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memset): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power4/strncmp.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(strncmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power6/memcpy.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power6/memset.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memset): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/memchr.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__memchr): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/memcmp.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memcmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/memcpy.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/mempcpy.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__mempcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/memrchr.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__memrchr): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/memset.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(memset): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/rawmemchr.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__rawmemchr): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/strcasecmp.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__STRCMP): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/strchr.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(strchr): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/strchrnul.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__strchrnul): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/strlen.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(strlen): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/strncmp.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(strncmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/power7/strnlen.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__strnlen): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/rshift.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(__mpn_rshift): Don't use BP_SYM.
	(__mpn_rshift) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/setjmp-common.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(__sigsetjmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/start.S: Don't include "bp-sym.h".
	(L(start_addresses)): Don't use BP_SYM.
	(_start): Likewise.
	* sysdeps/powerpc/powerpc32/stpcpy.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(__stpcpy): Don't use BP_SYM and macros from bp-asm.h.
	(__stpcpy) [__BOUNDED_POINTERS__]: Remove conditional code.
	(__stpcpy) [!__BOUNDED_POINTERS__]: Make code unconditional.
	* sysdeps/powerpc/powerpc32/strchr.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(strchr): Don't use BP_SYM.h and macros from bp-asm.h.
	(strchr) [__BOUNDED_POINTERS__]: Remove conditional code.
	(strchr) [!__BOUNDED_POINTERS__]: Make code unconditional.
	* sysdeps/powerpc/powerpc32/strcmp.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(strcmp): Don't use BP_SYM and CHECK_BOUNDS_LOW.  Remove GKM FIXME
	comments.
	(strcmp) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/strcpy.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(strcpy): Don't use BP_SYM and macros from bp-asm.h.  Remove GKM
	FIXME comments.
	(strcpy) [__BOUNDED_POINTERS__]: Remove conditional code.
	(strcpy) [!__BOUNDED_POINTERS__]: Make code unconditional.
	* sysdeps/powerpc/powerpc32/strlen.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(strlen): Don't use BP_SYM and CHECK_BOUNDS_LOW.  Remove GKM FIXME
	comment.
	* sysdeps/powerpc/powerpc32/strncmp.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(strncmp): Don't use BP_SYM,
	* sysdeps/powerpc/powerpc32/sub_n.S: Don't include <bp-sym.h> and
	<bp-asm.h>.
	(__mpn_sub_n): Don't use BP_SYM.
	(__mpn_sub_n) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/powerpc/powerpc32/submul_1.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(__mpn_submul_1): Don't use BP_SYM.
	(__mpn_submul_1) [__BOUNDED_POINTERS__]: Remove conditional code.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/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/powerpc32/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.

ports/ChangeLog.powerpc:
2013-02-28  Joseph Myers  <joseph@codesourcery.com>

	[BZ #13550]
	* sysdeps/powerpc/powerpc32/405/memcmp.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(memcmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/405/memcpy.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(memcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/405/memset.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(memset): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/405/strcmp.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(strcmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/405/strcpy.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(strcpy): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/405/strlen.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(strlen): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/405/strncmp.S: Don't include
	<bp-sym.h> and <bp-asm.h>.
	(strncmp): Don't use BP_SYM.
	* sysdeps/powerpc/powerpc32/476/memset.S: Don't include <bp-sym.h>
	and <bp-asm.h>.
	(memset): Don't use BP_SYM.

diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S b/ports/sysdeps/powerpc/powerpc32/405/memcmp.S
index 6a6439f..2849461 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/memcmp.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memcmp
 
@@ -32,7 +30,7 @@
        return src1 > src2, src1 < src2 or src1 = src2.
        If src1 = src2 and no null, repeat. */
 
-EALIGN (BP_SYM (memcmp), 5, 0)
+EALIGN (memcmp, 5, 0)
        srwi.   r6,r5,5
        beq     L(preword2_count_loop)
        mtctr   r6
@@ -125,6 +123,6 @@ L(st2):
        blt     cr5,L(l_r)
        addi    r3,r0,-1
        blr
-END (BP_SYM (memcmp))
+END (memcmp)
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp,bcmp)
diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S b/ports/sysdeps/powerpc/powerpc32/405/memcpy.S
index bca4f74..761e967 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/memcpy.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memcpy
 
@@ -33,7 +31,7 @@
        If 32 or more bytes to copy we use 32 byte copy loop.
        Finaly we copy 0-31 extra bytes. */
 
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 /* Check if bytes to copy are greater than 256 and if
        source and destination are unaligned */
        cmpwi   r5,0x0100
@@ -128,5 +126,5 @@ L(word4_count_loop_no_dcbt): /* Copy 32 bytes at a time */
 L(end_memcpy):
        mr       r3,r0
        blr
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)
diff --git a/ports/sysdeps/powerpc/powerpc32/405/memset.S b/ports/sysdeps/powerpc/powerpc32/405/memset.S
index d07a976..b73dba8 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/memset.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/memset.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memset
 
@@ -37,7 +35,7 @@
        If 16 or more words to set we use 16 word copy loop.
        Finaly we set 0-15 extra bytes with string store. */
 
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
        rlwinm  r11,r4,0,24,31
        rlwimi  r11,r4,8,16,23
        rlwimi  r11,r11,16,0,15
@@ -150,5 +148,5 @@ L(postword2_count_loop):
        mtxer   r7
        stswx   r8,0,r3
        b       L(end_memset)
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S b/ports/sysdeps/powerpc/powerpc32/405/strcmp.S
index faa7cf3..c0b2190 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/strcmp.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strcmp
 
@@ -34,7 +32,7 @@
        return src1 > src2, src1 < src2 or src1 = src2.
        If src1 = src2 and no null, repeat. */
 
-EALIGN (BP_SYM(strcmp),5,0)
+EALIGN (strcmp,5,0)
        neg     r7,r3
        clrlwi  r7,r7,20
        neg     r8,r4
@@ -132,5 +130,5 @@ L(byte_loop):
        cmpwi   r5,0
        beq     L(end_strcmp)
        b       L(byte_loop)
-END (BP_SYM (strcmp))
+END (strcmp)
 libc_hidden_builtin_def (strcmp)
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S b/ports/sysdeps/powerpc/powerpc32/405/strcpy.S
index 88f8c8e..d7c8456 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/strcpy.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strcpy
 
@@ -33,7 +31,7 @@
        where in the last 8 bytes it is. Copy the appropriate bytes of the last
        8 according to the null position. */
 
-EALIGN (BP_SYM (strcpy), 5, 0)
+EALIGN (strcpy, 5, 0)
        neg     r7,r4
        subi    r4,r4,1
        clrlwi. r8,r7,29
@@ -105,5 +103,5 @@ L(last_bytes_copy_loop2):
 
 L(end_strcpy):
        blr
-END (BP_SYM (strcpy))
+END (strcpy)
 libc_hidden_builtin_def (strcpy)
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strlen.S b/ports/sysdeps/powerpc/powerpc32/405/strlen.S
index e267f4d..77d22ea 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strlen.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/strlen.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strlen
 
@@ -31,7 +29,7 @@
        the count and return the count value. We need to subtract one because
        we don't count the null character as a byte. */
 
-EALIGN (BP_SYM (strlen),5,0)
+EALIGN (strlen,5,0)
        neg     r7,r3
        clrlwi. r8,r7,29
        addi    r4,0,0
@@ -73,5 +71,5 @@ L(byte_count_loop):
 L(end_strlen):
        addi    r3,r4,-1
        blr
-END (BP_SYM (strlen))
+END (strlen)
 libc_hidden_builtin_def (strlen)
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S b/ports/sysdeps/powerpc/powerpc32/405/strncmp.S
index a613869..3e2ba5f 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S
+++ b/ports/sysdeps/powerpc/powerpc32/405/strncmp.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strncmp
 
@@ -39,7 +37,7 @@
        return src1 > src2, src1 < src2 or src1 = src2.
        If src1 = src2 and no null, repeat. */
 
-EALIGN (BP_SYM(strncmp),5,0)
+EALIGN (strncmp,5,0)
        neg     r7,r3
        clrlwi  r7,r7,20
        neg     r8,r4
@@ -126,5 +124,5 @@ L(end_strncmp):
 L(st1):
        mfcr    r3
        blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)
diff --git a/ports/sysdeps/powerpc/powerpc32/476/memset.S b/ports/sysdeps/powerpc/powerpc32/476/memset.S
index f681a89..48c21d6 100644
--- a/ports/sysdeps/powerpc/powerpc32/476/memset.S
+++ b/ports/sysdeps/powerpc/powerpc32/476/memset.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memset
 
@@ -37,7 +35,7 @@
        If 16 or more words to set we use 16 word copy loop.
        Finaly we set 0-15 extra bytes with string store. */
 
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
        rlwinm  r11,r4,0,24,31
        rlwimi  r11,r4,8,16,23
        rlwimi  r11,r11,16,0,15
@@ -150,5 +148,5 @@ L(postword2_count_loop):
        mtxer   r7
        stswx   r8,0,r3
        b       L(end_memset)
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)
diff --git a/sysdeps/powerpc/powerpc32/__longjmp-common.S b/sysdeps/powerpc/powerpc32/__longjmp-common.S
index 5154199..7874473 100644
--- a/sysdeps/powerpc/powerpc32/__longjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/__longjmp-common.S
@@ -23,11 +23,8 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
-ENTRY (BP_SYM (__longjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__longjmp)
 
 #if defined PTR_DEMANGLE || defined CHECK_SP
 	lwz r24,(JB_GPR1*4)(r3)
@@ -71,4 +68,4 @@ ENTRY (BP_SYM (__longjmp))
 	lwz r31,((JB_GPRS+17)*4)(r3)
 	mr r3,r4
 	blr
-END (BP_SYM (__longjmp))
+END (__longjmp)
diff --git a/sysdeps/powerpc/powerpc32/a2/memcpy.S b/sysdeps/powerpc/powerpc32/a2/memcpy.S
index d1192a3..f2f63b1 100644
--- a/sysdeps/powerpc/powerpc32/a2/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/a2/memcpy.S
@@ -18,14 +18,12 @@
    <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  */
 
 	.machine  a2
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
 	dcbt    0,r4            /* Prefetch ONE SRC cacheline  */
@@ -525,5 +523,5 @@ L(endloop2_128):
 	b       L(lessthancacheline)
 
 
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)
diff --git a/sysdeps/powerpc/powerpc32/add_n.S b/sysdeps/powerpc/powerpc32/add_n.S
index 0db251a..7ce77e0 100644
--- a/sysdeps/powerpc/powerpc32/add_n.S
+++ b/sysdeps/powerpc/powerpc32/add_n.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_add_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr,
                         mp_size_t size)
@@ -28,14 +26,8 @@
    possible 2-unrolled inner loop will not be.  Also, watch out for the
    alignment...  */
 
-EALIGN (BP_SYM (__mpn_add_n), 3, 0)
+EALIGN (__mpn_add_n, 3, 0)
 
-#if __BOUNDED_POINTERS__
-	slwi r10,r6,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r5, r8, r9, r10)
-#endif
 /* Set up for loop below.  */
 	mtcrf 0x01,r6
 	srwi. r7,r6,1
@@ -73,4 +65,4 @@ L(0):	lwz  r9,4(r4)
 /* Return the carry.  */
 L(1):	addze r3,r10
 	blr
-END (BP_SYM (__mpn_add_n))
+END (__mpn_add_n)
diff --git a/sysdeps/powerpc/powerpc32/addmul_1.S b/sysdeps/powerpc/powerpc32/addmul_1.S
index 33a5202..88a01a1 100644
--- a/sysdeps/powerpc/powerpc32/addmul_1.S
+++ b/sysdeps/powerpc/powerpc32/addmul_1.S
@@ -17,18 +17,11 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_addmul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr,
                            mp_size_t s1_size, mp_limb_t s2_limb)
    Calculate res+s1*s2 and put result back in res; return carry.  */
-ENTRY (BP_SYM (__mpn_addmul_1))
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
+ENTRY (__mpn_addmul_1)
 	mtctr	r5
 
 	lwz	r0,0(r4)
@@ -52,4 +45,4 @@ L(0):	lwzu	r0,4(r4)
 L(1):	stw	r8,4(r3)
 	addze	r3,r10
 	blr
-END (BP_SYM (__mpn_addmul_1))
+END (__mpn_addmul_1)
diff --git a/sysdeps/powerpc/powerpc32/bp-asm.h b/sysdeps/powerpc/powerpc32/bp-asm.h
deleted file mode 100644
index 0e5d07b..0000000
--- a/sysdeps/powerpc/powerpc32/bp-asm.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Bounded-pointer definitions for PowerPC 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 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 __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)			\
-	lwz	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)	\
-	lwz	rHIGH, oHIGH(rBP);		\
-	lwz	rLOW, oLOW(rBP);		\
-	lwz	rBP, oVALUE(rBP);		\
-	twllt	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)	\
-	lwz	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);	\
-	twlge	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;				\
-	twlgt	rBP, rHIGH
-
-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH)	\
-	CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH);			\
-	subi	rHIGH, rHIGH, LENGTH;				\
-	twlgt	rBP, rHIGH
-
-/* Store a pointer value register into the return-value's pointer
-   value slot.  */
-
-# define STORE_RETURN_VALUE(rVALUE)		\
-	stw	rVALUE, oVALUE(rRTN)
-
-/* Store a low and high bounds into the return-value's pointer bounds
-   slots.  */
-
-# define STORE_RETURN_BOUNDS(rLOW, rHIGH)	\
-	stw	rLOW, oLOW(rRTN);		\
-	stw	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/powerpc32/bsd-_setjmp.S b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
index 24b80d2..95e8a5a 100644
--- a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
@@ -18,14 +18,13 @@
 #include <shlib-compat.h>
 #include <libc-symbols.h>
 #include <sysdep.h>
-#include <bp-sym.h>
 
 #if defined NOT_IN_libc
 /* Build a non-versioned object for rtld-*.  */
-ENTRY (BP_SYM (_setjmp))
+ENTRY (_setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__sigsetjmp@local)
-END (BP_SYM (_setjmp))
+	b __sigsetjmp@local
+END (_setjmp)
 libc_hidden_def (_setjmp)
 #else
 /* Build a versioned object for libc.  */
@@ -33,10 +32,10 @@ libc_hidden_def (_setjmp)
 # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
 symbol_version (__novmx_setjmp,_setjmp,GLIBC_2.0);
 
-ENTRY (BP_SYM (__novmx_setjmp))
+ENTRY (__novmx_setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__novmx__sigsetjmp@local)
-END (BP_SYM (__novmx_setjmp))
+	b __novmx__sigsetjmp@local
+END (__novmx_setjmp)
 libc_hidden_def (__novmx_setjmp)
 # endif /* defined SHARED  && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */
 
@@ -44,14 +43,14 @@ default_symbol_version (__vmx_setjmp,_setjmp,GLIBC_2.3.4)
 /* __GI__setjmp prototype is needed for ntpl i.e. _setjmp is defined
    as a libc_hidden_proto & is used in sysdeps/generic/libc-start.c
    if HAVE_CLEANUP_JMP_BUF is defined */
-ENTRY (BP_SYM (__GI__setjmp))
+ENTRY (__GI__setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__vmx__sigsetjmp@local)
-END (BP_SYM (__GI__setjmp))
+	b __vmx__sigsetjmp@local
+END (__GI__setjmp)
 
-ENTRY (BP_SYM (__vmx_setjmp))
+ENTRY (__vmx_setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__vmx__sigsetjmp@local)
-END (BP_SYM (__vmx_setjmp))
+	b __vmx__sigsetjmp@local
+END (__vmx_setjmp)
 libc_hidden_def (__vmx_setjmp)
 #endif /* !NOT_IN_libc */
diff --git a/sysdeps/powerpc/powerpc32/bsd-setjmp.S b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
index bf95f01..1113ea5 100644
--- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
@@ -18,7 +18,6 @@
 #include <shlib-compat.h>
 #include <libc-symbols.h>
 #include <sysdep.h>
-#include <bp-sym.h>
 
 #if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
 
diff --git a/sysdeps/powerpc/powerpc32/bzero.S b/sysdeps/powerpc/powerpc32/bzero.S
index 2cbcb69..b569924 100644
--- a/sysdeps/powerpc/powerpc32/bzero.S
+++ b/sysdeps/powerpc/powerpc32/bzero.S
@@ -17,20 +17,11 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
 
-ENTRY (BP_SYM (__bzero))
+ENTRY (__bzero)
 
-#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
-#else
 	mr	r5,r4
 	li	r4,0
-#endif
-	b	BP_SYM (memset)@local
-END (BP_SYM (__bzero))
-weak_alias (BP_SYM (__bzero), BP_SYM (bzero))
+	b	memset@local
+END (__bzero)
+weak_alias (__bzero, bzero)
diff --git a/sysdeps/powerpc/powerpc32/cell/memcpy.S b/sysdeps/powerpc/powerpc32/cell/memcpy.S
index 6d7d4ce..f3605d7 100644
--- a/sysdeps/powerpc/powerpc32/cell/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/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
 
 	dcbt	0,r4		/* Prefetch ONE SRC cacheline  */
@@ -240,5 +238,5 @@ EALIGN (BP_SYM (memcpy), 5, 0)
 	stb	r0,0(r6)
 1:	blr
 
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)
diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
index 50b84e8..9d34cd9 100644
--- a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
@@ -23,12 +23,9 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.machine	"altivec"
-ENTRY (BP_SYM (__longjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__longjmp)
 #ifndef __NO_VMX__
 # ifdef PIC
 	mflr    r6
@@ -173,4 +170,4 @@ L(no_vmx):
 	lfd fp31,((JB_FPRS+17*2)*4)(r3)
 	mr r3,r4
 	blr
-END (BP_SYM (__longjmp))
+END (__longjmp)
diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
index 17edbf6..46ea2b0 100644
--- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
@@ -23,12 +23,9 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.machine	"altivec"
-ENTRY (BP_SYM (__sigsetjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__sigsetjmp)
 
 #ifdef PTR_MANGLE
 	mr   r5,r1
@@ -179,5 +176,5 @@ L(aligned_save_vmx):
 	stvx	31,0,r6
 L(no_vmx):
 #endif
-	b BP_SYM (__sigjmp_save@local)
-END (BP_SYM (__sigsetjmp))
+	b __sigjmp_save@local
+END (__sigsetjmp)
diff --git a/sysdeps/powerpc/powerpc32/lshift.S b/sysdeps/powerpc/powerpc32/lshift.S
index 8e75084..1d83910 100644
--- a/sysdeps/powerpc/powerpc32/lshift.S
+++ b/sysdeps/powerpc/powerpc32/lshift.S
@@ -17,19 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_lshift (mp_ptr wp, mp_srcptr up, mp_size_t usize,
   			 unsigned int cnt)  */
 
-EALIGN (BP_SYM (__mpn_lshift), 3, 0)
+EALIGN (__mpn_lshift, 3, 0)
 
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
 	mtctr	r5		# copy size into CTR
 	cmplwi	cr0,r5,16	# is size < 16
 	slwi	r0,r5,2
@@ -129,4 +122,4 @@ L(n):	lwzu	r10,-4(r4);						\
 	DO_LSHIFT(30)
 	DO_LSHIFT(31)
 
-END (BP_SYM (__mpn_lshift))
+END (__mpn_lshift)
diff --git a/sysdeps/powerpc/powerpc32/memset.S b/sysdeps/powerpc/powerpc32/memset.S
index 45c79d8..c49bd03 100644
--- a/sysdeps/powerpc/powerpc32/memset.S
+++ b/sysdeps/powerpc/powerpc32/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'.
@@ -29,21 +27,14 @@
    takes advantage of the dcbz instruction.  */
 
 	.section	".text"
-EALIGN (BP_SYM (memset), 5, 1)
+EALIGN (memset, 5, 1)
 
 #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
 
@@ -55,15 +46,6 @@ EALIGN (BP_SYM (memset), 5, 1)
 #define rCLS	r8	/* Cache line size obtained from static.  */
 #define rCLM	r9	/* Cache line size mask to check for cache alignment.  */
 
-#if __BOUNDED_POINTERS__
-	cmplwi	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  */
 	cmplwi	cr1, rLEN, 4
 	andi.	rALIGN, rMEMP0, 3
@@ -321,5 +303,5 @@ L(handletail32):
 	clrrwi.	rALIGN, rLEN, 5
 	b	L(nondcbz)
 
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)
diff --git a/sysdeps/powerpc/powerpc32/mul_1.S b/sysdeps/powerpc/powerpc32/mul_1.S
index fc78658..0b474d4 100644
--- a/sysdeps/powerpc/powerpc32/mul_1.S
+++ b/sysdeps/powerpc/powerpc32/mul_1.S
@@ -17,19 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_mul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr,
                         mp_size_t s1_size, mp_limb_t s2_limb)
    Calculate s1*s2 and put result in res_ptr; return carry.  */
 
-ENTRY (BP_SYM (__mpn_mul_1))
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
+ENTRY (__mpn_mul_1)
 	mtctr	r5
 
 	lwz	r0,0(r4)
@@ -49,4 +42,4 @@ L(0):	lwzu	r0,4(r4)
 L(1):	stw	r7,4(r3)
 	addze	r3,r10
 	blr
-END (BP_SYM (__mpn_mul_1))
+END (__mpn_mul_1)
diff --git a/sysdeps/powerpc/powerpc32/power4/memcmp.S b/sysdeps/powerpc/powerpc32/power4/memcmp.S
index bbee6f4..edec7ab 100644
--- a/sysdeps/powerpc/powerpc32/power4/memcmp.S
+++ b/sysdeps/powerpc/powerpc32/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
 
 #define rTMP	r0
@@ -979,7 +977,7 @@ L(dureturn25):
         lwz     r24,20(r1)
         lwz     1,0(1)
 	blr
-END (BP_SYM (memcmp))
+END (memcmp)
 
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp, bcmp)
diff --git a/sysdeps/powerpc/powerpc32/power4/memcpy.S b/sysdeps/powerpc/powerpc32/power4/memcpy.S
index aa2aab1..d914663 100644
--- a/sysdeps/powerpc/powerpc32/power4/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/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'.
@@ -34,7 +32,7 @@
    Each case has an optimized unrolled loop.   */
 
 	.machine power4
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
     stwu  1,-32(1)
@@ -420,6 +418,6 @@ EALIGN (BP_SYM (memcpy), 5, 0)
     lwz  31,24(1)
     addi 1,1,32
     blr
-END (BP_SYM (memcpy))
+END (memcpy)
 
 libc_hidden_builtin_def (memcpy)
diff --git a/sysdeps/powerpc/powerpc32/power4/memset.S b/sysdeps/powerpc/powerpc32/power4/memset.S
index 58497f4..1e8785c 100644
--- a/sysdeps/powerpc/powerpc32/power4/memset.S
+++ b/sysdeps/powerpc/powerpc32/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,7 +26,7 @@
    to 0, to take advantage of the dcbz instruction.  */
 
 	.machine power4
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
 	CALL_MCOUNT
 
 #define rTMP	r0
@@ -224,5 +222,5 @@ L(medium_28t):
         stw     rCHR, -4(rMEMP)
 	stw	rCHR, -8(rMEMP)
 	blr
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)
diff --git a/sysdeps/powerpc/powerpc32/power4/strncmp.S b/sysdeps/powerpc/powerpc32/power4/strncmp.S
index 50d79dc..b3a6997 100644
--- a/sysdeps/powerpc/powerpc32/power4/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/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)
 
 #define rTMP	r0
 #define rRTN	r3
@@ -171,5 +169,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/powerpc32/power6/memcpy.S b/sysdeps/powerpc/powerpc32/power6/memcpy.S
index 203c979..d900028 100644
--- a/sysdeps/powerpc/powerpc32/power6/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/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'.
@@ -34,7 +32,7 @@
    Each case has an optimized unrolled loop.   */
 
 	.machine power6
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
     stwu   1,-32(1)
@@ -837,6 +835,6 @@ L(wdus_0):
     lwz  31,24(1)
     addi 1,1,32
     blr
-END (BP_SYM (memcpy))
+END (memcpy)
 
 libc_hidden_builtin_def (memcpy)
diff --git a/sysdeps/powerpc/powerpc32/power6/memset.S b/sysdeps/powerpc/powerpc32/power6/memset.S
index 3612e7c..ce06630 100644
--- a/sysdeps/powerpc/powerpc32/power6/memset.S
+++ b/sysdeps/powerpc/powerpc32/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,7 +26,7 @@
    to 0, to take advantage of the dcbz instruction.  */
 
 	.machine power6
-EALIGN (BP_SYM (memset), 7, 0)
+EALIGN (memset, 7, 0)
 	CALL_MCOUNT
 
 #define rTMP	r0
@@ -537,5 +535,5 @@ L(medium_28t):
         stw     rCHR, -4(rMEMP)
 	stw	rCHR, -8(rMEMP)
 	blr
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)
diff --git a/sysdeps/powerpc/powerpc32/power7/memchr.S b/sysdeps/powerpc/powerpc32/power7/memchr.S
index 3d8389e..369e5e0 100644
--- a/sysdeps/powerpc/powerpc32/power7/memchr.S
+++ b/sysdeps/powerpc/powerpc32/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
 	dcbt	0,r3
 	clrrwi  r8,r3,2
@@ -202,6 +200,6 @@ L(loop_small):                /* loop_small has been unrolled.  */
 	li	r3,0
 	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/powerpc32/power7/memcmp.S b/sysdeps/powerpc/powerpc32/power7/memcmp.S
index 815e3c3..f764b7c 100644
--- a/sysdeps/powerpc/powerpc32/power7/memcmp.S
+++ b/sysdeps/powerpc/powerpc32/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
 
 #define rTMP	r0
@@ -982,6 +980,6 @@ L(dureturn25):
 	lwz	r24,20(r1)
 	lwz	1,0(1)
 	blr
-END (BP_SYM (memcmp))
+END (memcmp)
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp,bcmp)
diff --git a/sysdeps/powerpc/powerpc32/power7/memcpy.S b/sysdeps/powerpc/powerpc32/power7/memcpy.S
index 4f228d3..7f00778 100644
--- a/sysdeps/powerpc/powerpc32/power7/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/power7/memcpy.S
@@ -18,14 +18,12 @@
    <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
 
 	stwu    1,-32(1)
@@ -522,5 +520,5 @@ L(end_unaligned_loop):
 	addi    1,1,32
 	blr
 
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)
diff --git a/sysdeps/powerpc/powerpc32/power7/mempcpy.S b/sysdeps/powerpc/powerpc32/power7/mempcpy.S
index 9a88a1b..5ad4edb 100644
--- a/sysdeps/powerpc/powerpc32/power7/mempcpy.S
+++ b/sysdeps/powerpc/powerpc32/power7/mempcpy.S
@@ -18,14 +18,12 @@
    <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
 
 	stwu	1,-32(1)
@@ -464,7 +462,7 @@ L(end_unaligned_loop):
 	addi	1,1,32
 	blr
 
-END (BP_SYM (__mempcpy))
-libc_hidden_def (BP_SYM (__mempcpy))
-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy))
+END (__mempcpy)
+libc_hidden_def (__mempcpy)
+weak_alias (__mempcpy, mempcpy)
 libc_hidden_builtin_def (mempcpy)
diff --git a/sysdeps/powerpc/powerpc32/power7/memrchr.S b/sysdeps/powerpc/powerpc32/power7/memrchr.S
index 9ff8d66..d1e3fda 100644
--- a/sysdeps/powerpc/powerpc32/power7/memrchr.S
+++ b/sysdeps/powerpc/powerpc32/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
@@ -172,6 +170,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/powerpc32/power7/memset.S b/sysdeps/powerpc/powerpc32/power7/memset.S
index 00283ab..360ea71 100644
--- a/sysdeps/powerpc/powerpc32/power7/memset.S
+++ b/sysdeps/powerpc/powerpc32/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
 
 	.align	4
@@ -429,5 +427,5 @@ L(small):
 	stw	4,4(10)
 	blr
 
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)
diff --git a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S b/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
index e37d132..a80c74a 100644
--- a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
+++ b/sysdeps/powerpc/powerpc32/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
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -96,6 +94,6 @@ L(done):
 	srwi	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/powerpc32/power7/strcasecmp.S b/sysdeps/powerpc/powerpc32/power7/strcasecmp.S
index 52d73d9..7f0046c 100644
--- a/sysdeps/powerpc/powerpc32/power7/strcasecmp.S
+++ b/sysdeps/powerpc/powerpc32/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)
 
 #define rRTN	r3	/* Return value */
 #define rSTR1	r5	/* 1st string */
@@ -125,7 +123,7 @@ L(loop):
 	bnelr
 	bne	cr7,L(loop)
 	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/powerpc32/power7/strchr.S b/sysdeps/powerpc/powerpc32/power7/strchr.S
index 1a37958..0ecadb2 100644
--- a/sysdeps/powerpc/powerpc32/power7/strchr.S
+++ b/sysdeps/powerpc/powerpc32/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
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -197,6 +195,6 @@ L(done_null):
 	srwi	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/powerpc32/power7/strchrnul.S b/sysdeps/powerpc/powerpc32/power7/strchrnul.S
index ae304ae..d4cacab 100644
--- a/sysdeps/powerpc/powerpc32/power7/strchrnul.S
+++ b/sysdeps/powerpc/powerpc32/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
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -111,6 +109,6 @@ L(done):
 	srwi	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/powerpc32/power7/strlen.S b/sysdeps/powerpc/powerpc32/power7/strlen.S
index 7694f8a..b71a10f 100644
--- a/sysdeps/powerpc/powerpc32/power7/strlen.S
+++ b/sysdeps/powerpc/powerpc32/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
 	dcbt	0,r3
 	clrrwi	r4,r3,2	      /* Align the address to word boundary.  */
@@ -93,5 +91,5 @@ L(done):
 	srwi	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/powerpc32/power7/strncmp.S b/sysdeps/powerpc/powerpc32/power7/strncmp.S
index 3629783..b58630e 100644
--- a/sysdeps/powerpc/powerpc32/power7/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/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)
 
 #define rTMP	r0
 #define rRTN	r3
@@ -175,5 +173,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/powerpc32/power7/strnlen.S b/sysdeps/powerpc/powerpc32/power7/strnlen.S
index ec716e7..ed08836 100644
--- a/sysdeps/powerpc/powerpc32/power7/strnlen.S
+++ b/sysdeps/powerpc/powerpc32/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
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -166,6 +164,6 @@ L(loop_small):
 	cmplw	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/powerpc32/rshift.S b/sysdeps/powerpc/powerpc32/rshift.S
index 4fd9cb7..9cc63aa 100644
--- a/sysdeps/powerpc/powerpc32/rshift.S
+++ b/sysdeps/powerpc/powerpc32/rshift.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* INPUT PARAMETERS
    res_ptr	r3
@@ -26,12 +24,7 @@
    size		r5
    cnt		r6  */
 
-ENTRY (BP_SYM (__mpn_rshift))
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
+ENTRY (__mpn_rshift)
 	mtctr	r5		# copy size into CTR
 	addi	r7,r3,-4	# move adjusted res_ptr to free return reg
 	subfic	r8,r6,32
@@ -59,4 +52,4 @@ L(1):	srw	r0,r11,r6
 L(2):	srw	r0,r10,r6
 	stw	r0,4(r7)
 	blr
-END (BP_SYM (__mpn_rshift))
+END (__mpn_rshift)
diff --git a/sysdeps/powerpc/powerpc32/setjmp-common.S b/sysdeps/powerpc/powerpc32/setjmp-common.S
index a35507f..60b0026 100644
--- a/sysdeps/powerpc/powerpc32/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/setjmp-common.S
@@ -23,12 +23,9 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 
-ENTRY (BP_SYM (__sigsetjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__sigsetjmp)
 
 #ifdef PTR_MANGLE
 	mr   r5,r1
@@ -67,6 +64,6 @@ ENTRY (BP_SYM (__sigsetjmp))
 	li   r3,0
 	blr
 #else
-	b BP_SYM (__sigjmp_save@local)
+	b __sigjmp_save@local
 #endif
-END (BP_SYM (__sigsetjmp))
+END (__sigsetjmp)
diff --git a/sysdeps/powerpc/powerpc32/start.S b/sysdeps/powerpc/powerpc32/start.S
index 6c69705..9d5f8d3 100644
--- a/sysdeps/powerpc/powerpc32/start.S
+++ b/sysdeps/powerpc/powerpc32/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
@@ -45,7 +44,7 @@
 	.align	2
 L(start_addresses):
 	.long	_SDA_BASE_
-	.long	BP_SYM (main)
+	.long	main
 	.long 	__libc_csu_init
 	.long 	__libc_csu_fini
 	ASM_SIZE_DIRECTIVE(L(start_addresses))
@@ -78,7 +77,7 @@ ENTRY(_start)
 	lwzu	r13,L(start_addresses)@l(r8)
 #endif
  /* and continue in libc-start, in glibc.  */
-	b	JUMPTARGET(BP_SYM (__libc_start_main))
+	b	JUMPTARGET(__libc_start_main)
 END(_start)
 
 /* Define a symbol for the first piece of initialized data.  */
diff --git a/sysdeps/powerpc/powerpc32/stpcpy.S b/sysdeps/powerpc/powerpc32/stpcpy.S
index 49f993d..03c6ddd 100644
--- a/sysdeps/powerpc/powerpc32/stpcpy.S
+++ b/sysdeps/powerpc/powerpc32/stpcpy.S
@@ -17,35 +17,23 @@
    <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)
 
 #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
 	clrlwi.	rTMP, rTMP, 30
@@ -84,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.  */
@@ -107,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/powerpc32/strchr.S b/sysdeps/powerpc/powerpc32/strchr.S
index f2e0d26..c9952ee 100644
--- a/sysdeps/powerpc/powerpc32/strchr.S
+++ b/sysdeps/powerpc/powerpc32/strchr.S
@@ -17,26 +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 this works.  */
 
 /* char * [r3] strchr (const char *s [r3] , int c [r4] )  */
 
-ENTRY (BP_SYM (strchr))
+ENTRY (strchr)
 
 #define rTMP1	r0
 #define rRTN	r3	/* outgoing result */
-#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 0xfefefeff (-0x01010101) */
 #define r7F7F	r7	/* constant 0x7f7f7f7f */
@@ -45,8 +37,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)
 
 	rlwimi	rCHR, rCHR, 8, 16, 23
 	li	rMASK, -1
@@ -90,7 +80,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
@@ -108,8 +97,6 @@ L(missed):
 	cntlzw	rCLZB, rTMP2
 	srwi	rCLZB, rCLZB, 3
 	add	rRTN, rSTR, rCLZB
-	CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, twlge)
-	STORE_RETURN_VALUE (rSTR)
 	blr
 
 L(foundit):
@@ -121,10 +108,8 @@ L(foundit):
 	subi	rSTR, rSTR, 4
 	srwi	rCLZB, rCLZB, 3
 	add	rRTN, rSTR, rCLZB
-	CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, twlge)
-	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/powerpc32/strcmp.S b/sysdeps/powerpc/powerpc32/strcmp.S
index d11e556..297ca3c 100644
--- a/sysdeps/powerpc/powerpc32/strcmp.S
+++ b/sysdeps/powerpc/powerpc32/strcmp.S
@@ -17,23 +17,17 @@
    <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)
 
 #define rTMP	r0
 #define rRTN	r3
 #define rSTR1	r3	/* first string arg */
 #define rSTR2	r4	/* second string arg */
-#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 0xfefefeff (-0x01010101) */
@@ -41,8 +35,6 @@ EALIGN (BP_SYM (strcmp), 4, 0)
 #define rNEG	r9	/* ~(word in s1 | 0x7f7f7f7f) */
 #define rBITDIF	r10	/* bits that differ in s1 & s2 words */
 
-	CHECK_BOUNDS_LOW (rSTR1, rTMP, rHIGH1)
-	CHECK_BOUNDS_LOW (rSTR2, rTMP, rHIGH2)
 
 	or	rTMP, rSTR2, rSTR1
 	clrlwi.	rTMP, rTMP, 30
@@ -82,7 +74,6 @@ L(endstring):
 	bgelr+	cr1
 L(equal):
 	li	rRTN, 0
-	/* GKM FIXME: check high bounds.  */
 	blr
 
 L(different):
@@ -92,7 +83,6 @@ L(different):
 	bgelr+
 L(highbit):
 	ori	rRTN, rWORD2, 1
-	/* GKM FIXME: check high bounds.  */
 	blr
 
 
@@ -116,11 +106,9 @@ L(u1):	cmpwi	cr1, rWORD1, 0
 	cmpw	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/powerpc32/strcpy.S b/sysdeps/powerpc/powerpc32/strcpy.S
index c240592..4ae577d 100644
--- a/sysdeps/powerpc/powerpc32/strcpy.S
+++ b/sysdeps/powerpc/powerpc32/strcpy.S
@@ -17,43 +17,27 @@
    <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)
 
 #define rTMP	r0
 #define rRTN	r3	/* incoming DEST arg preserved as result */
-#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 0xfefefeff (-0x01010101) */
 #define r7F7F	r8	/* constant 0x7f7f7f7f */
 #define rNEG	r9	/* ~(word in s1 | 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, rRTN
 	clrlwi.	rTMP, rTMP, 30
-#if __BOUNDED_POINTERS__
-	addi	rDEST, rDEST, -4
-#else
 	addi	rDEST, rRTN, -4
-#endif
 	bne	L(unaligned)
 
 	lis	rFEFE, -0x101
@@ -88,7 +72,6 @@ L(g1):	rlwinm.	rTMP, rALT, 8, 24, 31
 	stb	rTMP, 6(rDEST)
 	beqlr-
 	stb	rALT, 7(rDEST)
-	/* GKM FIXME: check high bound.  */
 	blr
 
 /* Oh well.  In this case, we just do a byte-by-byte copy.  */
@@ -110,11 +93,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/powerpc32/strlen.S b/sysdeps/powerpc/powerpc32/strlen.S
index b8193a6..9a6eafc 100644
--- a/sysdeps/powerpc/powerpc32/strlen.S
+++ b/sysdeps/powerpc/powerpc32/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:
 
@@ -72,7 +70,7 @@
 
 /* int [r3] strlen (char *s [r3])  */
 
-ENTRY (BP_SYM (strlen))
+ENTRY (strlen)
 
 #define rTMP1	r0
 #define rRTN	r3	/* incoming STR arg, outgoing result */
@@ -88,7 +86,6 @@ ENTRY (BP_SYM (strlen))
 #define rTMP3	r11
 #define rTMP4	r12
 
-	CHECK_BOUNDS_LOW (rRTN, rTMP1, rTMP2)
 
 	clrrwi	rSTR, rRTN, 2
 	lis	r7F7F, 0x7f7f
@@ -153,7 +150,6 @@ L(done0):
 	subf	rTMP1, rRTN, rSTR
 	srwi	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/powerpc32/strncmp.S b/sysdeps/powerpc/powerpc32/strncmp.S
index d9e274b..3cb6509 100644
--- a/sysdeps/powerpc/powerpc32/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/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)
 
 #define rTMP	r0
 #define rRTN	r3
@@ -156,5 +154,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/powerpc/powerpc32/sub_n.S b/sysdeps/powerpc/powerpc32/sub_n.S
index 617680d..94d3d3e 100644
--- a/sysdeps/powerpc/powerpc32/sub_n.S
+++ b/sysdeps/powerpc/powerpc32/sub_n.S
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_sub_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr,
                         mp_size_t size)
@@ -28,14 +26,7 @@
    possible 2-unrolled inner loop will not be.  Also, watch out for the
    alignment...  */
 
-EALIGN (BP_SYM (__mpn_sub_n), 3, 1)
-
-#if __BOUNDED_POINTERS__
-	slwi r10,r6,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r5, r8, r9, r10)
-#endif
+EALIGN (__mpn_sub_n, 3, 1)
 
 /* Set up for loop below.  */
 	mtcrf 0x01,r6
@@ -74,4 +65,4 @@ L(0):
 L(1):	subfe r3,r3,r3
 	neg   r3,r3
 	blr
-END (BP_SYM (__mpn_sub_n))
+END (__mpn_sub_n)
diff --git a/sysdeps/powerpc/powerpc32/submul_1.S b/sysdeps/powerpc/powerpc32/submul_1.S
index d32f833..d820318 100644
--- a/sysdeps/powerpc/powerpc32/submul_1.S
+++ b/sysdeps/powerpc/powerpc32/submul_1.S
@@ -17,19 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_submul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr,
                            mp_size_t s1_size, mp_limb_t s2_limb)
    Calculate res-s1*s2 and put result back in res; return carry.  */
 
-ENTRY (BP_SYM (__mpn_submul_1))
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
+ENTRY (__mpn_submul_1)
 	mtctr	r5
 
 	lwz	r0,0(r4)
@@ -55,4 +48,4 @@ L(0):	lwzu	r0,4(r4)
 L(1):	stw	r8,4(r3)
 	addze	r3,r10
 	blr
-END (BP_SYM (__mpn_submul_1))
+END (__mpn_submul_1)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S
index 2fc9fa2..eb27f42 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S
@@ -19,13 +19,10 @@
 #include <sysdep.h>
 #define _ERRNO_H	1
 #include <bits/errno.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.comm	__curbrk,4,4
 	.section ".text"
-ENTRY (BP_SYM (__brk))
-	DISCARD_BOUNDS (r3)	/* the bounds are meaningless, so toss 'em */
+ENTRY (__brk)
 	mflr	r0
 	stwu    r1,-16(r1)
 	cfi_adjust_cfa_offset (16)
@@ -50,6 +47,6 @@ ENTRY (BP_SYM (__brk))
 	blelr+
 	li      r3,ENOMEM
 	b	__syscall_error@local
-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/powerpc32/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
index 197b852..5790eff 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
@@ -20,8 +20,6 @@
 #define _ERRNO_H	1
 #include <bits/errno.h>
 #include <kernel-features.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #define CLONE_VM	0x00000100
 #define CLONE_THREAD	0x00010000
@@ -35,10 +33,7 @@
    		  int flags [r5], void *arg [r6], void *parent_tid [r7],
 		  void *tls [r8], void *child_tid [r9]); */
 
-ENTRY (BP_SYM (__clone))
-	/* GKM FIXME: add bounds checks, where sensible.  */
-	DISCARD_BOUNDS (r4)
-	DISCARD_BOUNDS (r6)
+ENTRY (__clone)
 
 	/* Check for child_stack == NULL || fn == NULL.  */
 	cmpwi	cr0,r4,0
@@ -124,6 +119,6 @@ L(badargs):
 	b	__syscall_error@local
 
 	cfi_startproc
-END (BP_SYM (__clone))
+END (__clone)
 
-weak_alias (BP_SYM (__clone), BP_SYM (clone))
+weak_alias (__clone, clone)

-- 
Joseph S. Myers
joseph@codesourcery.com


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