public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "kreckel at ginac dot de" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug c/29186] optimzation breaks floating point exception flag reading Date: Sat, 23 Sep 2006 22:58:00 -0000 [thread overview] Message-ID: <20060923225827.32389.qmail@sourceware.org> (raw) In-Reply-To: <bug-29186-1882@http.gcc.gnu.org/bugzilla/> ------- Comment #9 from kreckel at ginac dot de 2006-09-23 22:58 ------- (In reply to comment #8) I am still not entirely sure whether we are really talking about the same problem. The original problem was that the compiler optimized assuming that the floating point division cannot have side effects, such that the offending division happens after the call to fetestexcept(3): #include <fenv.h> #include <stdio.h> int main() { double x = (double)printf("") + 1.0; // one double y = (double)printf(""); // zero feclearexcept(FE_ALL_EXCEPT); double z = x / y; // should set FE_DIVBYZERO if (fetestexcept(FE_ALL_EXCEPT)) { printf("flag set after call.\n"); } printf("%f/%f==%f\n",x,y,z); } Neither -ftrapping-math, nor -frounding-math change anything, as long as -O1 is turned on: The printf inside the if statement is *not* executed. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29186
next prev parent reply other threads:[~2006-09-23 22:58 UTC|newest] Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top 2006-09-22 19:13 [Bug c/29186] New: " kreckel at ginac dot de 2006-09-22 19:24 ` [Bug c/29186] " pinskia at gcc dot gnu dot org 2006-09-22 19:25 ` pinskia at gcc dot gnu dot org 2006-09-22 19:28 ` pinskia at gcc dot gnu dot org 2006-09-22 22:34 ` kreckel at ginac dot de 2006-09-23 21:41 ` kreckel at ginac dot de 2006-09-23 21:52 ` joseph at codesourcery dot com 2006-09-23 22:11 ` kreckel at ginac dot de 2006-09-23 22:19 ` joseph at codesourcery dot com 2006-09-23 22:58 ` kreckel at ginac dot de [this message] 2006-09-23 23:02 ` joseph at codesourcery dot com 2006-09-24 0:35 ` pinskia at gmail dot com 2006-09-24 16:51 ` kreckel at ginac dot de 2006-09-25 7:40 ` kreckel at ginac dot de 2006-10-25 7:54 ` kreckel at ginac dot de 2006-10-25 7:57 ` pinskia at gcc dot gnu dot org 2006-10-25 13:22 ` kreckel at ginac dot de 2006-10-31 11:49 ` kreckel at ginac dot de 2006-11-06 22:23 ` kreckel at ginac dot de 2006-11-19 11:22 ` kreckel at ginac dot de 2006-11-19 12:14 ` rguenth at gcc dot gnu dot org 2009-05-04 6:47 ` kreckel at ginac dot de 2009-12-29 21:48 ` fxcoudert at gcc dot gnu dot org [not found] <bug-29186-4@http.gcc.gnu.org/bugzilla/> 2020-11-09 11:55 ` kreckel at ginac dot de 2020-11-09 12:41 ` rguenth at gcc dot gnu.org 2021-06-14 19:06 ` pinskia at gcc dot gnu.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=20060923225827.32389.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: linkBe 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).