summaryrefslogtreecommitdiff
path: root/libc/string
diff options
context:
space:
mode:
authorAustin Foxley <austinf@cetoncorp.com>2009-12-19 14:02:14 -0800
committerAustin Foxley <austinf@cetoncorp.com>2009-12-19 14:03:00 -0800
commit875d11eec5df38bae0003df4a884ef962cf28590 (patch)
tree83667b7ab2470a3aba40fb9ee868784d77d7e900 /libc/string
parentf3217f9be3225c4943677d03b274cbc0cb4ed228 (diff)
parent23528282b771d1af3df0fa17f1e909ad3b663f59 (diff)
Merge commit 'origin/master' into nptl
Conflicts: libc/signal/sigpause.c libc/string/x86_64/memset.S Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Diffstat (limited to 'libc/string')
-rw-r--r--libc/string/x86_64/bzero.S1
-rw-r--r--libc/string/x86_64/memcpy.S2
-rw-r--r--libc/string/x86_64/mempcpy.S1
-rw-r--r--libc/string/x86_64/memset.S4
4 files changed, 7 insertions, 1 deletions
diff --git a/libc/string/x86_64/bzero.S b/libc/string/x86_64/bzero.S
index 4d179ec4e..231d7cb41 100644
--- a/libc/string/x86_64/bzero.S
+++ b/libc/string/x86_64/bzero.S
@@ -1,5 +1,6 @@
#include <features.h>
#ifdef __UCLIBC_SUSV3_LEGACY__
# define memset bzero
+# define __memset_chk __bzero_chk
# include "memset.S"
#endif
diff --git a/libc/string/x86_64/memcpy.S b/libc/string/x86_64/memcpy.S
index 011291447..6d941e0f2 100644
--- a/libc/string/x86_64/memcpy.S
+++ b/libc/string/x86_64/memcpy.S
@@ -29,7 +29,9 @@
#if defined __PIC__ && !defined NOT_IN_libc
ENTRY (__memcpy_chk)
cmpq %rdx, %rcx
+#if defined __UCLIBC_HAS_SSP__
jb HIDDEN_JUMPTARGET (__chk_fail)
+#endif
END (__memcpy_chk)
#endif
ENTRY (BP_SYM (memcpy))
diff --git a/libc/string/x86_64/mempcpy.S b/libc/string/x86_64/mempcpy.S
index 3816d9f72..b0607aa57 100644
--- a/libc/string/x86_64/mempcpy.S
+++ b/libc/string/x86_64/mempcpy.S
@@ -1,3 +1,4 @@
#define memcpy mempcpy
+#define __memcpy_chk __mempcpy_chk
#include "memcpy.S"
libc_hidden_def(mempcpy)
diff --git a/libc/string/x86_64/memset.S b/libc/string/x86_64/memset.S
index 562574a4d..df265f394 100644
--- a/libc/string/x86_64/memset.S
+++ b/libc/string/x86_64/memset.S
@@ -29,10 +29,12 @@
#define LARGE $120000
.text
-#if !BZERO_P && defined __PIC__ && !defined NOT_IN_libc
+#if defined __PIC__ && !defined NOT_IN_libc
ENTRY (__memset_chk)
cmpq %rdx, %rcx
+#if defined __UCLIBC_HAS_SSP__
jb HIDDEN_JUMPTARGET (__chk_fail)
+#endif
END (__memset_chk)
#endif
ENTRY (memset)