1*4882a593Smuzhiyun #ifndef __ASM_I386_STRING_H 2*4882a593Smuzhiyun #define __ASM_I386_STRING_H 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun /* 5*4882a593Smuzhiyun * We don't do inline string functions, since the 6*4882a593Smuzhiyun * optimised inline asm versions are not small. 7*4882a593Smuzhiyun */ 8*4882a593Smuzhiyun #undef __HAVE_ARCH_STRNCPY 9*4882a593Smuzhiyun extern char *strncpy(char *__dest, __const__ char *__src, __kernel_size_t __n); 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #undef __HAVE_ARCH_STRRCHR 12*4882a593Smuzhiyun extern char * strrchr(const char * s, int c); 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun #undef __HAVE_ARCH_STRCHR 15*4882a593Smuzhiyun extern char * strchr(const char * s, int c); 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun #define __HAVE_ARCH_MEMCPY 18*4882a593Smuzhiyun extern void * memcpy(void *, const void *, __kernel_size_t); 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #define __HAVE_ARCH_MEMMOVE 21*4882a593Smuzhiyun extern void * memmove(void *, const void *, __kernel_size_t); 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #undef __HAVE_ARCH_MEMCHR 24*4882a593Smuzhiyun extern void * memchr(const void *, int, __kernel_size_t); 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun #define __HAVE_ARCH_MEMSET 27*4882a593Smuzhiyun extern void * memset(void *, int, __kernel_size_t); 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun #undef __HAVE_ARCH_MEMZERO 30*4882a593Smuzhiyun extern void memzero(void *ptr, __kernel_size_t n); 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun #endif 33