diff options
author | joseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d> | 2013-03-03 17:10:55 +0000 |
---|---|---|
committer | joseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d> | 2013-03-03 17:10:55 +0000 |
commit | d15f124ff59606604c0243ee19cd67bc99ecd09f (patch) | |
tree | f0b18e431b15b797d5f5dc980928cd1a26b8f74a /libc/sysdeps/i386/i486/strcat.S | |
parent | c1078e9067234e88d5c1ca8af18ae67b64141d66 (diff) | |
download | eglibc2-d15f124ff59606604c0243ee19cd67bc99ecd09f.tar.gz |
Merge changes between r22241 and r22552 from /fsf/trunk.
git-svn-id: svn://svn.eglibc.org/trunk@22553 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'libc/sysdeps/i386/i486/strcat.S')
-rw-r--r-- | libc/sysdeps/i386/i486/strcat.S | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/libc/sysdeps/i386/i486/strcat.S b/libc/sysdeps/i386/i486/strcat.S index 6549b5c16..7d45862a2 100644 --- a/libc/sysdeps/i386/i486/strcat.S +++ b/libc/sysdeps/i386/i486/strcat.S @@ -21,25 +21,20 @@ #include <sysdep.h> #include "asm-syntax.h" -#include "bp-sym.h" -#include "bp-asm.h" -#define PARMS LINKAGE+4 /* space for 1 saved reg */ +#define PARMS 4+4 /* space for 1 saved reg */ #define RTN PARMS -#define DEST RTN+RTN_SIZE -#define SRC DEST+PTR_SIZE +#define DEST RTN +#define SRC DEST+4 .text -ENTRY (BP_SYM (strcat)) - ENTER +ENTRY (strcat) pushl %edi /* Save callee-safe register. */ cfi_adjust_cfa_offset (4) movl DEST(%esp), %edx movl SRC(%esp), %ecx - CHECK_BOUNDS_LOW (%edx, DEST(%esp)) - CHECK_BOUNDS_LOW (%ecx, SRC(%esp)) testb $0xff, (%ecx) /* Is source string empty? */ jz L(8) /* yes => return */ @@ -260,14 +255,11 @@ L(9): movb %al, (%ecx,%edx) /* store first byte of last word */ movb %ah, 3(%ecx,%edx) /* store fourth byte of last word */ -L(8): /* GKM FIXME: check high bounds */ - movl DEST(%esp), %eax /* start address of destination is result */ - RETURN_BOUNDED_POINTER (DEST(%esp)) +L(8): movl DEST(%esp), %eax /* start address of destination is result */ popl %edi /* restore saved register */ cfi_adjust_cfa_offset (-4) cfi_restore (edi) - LEAVE - RET_PTR -END (BP_SYM (strcat)) + ret +END (strcat) libc_hidden_builtin_def (strcat) |