------- Comment #2 from pluto at agmk dot net  2006-04-06 12:49 -------
for -march=i{345}86 I get:

f:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $4008, %esp
        movl    %esp, %eax
        pushl   %edx
        pushl   $4000
        pushl   8(%ebp)
        pushl   %eax
        call    memcpy
        addl    $16, %esp
        call    g
        addl    $4000, %esp
        leave
        ret

for -march=i686,pentium2,... I get:

f:
        pushl   %ebp
        xorl    %edx, %edx
        movl    %esp, %ebp
        subl    $4008, %esp
        movl    8(%ebp), %ecx
.L3:
        cmpl    $4000, %edx
        jb      .L2
        call    g
        leave
        ret
        .p2align 4,,7
.L2:
        movzbl  (%ecx,%edx), %eax
        movb    %al, (%esp,%edx)
        incl    %edx
        .p2align 4,,3
        jmp     .L3


$ gcc version 4.1.1 20060405 (prerelease) (PLD-Linux)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27055

Reply via email to