public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "vincent at vinc17 dot org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug rtl-optimization/323] optimized code gives strange floating point results
Date: Sun, 22 Jun 2008 21:15:00 -0000	[thread overview]
Message-ID: <20080622211424.15159.qmail@sourceware.org> (raw)
In-Reply-To: <bug-323-4315@http.gcc.gnu.org/bugzilla/>



------- Comment #116 from vincent at vinc17 dot org  2008-06-22 21:14 -------
(In reply to comment #114)
> Yes, but this requires quite a complicated workaround (solution (4) in my
> comment #109).

The problem is on the compiler side, which could store every result of a cast
or an assignment to memory (this is inefficient, but that's what you get with
the x87, and the ISO C language could be blamed too for *requiring* something
like that instead of being more flexible).

> So you could say that the IEEE754 double precision type is available even on
> a processor without any FPU because this can be emulated using integers.

Yes, but a conforming implementation would be the processor + a library, not
just the processor with its instruction set.

> Moreover, if we assess things pedantically, the workaround (4) still doesn't
> fully obey the IEEE single/double precision type(s), because there remains the
> problem of double rounding of denormals.

As I said, in this particular case (underflow/overflow), double rounding is
allowed by the IEEE standard. It may not be allowed by some languages (e.g.
XPath, and Java in some mode) for good or bad reasons, but this is another
problem.

> I quote, too:
> "Applies To
>    Microsoft&#174; Visual C++&#174;"

Now I assume that it follows the MS-Windows API (though nothing is certain with
Microsoft). And the other compilers under MS-Windows could (or should) do the
same thing.


-- 


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


  parent reply	other threads:[~2008-06-22 21:15 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <bug-323-4315@http.gcc.gnu.org/bugzilla/>
2005-10-15 18:35 ` pinskia at gcc dot gnu dot org
2005-10-21 20:24 ` pinskia at gcc dot gnu dot org
2005-11-10  3:41 ` pinskia at gcc dot gnu dot org
2005-12-08  1:48 ` pinskia at gcc dot gnu dot org
2006-01-28  3:56 ` pinskia at gcc dot gnu dot org
2006-06-28 19:12 ` pinskia at gcc dot gnu dot org
2006-08-02 10:56 ` aph at gcc dot gnu dot org
2006-10-25 22:05 ` pinskia at gcc dot gnu dot org
2006-12-18 20:17 ` pinskia at gcc dot gnu dot org
2006-12-18 22:05 ` pinskia at gcc dot gnu dot org
2006-12-21 15:09 ` bruno at clisp dot org
2007-01-18 16:29 ` egon at heaven dot industries dot cz
2007-02-10  0:56 ` brooks at gcc dot gnu dot org
2007-03-01 16:44 ` rguenth at gcc dot gnu dot org
2007-03-09 20:12 ` pinskia at gcc dot gnu dot org
2007-03-09 20:23 ` whaley at cs dot utsa dot edu
2007-03-09 22:46 ` pinskia at gcc dot gnu dot org
2007-04-02 15:20 ` bonzini at gnu dot org
2007-04-03 16:51 ` guillaume dot melquiond at ens-lyon dot fr
2007-04-20 20:20 ` David dot Monniaux at ens dot fr
2007-06-19  8:11 ` pinskia at gcc dot gnu dot org
2007-08-03 12:10 ` sliwa at cft dot edu dot pl
2007-10-01 17:43 ` macracan at yahoo dot com
2007-12-29 19:47 ` pinskia at gcc dot gnu dot org
2008-01-24  6:08 ` pinskia at gcc dot gnu dot org
2008-01-28  1:16 ` pinskia at gcc dot gnu dot org
2008-02-27 20:39 ` pinskia at gcc dot gnu dot org
2008-02-27 21:42 ` ywei at qualcomm dot com
2008-03-06 22:46 ` pinskia at gcc dot gnu dot org
2008-03-06 23:16 ` rguenth at gcc dot gnu dot org
2008-03-06 23:58 ` pinskia at gcc dot gnu dot org
2008-03-14 17:31 ` rguenth at gcc dot gnu dot org
2008-05-20 17:00 ` pepalogik at seznam dot cz
2008-06-12 14:15 ` pepalogik at seznam dot cz
2008-06-20 16:10 ` vincent at vinc17 dot org
2008-06-21 22:39 ` pepalogik at seznam dot cz
2008-06-22  0:53 ` vincent at vinc17 dot org
2008-06-22 17:00 ` pepalogik at seznam dot cz
2008-06-22 17:29 ` pepalogik at seznam dot cz
2008-06-22 21:15 ` vincent at vinc17 dot org [this message]
2008-06-24 20:13 ` pepalogik at seznam dot cz
2008-06-24 20:46 ` vincent at vinc17 dot org
2008-07-17 10:45 ` mbrudka at filbico dot pl
2008-07-17 12:42 ` vincent at vinc17 dot org
2008-07-17 12:52 ` mbrudka at filbico dot pl
2008-09-06 18:02 ` pinskia at gcc dot gnu dot org
2008-11-04 13:27 ` jsm28 at gcc dot gnu dot org
2008-11-11  7:48 ` David dot Monniaux at imag dot fr
2008-11-11 10:15 ` vincent at vinc17 dot org
2009-03-30  1:51 ` jsm28 at gcc dot gnu dot org
2009-03-30  1:58 ` jsm28 at gcc dot gnu dot org
2009-05-18 14:12 ` pinskia at gcc dot gnu dot org
2009-05-18 14:25 ` ich at az2000 dot de
2009-07-22 12:11 ` nszabolcs at gmail dot com
2009-07-22 17:34 ` vincent at vinc17 dot org
2009-07-22 20:55 ` ich at az2000 dot de
2009-09-20 21:28 ` pinskia at gcc dot gnu dot org
2009-10-29 20:27 ` jsm28 at gcc dot gnu dot org
2009-10-31 18:37 ` jsm28 at gcc dot gnu dot org
2010-05-19 18:06 ` pinskia at gcc dot gnu dot org
2010-08-04  2:42 ` jvdelisle at gcc dot gnu dot org
2010-09-16 17:10 ` pinskia at gcc dot gnu dot org
     [not found] <20000614141601.323.mirtich@merl.com>
2004-05-14 22:13 ` pinskia at gcc dot gnu dot org
2004-06-06 18:13 ` pinskia at gcc dot gnu dot org
2004-06-27 19:49 ` pinskia at gcc dot gnu dot org
2004-07-17 17:40 ` pinskia at gcc dot gnu dot org
2004-07-17 22:29 ` pinskia at gcc dot gnu dot org
2004-07-19  1:19 ` pinskia at gcc dot gnu dot org
2004-07-19  3:22 ` zack at gcc dot gnu dot org
2004-07-23  9:21 ` pinskia at gcc dot gnu dot org
2004-10-03 14:54 ` pinskia at gcc dot gnu dot org
2004-10-03 15:52 ` sliwa at cft dot edu dot pl
2004-10-04 10:57 ` jonathan at csse dot uwa dot edu dot au
2004-11-19 15:33 ` pinskia at gcc dot gnu dot org
2004-12-01 15:12 ` pinskia at gcc dot gnu dot org
2004-12-01 16:24 ` eda-qa at disemia dot com
2004-12-02 14:23 ` pinskia at gcc dot gnu dot org
2004-12-15 14:05 ` pinskia at gcc dot gnu dot org
2004-12-15 15:10 ` pinskia at gcc dot gnu dot org
2005-01-17 15:46 ` pinskia at gcc dot gnu dot org
2005-01-28 18:47 ` pinskia at gcc dot gnu dot org
2005-01-28 19:08 ` pinskia at gcc dot gnu dot org
2005-02-09 12:31 ` pinskia at gcc dot gnu dot org
2005-02-17 17:45 ` pinskia at gcc dot gnu dot org
2005-03-28 21:54 ` pinskia at gcc dot gnu dot org
2005-03-29 14:17 ` pinskia at gcc dot gnu dot org
2005-04-20  3:01 ` pinskia at gcc dot gnu dot org
2005-05-20  8:40 ` mario dot tragni at planetek dot it
2005-05-20 10:04 ` cognot at earthdecision dot com
2005-05-29 16:39 ` pinskia at gcc dot gnu dot org
2005-05-29 19:01 ` pinskia at gcc dot gnu dot org
2005-05-29 19:18 ` pinskia at gcc dot gnu dot org
2005-05-29 19:28 ` pinskia at gcc dot gnu dot org
2005-05-29 19:36 ` pinskia at gcc dot gnu dot org
2005-05-29 19:46 ` pinskia at gcc dot gnu dot org
2005-05-29 19:51 ` pinskia at gcc dot gnu dot org
2005-05-29 20:01 ` pinskia at gcc dot gnu dot org
2005-06-19 11:05 ` steven at gcc dot gnu dot org
2005-06-19 11:09 ` steven at gcc dot gnu dot org
2005-06-19 12:18 ` pinskia at gcc dot gnu dot org
2005-07-10 18:12 ` pinskia at gcc dot gnu dot org
2005-08-09 15:59 ` pinskia at gcc dot gnu dot org
2005-08-15 21:30 ` pinskia at gcc dot gnu dot org
2005-08-16 14:03 ` pinskia at gcc dot gnu dot org
2005-09-22 15:49 ` pinskia at gcc dot gnu dot org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080622211424.15159.qmail@sourceware.org \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).