summaryrefslogtreecommitdiff
path: root/sysdeps/s390/bits/string.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/s390/bits/string.h')
-rw-r--r--sysdeps/s390/bits/string.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/sysdeps/s390/bits/string.h b/sysdeps/s390/bits/string.h
index b2a3ba9c98..49103b9438 100644
--- a/sysdeps/s390/bits/string.h
+++ b/sysdeps/s390/bits/string.h
@@ -42,6 +42,8 @@
#ifndef _FORCE_INLINES
#define strlen(str) __strlen_g ((str))
+__STRING_INLINE size_t __strlen_g (__const char *) __asm__ ("strlen");
+
__STRING_INLINE size_t
__strlen_g (__const char *__str)
{
@@ -63,6 +65,8 @@ __strlen_g (__const char *__str)
#ifndef _FORCE_INLINES
#define strcpy(dest, src) __strcpy_g ((dest), (src))
+__STRING_INLINE char *__strcpy_g (char *, __const char *) __asm ("strcpy");
+
__STRING_INLINE char *
__strcpy_g (char *__dest, __const char *__src)
{
@@ -81,6 +85,9 @@ __strcpy_g (char *__dest, __const char *__src)
#ifndef _FORCE_INLINES
#define strncpy(dest, src, n) __strncpy_g ((dest), (src), (n))
+__STRING_INLINE char *__strncpy_g (char *, __const char *, size_t)
+ __asm__ ("strncpy");
+
__STRING_INLINE char *
__strncpy_g (char *__dest, __const char *__src, size_t __n)
{
@@ -122,8 +129,10 @@ __strncpy_g (char *__dest, __const char *__src, size_t __n)
#ifndef _FORCE_INLINES
#define strcat(dest, src) __strcat_g ((dest), (src))
+__STRING_INLINE char *__strcat_g (char *, __const char *) __asm__ ("strcat");
+
__STRING_INLINE char *
-__strcat_g(char *__dest, const char *__src)
+__strcat_g (char *__dest, __const char *__src)
{
char *__ret = __dest;
char *__ptr, *__tmp;
@@ -152,6 +161,9 @@ __strcat_g(char *__dest, const char *__src)
#ifndef _FORCE_INLINES
#define strncat(dest, src, n) __strncat_g ((dest), (src), (n))
+__STRING_INLINE char *__strncat_g (char *, __const char *, size_t)
+ __asm__ ("strncat");
+
__STRING_INLINE char *
__strncat_g (char *__dest, __const char *__src, size_t __n)
{