This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/29337] -mfpmath=387 doesn't use fistp for double-to-integer conversion
- From: "seongbae dot park at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 3 Oct 2006 23:37:54 -0000
- Subject: [Bug target/29337] -mfpmath=387 doesn't use fistp for double-to-integer conversion
- References: <bug-29337-12811@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from seongbae dot park at gmail dot com 2006-10-03 23:37 -------
(In reply to comment #1)
> (In reply to comment #0)
>
> > This makes a difference if/when the extra precision of 387 makes difference
>
> for an extra prescision try to use a `long double'.
I'm afraid you're missing my point.
The problem is that for 64-bit and 32-bit floating-point to integer conversion,
x86 (32bit) target uses fistp* whereas x86_64 (64-bit) target uses cvt* WHEN
-mfpmath=387.
This defeats the purpose of the option -mfpmath=387 which is supposed to make
floating-point computations to use 387, instead of SSE2.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29337