This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/29930] Omitted conversion float -> double in x86 back-end



------- Comment #2 from ubizjak at gmail dot com  2006-11-21 20:09 -------
You should use -ffloat-store if you are concerned about excess precision. There
will be no end of moves to and from memory:

foo:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $16, %esp
        fildll  8(%ebp)
        fstps   -4(%ebp)
        flds    -4(%ebp)
        fstpl   -16(%ebp)
        fldl    -16(%ebp)
        leave
        ret

This is a bit unoptimal, but I guess one shouldn't count extra cpu cycles when
-ffloat-store is required.

BTW: -ffloat-store with SSE math is a bit amusing, but fortunatelly totally
unnecessary.


-- 

ubizjak at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |WONTFIX


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]