github.com/afumu/libc@v0.0.6/musl/src/string/i386/memcpy.s (about) 1 .global memcpy 2 .global __memcpy_fwd 3 .hidden __memcpy_fwd 4 .type memcpy,@function 5 memcpy: 6 __memcpy_fwd: 7 push %esi 8 push %edi 9 mov 12(%esp),%edi 10 mov 16(%esp),%esi 11 mov 20(%esp),%ecx 12 mov %edi,%eax 13 cmp $4,%ecx 14 jc 1f 15 test $3,%edi 16 jz 1f 17 2: movsb 18 dec %ecx 19 test $3,%edi 20 jnz 2b 21 1: mov %ecx,%edx 22 shr $2,%ecx 23 rep 24 movsl 25 and $3,%edx 26 jz 1f 27 2: movsb 28 dec %edx 29 jnz 2b 30 1: pop %edi 31 pop %esi 32 ret