[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: gcc-4.3 optimizer bugs?



Neal Becker wrote:
We are trying to track down a numerical problem with unuran that occurs on
gcc-4.3.  I know that gcc now has a very extensive test suite, and bugs are
not common.  I'm just wondering, are others finding similar problems with
gcc-4.3?

We are working on preparing a bug report.  The symptoms are:
1) Problem disappears if -O0
2) Problem disappears if a printf is added
3) valgrind is silent


I'm seeing something vaguely similar, but more pointer oriented.

qhull has a routine for adding elements to a list (qh_setappend). At the end it does:


  *(++endp)= ((void *)0);

to set the last element to null to signify the end of the list.

With -O2 I see:

endp(8d0f5c0) = 0
after qh_setappend
&((*simplex)->e[4].p) = 8d0f5c4
((vertexT*)((*simplex)->e[4].p)) = 4

Without I get:

endp(95755c4) = 0
after qh_setappend
&((*simplex)->e[4].p) = 95755c4
((vertexT*)((*simplex)->e[4].p)) = 0

So, with -O2, the pointer apparently isn't incremented (8d0f5c0 != 8d0f5c4), but without it is (95755c4 == 95755c4).

Thoughts?


--
Orion Poplawski
Technical Manager                     303-415-9701 x222
NWRA/CoRA Division                    FAX: 303-415-9702
3380 Mitchell Lane                  orion cora nwra com
Boulder, CO 80301              http://www.cora.nwra.com


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]