1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
.global memcpy .global __memcpy_fwd .hidden __memcpy_fwd .type memcpy,@function memcpy: __memcpy_fwd: mov %rdi,%rax cmp $8,%rdx jc 1f test $7,%edi jz 1f 2: movsb dec %rdx test $7,%edi jnz 2b 1: mov %rdx,%rcx shr $3,%rcx rep movsq and $7,%edx jz 1f 2: movsb dec %edx jnz 2b 1: ret