PATCH: Restore __ubp_memchr alias
Greg McGary
greg@mcgary.org
Wed Jul 26 01:20:00 GMT 2000
i686: No build regressions. No binary changes.
OK?
2000-07-26 Greg McGary <greg@mcgary.org>
* sysdeps/generic/bp-checks.h (__memchr): Remove incorrect decl.
(__ubp_memchr): Add correct decl.
(_CHECK_STRING): Use __ubp_memchr.
* sysdeps/alpha/memchr.S [!__BOUNDED_POINTERS__] (__ubp_memchr):
New alias for unbounded-pointer __memchr.
* sysdeps/i386/memchr.S: Likewise.
* sysdeps/ia64/memchr.S: Likewise.
* sysdeps/m68k/memchr.S: Likewise.
* sysdeps/sparc/sparc32/memchr.S: Likewise.
* sysdeps/sparc/sparc64/memchr.S: Likewise.
* sysdeps/vax/memchr.s: Likewise.
Index: sysdeps/generic/bp-checks.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/generic/bp-checks.h,v
retrieving revision 1.3
diff -u -p -r1.3 bp-checks.h
--- bp-checks.h 2000/07/17 22:36:15 1.3
+++ bp-checks.h 2000/07/26 08:16:37
@@ -26,7 +26,6 @@
#if __BOUNDED_POINTERS__
# define BOUNDS_VIOLATED (__builtin_trap (), 0)
-extern int __memchr (const char *__unbounded, int, unsigned);
/* Verify that pointer's value >= low. Return pointer value. */
# define CHECK_BOUNDS_LOW(ARG) \
@@ -45,10 +44,12 @@ extern int __memchr (const char *__unbou
&& BOUNDS_VIOLATED), \
__ptrvalue (ARG))
+extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned);
+
# define _CHECK_STRING(ARG, COND) \
(((COND) \
&& (__ptrvalue (ARG) < __ptrlow (ARG) \
- || !__memchr (__ptrvalue (ARG), '\0', \
+ || !__ubp_memchr (__ptrvalue (ARG), '\0', \
(__ptrhigh (ARG) - __ptrvalue (ARG)))) \
&& BOUNDS_VIOLATED), \
__ptrvalue (ARG))
Index: sysdeps/alpha/memchr.S
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/alpha/memchr.S,v
retrieving revision 1.9
diff -u -p -B -w -r1.9 memchr.S
--- memchr.S 2000/07/18 08:40:57 1.9
+++ memchr.S 2000/07/26 08:19:39
@@ -170,3 +170,6 @@ $not_found:
END(__memchr)
weak_alias (__memchr, memchr)
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
Index: sysdeps/i386/memchr.S
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/i386/memchr.S,v
retrieving revision 1.9
diff -u -p -r1.9 memchr.S
--- memchr.S 2000/07/17 22:36:15 1.9
+++ memchr.S 2000/07/26 08:16:37
@@ -328,3 +328,6 @@ L(pop): popl %edi /* pop saved register
END (BP_SYM (__memchr))
weak_alias (BP_SYM (__memchr), BP_SYM (memchr))
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
Index: sysdeps/ia64/memchr.S
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/ia64/memchr.S,v
retrieving revision 1.3
diff -u -p -B -w -r1.3 memchr.S
--- memchr.S 2000/07/17 22:36:16 1.3
+++ memchr.S 2000/07/26 08:19:39
@@ -124,3 +124,6 @@ ENTRY(__memchr)
END(__memchr)
weak_alias (__memchr, memchr)
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
Index: sysdeps/m68k/memchr.S
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/m68k/memchr.S,v
retrieving revision 1.2
diff -u -p -B -w -r1.2 memchr.S
--- memchr.S 2000/07/17 22:36:16 1.2
+++ memchr.S 2000/07/26 08:19:40
@@ -226,3 +226,6 @@ L(L9:)
END(__memchr)
weak_alias (__memchr, memchr)
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
Index: sysdeps/sparc/sparc32/memchr.S
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/sparc/sparc32/memchr.S,v
retrieving revision 1.2
diff -u -p -B -w -r1.2 memchr.S
--- memchr.S 2000/07/17 22:36:16 1.2
+++ memchr.S 2000/07/26 08:19:40
@@ -143,3 +143,6 @@ ENTRY(__memchr)
END(__memchr)
weak_alias (__memchr, memchr)
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
Index: sysdeps/sparc/sparc64/memchr.S
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/sparc/sparc64/memchr.S,v
retrieving revision 1.4
diff -u -p -B -w -r1.4 memchr.S
--- memchr.S 2000/07/17 22:36:16 1.4
+++ memchr.S 2000/07/26 08:19:40
@@ -259,3 +259,6 @@ ENTRY(__memchr)
END(__memchr)
weak_alias (__memchr, memchr)
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
Index: sysdeps/vax/memchr.s
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/vax/memchr.s,v
retrieving revision 1.4
diff -u -p -B -w -r1.4 memchr.s
--- memchr.s 2000/07/17 22:36:16 1.4
+++ memchr.s 2000/07/26 08:19:40
@@ -69,4 +69,6 @@ ENTRY(__memchr, 0)
brb 0b # and loop
weak_alias (__memchr, memchr)
-
\ No newline at end of file
+#if !__BOUNDED_POINTERS__
+weak_alias (__memchr, __ubp_memchr)
+#endif
More information about the Libc-hacker
mailing list