public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* optimization/3046: code incorrectly removed
@ 2001-06-04  4:46 boris
  0 siblings, 0 replies; 2+ messages in thread
From: boris @ 2001-06-04  4:46 UTC (permalink / raw)
  To: gcc-gnats

>Number:         3046
>Category:       optimization
>Synopsis:       code incorrectly removed
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          wrong-code
>Submitter-Id:   net
>Arrival-Date:   Mon Jun 04 04:46:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Manuel Carro
>Release:        gcc version 2.96 20000731
>Organization:
>Environment:
Red Had Linux 7.1, kernel 2.4.2-2 i686 unknown
>Description:
The code below (float.c) fills in a float `f' with
1.00000 by accessing it as an array `fp' of two unsigned integers, and
storing the appropriate value in each element of the array.  The value
printed should therefore be 1.00000, and this is what happens when
compiling without optimization options.  With -O2 and above, the value
printed is 2.0000.  Qualifying both `f' and `fp' as volatile seems to
eliminate the wrong behavior.
>How-To-Repeat:
gcc -O3 float.c -o float ; ./float
>Fix:
Not using optimizations above -O, or adding volatile to 
f and fp.  However, this is not feasible in my application:
the error may appear in many places.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="float.i.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="float.i.gz"

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


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: optimization/3046: code incorrectly removed
@ 2002-04-02  1:21 rth
  0 siblings, 0 replies; 2+ messages in thread
From: rth @ 2002-04-02  1:21 UTC (permalink / raw)
  To: boris, gcc-bugs, gcc-prs, nobody

Synopsis: code incorrectly removed

State-Changed-From-To: open->closed
State-Changed-By: rth
State-Changed-When: Tue Apr  2 01:21:49 2002
State-Changed-Why:
    This code violates ISO C aliasing rules (paragraph 6.5/7).
    Use a union instead.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3046


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2002-04-02  9:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-04  4:46 optimization/3046: code incorrectly removed boris
2002-04-02  1:21 rth

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).