about summary refs log tree commit diff
path: root/sysdeps/powerpc/powerpc64/strcmp.S
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2013-03-06 00:10:21 +0000
committerJoseph Myers <joseph@codesourcery.com>2013-03-06 00:10:21 +0000
commit2d67d91ac08aa2f793d220ad8712541fefa0ba79 (patch)
tree26aa1d67b2b91074c8d2ca4206a938661ccf739d /sysdeps/powerpc/powerpc64/strcmp.S
parentcdcf361fda31ec8b3e93e89d5aa26ee5b68f8867 (diff)
downloadglibc-2d67d91ac08aa2f793d220ad8712541fefa0ba79.tar.gz
glibc-2d67d91ac08aa2f793d220ad8712541fefa0ba79.tar.xz
glibc-2d67d91ac08aa2f793d220ad8712541fefa0ba79.zip
Remove powerpc64 bounded-pointers code.
Diffstat (limited to 'sysdeps/powerpc/powerpc64/strcmp.S')
-rw-r--r--sysdeps/powerpc/powerpc64/strcmp.S22
1 files changed, 2 insertions, 20 deletions
diff --git a/sysdeps/powerpc/powerpc64/strcmp.S b/sysdeps/powerpc/powerpc64/strcmp.S
index 46600d5d01..c9d6dac121 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)