public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "nmm1 at cam dot ac.uk" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug middle-end/34678] Optimization generates incorrect code with -frounding-math option (#pragma STDC FENV_ACCESS not implemented)
Date: Mon, 11 Nov 2013 17:32:00 -0000	[thread overview]
Message-ID: <bug-34678-4-CVrKCi0jL0@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-34678-4@http.gcc.gnu.org/bugzilla/>

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

--- Comment #23 from Nick Maclaren <nmm1 at cam dot ac.uk> ---
(In reply to Vincent Lefèvre from comment #21)
>
> > Richard Biener's approach to the default is the one that matches the C
> > standard and Vincent Lefèvre is mistaken.
> 
> No, I'm correct.
> 
> > Defining it to be 'off' and not setting __STDC_IEC_559__ is very reasonable.
> 
> No, this is really stupid. If the user *decides* to set the STDC FENV_ACCESS
> pragma to "on", then the compiler must not assume that it is "off" (this bug
> is not about the default state). At least it must behave in this way if
> -std=c99 (or c11) has been used. Otherwise a compilation failure may be
> better than getting wrong results.

If __STDC_IEC_559__ is unset or does not have the value 1, setting
STDC FENV_ACCESS to "on" is undefined behaviour (see 6.10.8.3, 7.6 and
Annex F), unless the implementation explicitly chooses to extend the
language to support it.  So the user would get what he so richly
deserves.


(In reply to joseph@codesourcery.com from comment #22)
> 
> So a key part of actually making rounding modes and exceptions work 
> reliably would be working out a definition of GCC's default mode that 
> allows more or less the same optimizations as at present, while allowing 
> users wanting the full support (and consequent optimization cost) to 
> specify the appropriate command-line options or FENV_ACCESS pragma to 
> enable it.

Yes.  That won't deal with the correctness problems of introducing
IEEE 754 support into code not set up to handle it, especially C++,
of course.  I tried to get WG21 to take a stand on that issue, but
failed :-(

Working out what on earth to do in such a case is likely to be a far
fouler task than merely dealing with the performance problems :-(
>From gcc-bugs-return-434297-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Nov 11 17:35:55 2013
Return-Path: <gcc-bugs-return-434297-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 28335 invoked by alias); 11 Nov 2013 17:35:55 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 28226 invoked by uid 48); 11 Nov 2013 17:35:52 -0000
From: "tromey at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug libstdc++/59075] python pretty printer does not work at OS X
Date: Mon, 11 Nov 2013 17:35:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: libstdc++
X-Bugzilla-Version: 4.6.4
X-Bugzilla-Keywords:
X-Bugzilla-Severity: trivial
X-Bugzilla-Who: tromey at gcc dot gnu.org
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-59075-4-4XbkH44Mfs@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-59075-4@http.gcc.gnu.org/bugzilla/>
References: <bug-59075-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2013-11/txt/msg01074.txt.bz2
Content-length: 674

http://gcc.gnu.org/bugzilla/show_bug.cgi?idY075

--- Comment #2 from Tom Tromey <tromey at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #1)
> Tom, do you know why this would be true on OS X?

Offhand I do not know.  I think there are a few things that
could help us find out, though.

One would be to see the gdb session.  This would tell us
which libstdc++ is being loaded.

Another would be to attach the executable to the bug,
assuming it is small enough (if too large -- write a minimal
reproducer and attach it).  Then I could look at the DWARF.

I'm also curious exactly what options were used to build
the executable.  This can matter sometimes.


  parent reply	other threads:[~2013-11-11 17:32 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <bug-34678-4@http.gcc.gnu.org/bugzilla/>
2010-10-26 10:33 ` paolo.carlini at oracle dot com
2011-02-08  2:02 ` pinskia at gcc dot gnu.org
2011-04-01 19:22 ` pinskia at gcc dot gnu.org
2013-11-11  9:30 ` nmm1 at cam dot ac.uk
2013-11-11 13:37 ` vincent-gcc at vinc17 dot net
2013-11-11 16:38 ` joseph at codesourcery dot com
2013-11-11 17:32 ` nmm1 at cam dot ac.uk [this message]
2014-01-10 11:40 ` vincent-gcc at vinc17 dot net
2014-01-14 14:58 ` vincent-gcc at vinc17 dot net
2014-01-14 15:13 ` nmm1 at cam dot ac.uk
2014-01-14 15:52 ` vincent-gcc at vinc17 dot net
2014-01-14 17:22 ` nmm1 at cam dot ac.uk
2014-01-14 23:16 ` vincent-gcc at vinc17 dot net
2014-02-16 10:03 ` jackie.rosen at hushmail dot com
2020-04-16 15:35 ` vincent-gcc at vinc17 dot net
2023-01-06 17:29 ` pinskia at gcc dot gnu.org
2023-01-06 17:31 ` pinskia at gcc dot gnu.org
2023-01-06 19:29 ` tkoenig at gcc dot gnu.org
2023-01-06 22:14 ` tkoenig at gcc dot gnu.org
2023-01-07 11:14 ` tkoenig at gcc dot gnu.org
2023-01-07 12:14 ` tkoenig at gcc dot gnu.org
2008-01-04 18:56 [Bug c/34678] New: Optimization generates incorrect code with -frounding-math option merkert at comcast dot net
2008-01-05 12:08 ` [Bug middle-end/34678] Optimization generates incorrect code with -frounding-math option (#pragma STDC FENV_ACCESS not implemented) rguenth at gcc dot gnu dot org
2008-01-05 16:48 ` merkert at comcast dot net
2008-01-05 21:00 ` joseph at codesourcery dot com
2008-01-05 21:29 ` rguenth at gcc dot gnu dot org
2008-01-06 16:21 ` joseph at codesourcery dot com
2008-01-06 17:19 ` rguenth at gcc dot gnu dot org
2008-01-06 18:03 ` joseph at codesourcery dot com
2008-10-15 15:44 ` rguenth at gcc dot gnu dot org
2008-10-15 21:31 ` vincent at vinc17 dot org
2008-10-15 22:15 ` rguenth at gcc dot gnu dot org
2008-10-15 22:35 ` vincent at vinc17 dot org
2008-10-16  9:46 ` rguenth at gcc dot gnu dot org
2008-10-16 11:58 ` merkert at comcast dot net
2008-10-16 14:21 ` vincent at vinc17 dot org
2008-10-16 16:40 ` joseph at codesourcery dot com
2008-10-16 17:41 ` vincent at vinc17 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=bug-34678-4-CVrKCi0jL0@http.gcc.gnu.org/bugzilla/ \
    --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).