summaryrefslogtreecommitdiff
path: root/libc/sysdeps/i386/strpbrk.S
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/i386/strpbrk.S')
-rw-r--r--libc/sysdeps/i386/strpbrk.S24
1 files changed, 6 insertions, 18 deletions
diff --git a/libc/sysdeps/i386/strpbrk.S b/libc/sysdeps/i386/strpbrk.S
index 617a11991..bbc0cbeb6 100644
--- a/libc/sysdeps/i386/strpbrk.S
+++ b/libc/sysdeps/i386/strpbrk.S
@@ -22,21 +22,17 @@
#include <sysdep.h>
#include "asm-syntax.h"
-#include "bp-sym.h"
-#include "bp-asm.h"
-#define PARMS LINKAGE /* no space for saved regs */
+#define PARMS 4 /* no space for saved regs */
#define RTN PARMS
-#define STR RTN+RTN_SIZE
-#define STOP STR+PTR_SIZE
+#define STR RTN
+#define STOP STR+4
.text
-ENTRY (BP_SYM (strpbrk))
- ENTER
+ENTRY (strpbrk)
movl STR(%esp), %edx
movl STOP(%esp), %eax
- CHECK_BOUNDS_LOW (%edx, STR(%esp))
/* First we create a table with flags for all possible characters.
For the ASCII (7bit/8bit) or ISO-8859-X character sets which are
@@ -238,18 +234,10 @@ L(5): incl %eax
L(4): addl $256, %esp /* remove stopset */
cfi_adjust_cfa_offset (-256)
- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb)
orb %cl, %cl /* was last character NUL? */
jnz L(7) /* no => return pointer */
xorl %eax, %eax
- RETURN_NULL_BOUNDED_POINTER
- LEAVE
- RET_PTR
-
-L(7): RETURN_BOUNDED_POINTER (STR(%esp))
-
- LEAVE
- RET_PTR
-END (BP_SYM (strpbrk))
+L(7): ret
+END (strpbrk)
libc_hidden_builtin_def (strpbrk)