diff options
-rw-r--r-- | winsup/cygwin/string.h | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/winsup/cygwin/string.h b/winsup/cygwin/string.h index 778bb40..84dc14c 100644 --- a/winsup/cygwin/string.h +++ b/winsup/cygwin/string.h @@ -38,70 +38,6 @@ strchr (const char *s, int c) return res; } -extern const char isalpha_array[]; - -#undef strcasematch -#define strcasematch cygwin_strcasematch - -static inline int -cygwin_strcasematch (const char *cs, const char *ct) -{ - register int __res; - int d0, d1; - __asm__ ("\ - .global _isalpha_array \n\ - cld \n\ - andl $0xff,%%eax \n\ -1: lodsb \n\ - scasb \n\ - je 2f \n\ - xorb _isalpha_array(%%eax),%%al \n\ - cmpb -1(%%edi),%%al \n\ - jne 3f \n\ -2: testb %%al,%%al \n\ - jnz 1b \n\ - movl $1,%%eax \n\ - jmp 4f \n\ -3: xor %0,%0 \n\ -4:" - :"=a" (__res), "=&S" (d0), "=&D" (d1) - : "1" (cs), "2" (ct)); - - return __res; -} - -#undef strncasematch -#define strncasematch cygwin_strncasematch - -static inline int -cygwin_strncasematch (const char *cs, const char *ct, size_t n) -{ - register int __res; - int d0, d1, d2; - __asm__ ("\ - .global _isalpha_array; \n\ - cld \n\ - andl $0xff,%%eax \n\ -1: decl %3 \n\ - js 3f \n\ - lodsb \n\ - scasb \n\ - je 2f \n\ - xorb _isalpha_array(%%eax),%%al \n\ - cmpb -1(%%edi),%%al \n\ - jne 4f \n\ -2: testb %%al,%%al \n\ - jnz 1b \n\ -3: movl $1,%%eax \n\ - jmp 5f \n\ -4: xor %0,%0 \n\ -5:" - :"=a" (__res), "=&S" (d0), "=&D" (d1), "=&c" (d2) - :"1" (cs), "2" (ct), "3" (n)); - - return __res; -} - #ifdef __cplusplus } #endif |