This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: O2 optimization differences



On Sep 29, 2004, at 9:14 AM, Joe Buck wrote:


On Wed, Sep 29, 2004 at 03:10:12PM +0530, Sujith R. wrote:

	I am finding the output differences between O2 flagged , optimized
version and a -g3 -gdwarf-2 flagged debugable version of a C++
application , which does some very heavy , floating point , number
crunching.  The differences are with very small numbers (close to 0)
like 1.234E-11 being treated as 0, but some subsequent calculations go
for a toss.

If you're running x86 hardware, you can see things like this. The
floating point registers have extra precision (80 bits worth), but this
precision is lost when a register is spilled to memory. Since this
differs depending on optimization level, you will see effects like this.

Indeed. If this is the problem -ffloat-store may help.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]