Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 9 Feb 2003 07:01:20 -0800
From:      David Schultz <dschultz@uclink.berkeley.edu>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        Terry Lambert <tlambert2@mindspring.com>, Ray Kohler <ataraxia@cox.net>, freebsd-current@freebsd.org
Subject:   Re: Compiling with high optimization?
Message-ID:  <20030209150120.GA2263@HAL9000.homeunix.com>
In-Reply-To: <20030209141006.GB33928@skywalker.creative.net.au>
References:  <20030208173756.GA56030@arkadia.nv.cox.net> <20030208232724.GA20435@HAL9000.homeunix.com> <3E459BF3.BB3FC381@mindspring.com> <20030209002542.GA20812@HAL9000.homeunix.com> <20030209141006.GB33928@skywalker.creative.net.au>

next in thread | previous in thread | raw e-mail | index | archive | help
Thus spake Adrian Chadd <adrian@freebsd.org>:
> On Sat, Feb 08, 2003, David Schultz wrote:
> 
> > Yes, the possibility of being bitten by compiler bugs is certainly
> > higher with higher optimization levels.  Alpha with -O2 seems to
> > have been broken for years, and I have seen strange things happen
> > on IA64 as well.  But the i386 code generators have received much
> > wider testing and debugging, so there is somewhat less danger there.
> 
> Yet squid under i386 freebsd is .. well, finds -O bugs in gcc.
> We gave up trying -O under FreeBSD a long time ago. :-)

The last time someone told me, ``gcc -O is broken'', it turned out
that they were doing some stack fiddling, and gcc's optimizations
broke their faulty assumptions.  On the other hand, I'm sure gcc -O
does have bugs.  Do you have an example snippet that gets miscompiled?

> (note: I've seen better performance gains by telling gcc exactly what
> CPU you have over -O65536 ..)

Strangely, gcc in FreeBSD 5.0 actually generates *slower* code
when compiling for more recent architectures than when compiling
for a 386.  I don't know whether that is a bug in gcc or whether
gcc is using some fancy feature like SSE that the kernel handles
poorly on context switches.  I think there was some discussion on
the lists about it earlier.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030209150120.GA2263>