------- Additional Comments From uros at kss-loka dot si  2004-11-30 14:58 
-------
'gcc -O -march=pentium4 -fomit-frame-pointer -S t32.c' now produces:

        .file   "t32.c"
        .text
.globl old_64_to_32
        .type   old_64_to_32, @function
old_64_to_32:
        subl $12, %esp
        movq %mm0, (%esp)
        movl (%esp), %eax
        addl $12, %esp
        ret
        .size   old_64_to_32, .-old_64_to_32
.globl new_64_to_32
        .type   new_64_to_32, @function
new_64_to_32:
        subl $12, %esp
        movq %mm0, (%esp)
        movl (%esp), %eax
        addl $12, %esp
        ret
        .size   new_64_to_32, .-new_64_to_32
.globl old_32_to_64
        .type   old_32_to_64, @function
old_32_to_64:
        movl 4(%esp), %eax
        movd 8(%esp), %mm0
        movq %mm0, (%eax)
        ret $4
        .size   old_32_to_64, .-old_32_to_64
.globl new_32_to_64
        .type   new_32_to_64, @function
new_32_to_64:
        movl 4(%esp), %eax
        movd 8(%esp), %mm0
        movq %mm0, (%eax)
        ret $4
        .size   new_32_to_64, .-new_32_to_64
        .ident  "GCC: (GNU) 4.0.0 20041130 (experimental)"
        .section .note.GNU-stack,"",@progbits

new_* and old_* functions produce the same code.

-- 


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

Reply via email to