clarify the purpose of this project
[nyanglibc.git] / debug / strcpy_chk.s
blobe20a48a0d1f58e4cea9186afd7d9ca52f45c4e0d
1 .text
2 .p2align 4,,15
3 .globl __strcpy_chk
4 .type __strcpy_chk, @function
5 __strcpy_chk:
6 pushq %r12
7 pushq %rbp
8 movq %rdi, %r12
9 pushq %rbx
10 movq %rdx, %rbp
11 movq %rsi, %rdi
12 movq %rsi, %rbx
13 call strlen
14 cmpq %rbp, %rax
15 jnb .L5
16 movq %rbx, %rsi
17 movq %r12, %rdi
18 leaq 1(%rax), %rdx
19 popq %rbx
20 popq %rbp
21 popq %r12
22 jmp memcpy@PLT
23 .L5:
24 call __chk_fail
25 .size __strcpy_chk, .-__strcpy_chk
26 .hidden __chk_fail
27 .hidden strlen