Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Mar 2000 14:03:43 -0600
From:      "Jeffrey J. Mountin" <jeff-ml@mountin.net>
To:        Donn Miller <dmmiller@cvzoom.net>
Cc:        current@FreeBSD.ORG
Subject:   Re: panic during make depend
Message-ID:  <4.3.2.20000316134241.00ae2960@207.227.119.2>
In-Reply-To: <38D05C92.4F85C798@cvzoom.net>
References:  <4.3.2.20000315172056.00bf7740@mixcom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
At 11:01 PM 3/15/00 -0500, Donn Miller wrote:
>Sounds like one of those nasty gcc optimization bugs.  I generally
>build my kernel and world with -mpentium -O3 -pipe, and I haven't seen
>any bugs at all.  I build everything with these flags without
>problems.  The only problems I've see, as mentioned previously, was in
>building Qt.  I've gotten an "Internal compiler error" with those
>flags, but reverting to what Troll put in qt/configs solved the
>problems.  Apparently, there's both compile-time and run-time bugs
>with gcc's opt. code.

It might be, but I'm backing off from -02 to -O for a dozen builds or so 
and see.  Less if panics keep coming, then the -march will be dropped.  All 
good then back to -02 and try -mcpu.

>I think there are some bugs with the pentium-specific flags in gcc,
>excluding the generic-pentium flag of -mpentium.  I would try using
>-mpentium -O3 -pipe --- I'm pretty confident that will solve your
>problems, and you can still get generic pentium optimization levels.

Why use -O3, which adds -finline-functions.  AFAICR, that one isn't very 
liked by those more with more knowledge and experience.

>Of course, I don't really know if there's anything to be gained by
>using these flags over the stock -O -pipe -- but I do it anyways for
>the psychological reassurance (placebo effect).  I definitely think
>building XFree86 with pentium opt. is a great idea.  But with
>buildworld and buildkernel, my advice would be to just use -mpentium,
>as it's probably the "happiest medium" between pentium opt. and
>stability.  From what I've heard, compiling mission critical stuff
>with -mpentiumpro is a bad idea.  Hmmm... didn't -mpentiumpro come
>from pgcc?  I think the best place to use -mpentiumpro is in compiling
>multimedia type stuff, where stability isn't important but speed is.

Don't think your reasoning is all that sound as a "reassurance," but 
ensuring that code is optimized for the CPU, and in my case architecture, 
is good.

Originally thought that using -march would speed up compiling for one and 
another to have more specific code for the system running it.  Been a while 
since I had a running 486, 8+ years since even seeing a 386, and only have 
2 pentiums in operation, so why should the code have instructions for 
running on any of these platforms?

As an example I've seen many posts with -mno-486 used.  The man page is 
clear as mud on what that does.  From the wording it should optimize the 
code for a 386 then:

  -mno-486
           Control  whether or not code is optimized for a 486
           instead of an 386.  Code generated for a  486  will
           run on a 386 and vice versa.

Perhaps the man pages need updating.

>Basically, gcc is a very good compiler.  But, it isn't exactly the
>best compiler to use for optimization.  Someone told me that Sun's and
>DEC's compilers, for example, blow away gcc in terms of speed.  But,
>they aren't portable.

The DEC compiler might be good for some FBSD users.


Jeff Mountin - jeff@mountin.net
Systems/Network Administrator
FreeBSD - the power to serve



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?4.3.2.20000316134241.00ae2960>