Improve performance of strncpy.

This commit is contained in:
Wilco Dijkstra 2014-11-24 15:15:10 +00:00
parent b863d2bc4d
commit 6423d4754c
2 changed files with 10 additions and 10 deletions

View File

@ -1,4 +1,8 @@
2014-09-23 Wilco Dijkstra <wdijkstr@arm.com>
2014-11-24 Wilco Dijkstra <wdijkstr@arm.com>
* string/strncpy.c (strncpy): Improve performance by using memset.
2014-11-24 Wilco Dijkstra <wdijkstr@arm.com>
* string/strcpy.c (strcpy):
Improve performance by using strlen and memcpy.

View File

@ -57,10 +57,10 @@ STRNCPY (char *s1, const char *s2, size_t n)
if (--n4 == 0)
goto last_chars;
}
n = n - (s1 - s) - 1;
if (n == 0)
return s;
goto zero_fill;
s1++;
n = n - (s1 - s);
memset (s1, '\0', n);
return s;
}
last_chars:
@ -77,11 +77,7 @@ STRNCPY (char *s1, const char *s2, size_t n)
}
while (c != '\0');
zero_fill:
do
*++s1 = '\0';
while (--n > 0);
memset (s1 + 1, '\0', n);
return s;
}
libc_hidden_builtin_def (strncpy)