http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53726
--- Comment #11 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-06-20 14:36:00 UTC --- (In reply to comment #9) > (In reply to comment #3) > > I added executable testcase. Command line to compile > > > > gcc -g -ansi -O3 -ffast-math -msse2 -mfpmath=sse -m32 -static -march=corei7 > > -mtune=corei7 test.c m.c > > > > Please compare results without -static. Same results. memcpy ends up here: Dump of assembler code for function memcpy: => 0xf7ed0cc0 <+0>: push %edi 0xf7ed0cc1 <+1>: push %esi 0xf7ed0cc2 <+2>: mov 0xc(%esp),%edi 0xf7ed0cc6 <+6>: mov 0x10(%esp),%esi 0xf7ed0cca <+10>: mov 0x14(%esp),%ecx 0xf7ed0cce <+14>: mov %edi,%eax 0xf7ed0cd0 <+16>: cld 0xf7ed0cd1 <+17>: cmp $0x20,%ecx 0xf7ed0cd4 <+20>: jbe 0xf7ed0d2c <memcpy+108> ... 0xf7ed0d2c <+108>: rep movsb %ds:(%esi),%es:(%edi) 0xf7ed0d2e <+110>: pop %esi 0xf7ed0d2f <+111>: pop %edi 0xf7ed0d30 <+112>: ret this seems to be sysdeps/i386/i586/memcpy.S