public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug target/14850] New: -ffloat-store and -mieee-fp aren't doing what I assume they should do @ 2004-04-05 11:11 gonnetp at inf dot ethz dot ch 2004-04-05 11:24 ` [Bug target/14850] " pinskia at gcc dot gnu dot org ` (2 more replies) 0 siblings, 3 replies; 4+ messages in thread From: gonnetp at inf dot ethz dot ch @ 2004-04-05 11:11 UTC (permalink / raw) To: gcc-bugs I am trying to compute the IEEE-754 unit of least precision (ulp) for 64-bit double precision numbers on an IA-32 machine with the following C-code: int main ( int argc , char *argv ) { double d, eps; printf("Unit of Least Precision:\n"); d = 1.0; eps = 0.5; while (1.0 + eps/2 > 1.0) eps /= 2; printf("ulp = %20.16e\n\n",eps); } Compiling with gcc-3.3.1 using gcc -O0 -ffloat-store -mieee-fp ieee.c I get the output Unit of Least Precision: ulp = 1.0842021724855044e-19 meaning that my program is using the extra bits despite the "-ffloat-store" and "-mieee-fp" options. Is this correct? Using the Intel C Compiler v. 7.1 and compiling with icc -pc64 -O0 ieee.c I get the correct result Unit of Least Precision: ulp = 2.2204460492503131e-16 Is there an option to gcc that forces the use of IEEE-754 64-bit operations as in the Intel compiler? If not, is there any way to set this behaviour by hand? Cheers and thanks Pedro -- Summary: -ffloat-store and -mieee-fp aren't doing what I assume they should do Product: gcc Version: 3.3.1 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gonnetp at inf dot ethz dot ch CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14850 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/14850] -ffloat-store and -mieee-fp aren't doing what I assume they should do 2004-04-05 11:11 [Bug target/14850] New: -ffloat-store and -mieee-fp aren't doing what I assume they should do gonnetp at inf dot ethz dot ch @ 2004-04-05 11:24 ` pinskia at gcc dot gnu dot org 2004-04-07 3:36 ` pinskia at gcc dot gnu dot org 2004-04-07 9:11 ` gonnetp at inf dot ethz dot ch 2 siblings, 0 replies; 4+ messages in thread From: pinskia at gcc dot gnu dot org @ 2004-04-05 11:24 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From pinskia at gcc dot gnu dot org 2004-04-05 11:24 ------- If you have a pentium4 or higher (including amd64), you can use the following options: "-mfpmath=sse -msse -msse2". The other thing you can do is manually change the rounding mode which I assume is what the option passed to ICC does. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14850 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/14850] -ffloat-store and -mieee-fp aren't doing what I assume they should do 2004-04-05 11:11 [Bug target/14850] New: -ffloat-store and -mieee-fp aren't doing what I assume they should do gonnetp at inf dot ethz dot ch 2004-04-05 11:24 ` [Bug target/14850] " pinskia at gcc dot gnu dot org @ 2004-04-07 3:36 ` pinskia at gcc dot gnu dot org 2004-04-07 9:11 ` gonnetp at inf dot ethz dot ch 2 siblings, 0 replies; 4+ messages in thread From: pinskia at gcc dot gnu dot org @ 2004-04-07 3:36 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From pinskia at gcc dot gnu dot org 2004-04-07 03:36 ------- Actually they are documented as what they do. What you need to do is to change the FPU's internal precission to 64bit from the defualt of 80bits. -- What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14850 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/14850] -ffloat-store and -mieee-fp aren't doing what I assume they should do 2004-04-05 11:11 [Bug target/14850] New: -ffloat-store and -mieee-fp aren't doing what I assume they should do gonnetp at inf dot ethz dot ch 2004-04-05 11:24 ` [Bug target/14850] " pinskia at gcc dot gnu dot org 2004-04-07 3:36 ` pinskia at gcc dot gnu dot org @ 2004-04-07 9:11 ` gonnetp at inf dot ethz dot ch 2 siblings, 0 replies; 4+ messages in thread From: gonnetp at inf dot ethz dot ch @ 2004-04-07 9:11 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From gonnetp at inf dot ethz dot ch 2004-04-07 09:11 ------- Subject: Re: -ffloat-store and -mieee-fp aren't doing what I assume they should do Hmm... Do you know how to do this? Is there a way of submitting this as a feature request (i.e. for an icc-like command line option)? The problem is that adding any special library calls to set the FPU precision will mess-up portability :( Cheers and many thanks, Pedro On Wed, 2004-04-07 at 04:36, pinskia at gcc dot gnu dot org wrote: > ------- Additional Comments From pinskia at gcc dot gnu dot org 2004-04-07 03:36 ------- > Actually they are documented as what they do. What you need to do is to change the > FPU's internal precission to 64bit from the defualt of 80bits. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14850 ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2004-04-07 9:11 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2004-04-05 11:11 [Bug target/14850] New: -ffloat-store and -mieee-fp aren't doing what I assume they should do gonnetp at inf dot ethz dot ch 2004-04-05 11:24 ` [Bug target/14850] " pinskia at gcc dot gnu dot org 2004-04-07 3:36 ` pinskia at gcc dot gnu dot org 2004-04-07 9:11 ` gonnetp at inf dot ethz dot ch
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).