aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/i386/strspn.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/i386/strspn.S')
-rw-r--r--sysdeps/i386/strspn.S18
1 files changed, 10 insertions, 8 deletions
diff --git a/sysdeps/i386/strspn.S b/sysdeps/i386/strspn.S
index 9f83adcc27..cfd11f0a9f 100644
--- a/sysdeps/i386/strspn.S
+++ b/sysdeps/i386/strspn.S
@@ -1,7 +1,7 @@
/* strcspn (str, ss) -- Return the length of the initial segment of STR
which contains only characters from SS.
For Intel 80x86, x>=3.
- Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>
Bug fixes by Alan Modra <Alan@SPRI.Levels.UniSA.Edu.Au>
@@ -23,17 +23,18 @@
#include <sysdep.h>
#include "asm-syntax.h"
+#include "bp-asm.h"
-/*
- INPUT PARAMETERS:
- str (sp + 4)
- skipset (sp + 8)
-*/
+#define PARMS LINKAGE /* no space for saved regs */
+#define STR PARMS
+#define SKIP STR+PTR_SIZE
.text
ENTRY (strspn)
- movl 4(%esp), %edx /* get string pointer */
- movl 8(%esp), %eax /* get skipset pointer */
+ ENTER
+
+ movl STR(%esp), %edx
+ movl SKIP(%esp), %eax
/* First we create a table with flags for all possible characters.
For the ASCII (7bit/8bit) or ISO-8859-X character sets which are
@@ -173,5 +174,6 @@ L(4): subl %edx, %eax /* we have to return the number of valid
non-valid character */
addl $256, %esp /* remove stopset */
+ LEAVE
ret
END (strspn)