Go to the documentation of this file.
15 #ifndef _XTENSA_STRING_H
16 #define _XTENSA_STRING_H
18 #define __HAVE_ARCH_STRCPY
19 static inline char *
strcpy(
char *__dest,
const char *__src)
21 register char *__xdest = __dest;
22 unsigned long __dummy;
30 :
"=r" (__dest),
"=r" (__src),
"=&r" (__dummy)
31 :
"0" (__dest),
"1" (__src)
37 #define __HAVE_ARCH_STRNCPY
38 static inline char *
strncpy(
char *__dest,
const char *__src,
size_t __n)
40 register char *__xdest = __dest;
41 unsigned long __dummy;
55 :
"=r" (__dest),
"=r" (__src),
"=&r" (__dummy)
56 :
"0" (__dest),
"1" (__src),
"r" (__src+__n)
62 #define __HAVE_ARCH_STRCMP
63 static inline int strcmp(
const char *__cs,
const char *__ct)
66 unsigned long __dummy;
78 :
"=r" (__cs),
"=r" (__ct),
"=&r" (__res),
"=&r" (__dummy)
79 :
"0" (__cs),
"1" (__ct));
84 #define __HAVE_ARCH_STRNCMP
85 static inline int strncmp(
const char *__cs,
const char *__ct,
size_t __n)
88 unsigned long __dummy;
103 :
"=r" (__cs),
"=r" (__ct),
"=&r" (__res),
"=&r" (__dummy)
104 :
"0" (__cs),
"1" (__ct),
"r" (__cs+__n));
109 #define __HAVE_ARCH_MEMSET
110 extern void *
memset(
void *__s,
int __c,
size_t __count);
112 #define __HAVE_ARCH_MEMCPY
113 extern void *
memcpy(
void *__to, __const__
void *__from,
size_t __n);
115 #define __HAVE_ARCH_MEMMOVE
116 extern void *
memmove(
void *__dest, __const__
void *__src,
size_t __n);
119 #define __HAVE_ARCH_BCOPY