about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-12-15 19:35:58 +0000
committerUlrich Drepper <drepper@redhat.com>2004-12-15 19:35:58 +0000
commit9b359dd0eb913bd8744e0939b21e41c4d70a9971 (patch)
treef2b9e7ed523b027506f352e39e09516ab2134c05
parent7acb3da9d2d135b5cbf72df1c5aec0339ac2747a (diff)
downloadglibc-9b359dd0eb913bd8744e0939b21e41c4d70a9971.tar.gz
glibc-9b359dd0eb913bd8744e0939b21e41c4d70a9971.tar.xz
glibc-9b359dd0eb913bd8744e0939b21e41c4d70a9971.zip
Update.
2004-12-15  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
	implementation.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/i386/i486/bits/string.h3
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index b048b71eb1..b2969c9543 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-12-15  Ulrich Drepper  <drepper@redhat.com>
+
+	* sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
+	implementation.
+
 2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* Makeconfig (libunwind): New.
diff --git a/sysdeps/i386/i486/bits/string.h b/sysdeps/i386/i486/bits/string.h
index 099d720a4c..0e24081127 100644
--- a/sysdeps/i386/i486/bits/string.h
+++ b/sysdeps/i386/i486/bits/string.h
@@ -1050,6 +1050,7 @@ __strncat_g (char *__dest, __const char __src[], size_t __n)
 #ifdef __i686__
   __asm__ __volatile__
     ("repne; scasb\n"
+     "movl %%edx, %3\n\t"
      "decl %1\n\t"
      "1:\n\t"
      "decl	%3\n\t"
@@ -1062,7 +1063,7 @@ __strncat_g (char *__dest, __const char __src[], size_t __n)
      "2:\n\t"
      "movb	$0,(%1)"
      : "=&a" (__dummy), "=&D" (__tmp), "=&S" (__src), "=&c" (__n)
-     : "0" (0), "1" (__tmp), "2" (__src), "3" (__n)
+     : "0" (0), "1" (__tmp), "2" (__src), "3" (0xffffffff), "d" (__n)
      : "memory", "cc");
 #else
   --__tmp;