Date: Sat, 4 Feb 2006 08:48:28 -0800 From: Kip Macy <kip.macy@gmail.com> To: "M. Warner Losh" <imp@bsdimp.com> Cc: src-committers@freebsd.org, sparc64@freebsd.org, stable@freebsd.org, kris@obsecurity.org Subject: Re: [releng_6 tinderbox] failure on sparc64/sparc64 Message-ID: <b1fa29170602040848p15a21fdibeecbd9ea8d34044@mail.gmail.com> In-Reply-To: <20060204.085134.44793895.imp@bsdimp.com> References: <861wykr9vx.fsf@xps.des.no> <20060203.105305.71186162.imp@bsdimp.com> <86bqxntixy.fsf@xps.des.no> <20060204.085134.44793895.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
IIRC, at NetApp -O2 was the default for all builds. I think it is safe to say that the generated code is quite stable. If -O2 allows the compiler to catch errors earlier it should be the default. -Kip On 2/4/06, M. Warner Losh <imp@bsdimp.com> wrote: > > In message: <86bqxntixy.fsf@xps.des.no> > des@des.no (Dag-Erling Sm=F8rgrav) writes: > : Warner Losh <imp@bsdimp.com> writes: > : > Can we not have special flags for tinderbox builds? It make > : > pre-commit testing a big pita. How about just -O on both head and > : > in RELENG_6? > : > : As I have repeatedly pointed out in the past, -O2 catches more bugs > : because it enables optimizations which require more extensive coverage > : analysis. > > Then it should be the default, standard flag. > > : > The kernel make files have special magic to disable the parts of -O2 > : > that are known to be bad because tinderbox uses -O2, despite efforts > : > in the past to stop the practice. > : > : The kernel has special magic to disable strict aliasing checks because > : certain people regularly commit kernel code which violates C aliasing > : rules and refuse to fix it. The userland code does not need these > : hacks because I spent a lot of time and effort fixing aliasing bugs in > : e.g. libalias. > > The optimizations are disable because they do not work. It is really > that simple. The kernel has lots and lots of these problems, it is > true. > > : Aliasing violations are not trivial matters; they prevent the compiler > : from optimizing code which (for instance) accesses structure members > : through pointers to the structure. There is a lot of this in the > : kernel. > > I agree. However, I think it is unreasonable to have one set of > defaults, then another set that committers are held to. This leads to > lots of problems. > > My bottom line is that as a committer, you are expected to not break > the builds with the default flags. The tinderbox runs at a different > level, thereby creating the impression that someone has done something > wrong when it happens to blow up, when in fact they have not. If -O2 > is so good w/o the -fno-strict-alias, then it should be the default so > we catch these bugs. > > I'm not arguing against -O2 because it isn't useful. I'm arguing > because it isn't the default. > > Warner >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b1fa29170602040848p15a21fdibeecbd9ea8d34044>