W dniu 2010-09-26 14:42, Erik Trulsson pisze:
On Sun, Sep 26, 2010 at 02:21:51PM +0200, Bartosz Stec wrote:
   W dniu 2010-09-24 16:34, Dimitry Andric pisze:
On 2010-09-24 14:13, Bartosz Stec wrote:
Could you please try to rename this make.conf to e.g.
and retry the world build?
Still the same without make.conf. My personal guess is, that clang
builded by clang with CPUTYPE=athlon-xp is somehow broken. I don't think
CFLAGS=-O2 -pipe could do any harm, and also note that clang builded by
GCC with exactly the same make.conf has no problems with world
building :)
I still cannot reproduce your issue...  To check, I have built world
with CPUTYPE=athlon-xp, verified it used "-O2 -pipe -march=athlon-xp" as
compilation flags for the world stage, and installed the resulting clang

Those clang executables do not exhibit the same problem as yours do;
they can build tblgen (during the bootstrap-tools stage) fine.

I suggest you comment out the CPUTYPE macro in make.conf for now,
rebuild your world with gcc, and then rebuild it with clang again, to
see if the issue goes away.
Indeed, I was right. Problem is gone after hashing out CPUTYPE line,
building world with GCC, and with clang after that. Now world is
building without problems.

But hey, i just realized that:

     # dmesg | grep -i cpu
     CPU: mobile AMD Athlon(tm) XP 2200+ (1800.11-MHz 686-class CPU)

I simply forgot that about a year ago I changed Athlon XP in this BOX to
Athlon MP and I didn't changed CPUTYPE in make.conf...
So maybe clang in fact did exactly what it should and created binary
designed to other CPUTYPE ;) I don't know exact differences between
Athlon XP/MP architecture (registers specially) but I just started
another try with CPUTYPE=Athlon-mp and I will post results :)
The only difference between Athlon XP and Athlon MP is that the MP
variants are certified for multi-processor use (in reality most Athlon
XP also worked just fine in multi-processor systems, or could easily be
modified to do so.)  Available instructions and registers are identical
between the two.  Mobile variants of the Athlon XP should also be
identical from a programming point of view.

That's what I thought too, but in that case, why are they different optimisations available?
In /usr/share/examples/etc/make.conf:

   # Currently the following CPU types are recognized:
   #   Intel x86 architecture:
   #       (AMD CPUs)      opteron athlon64 athlon-mp athlon-xp athlon-4
   #                       athlon-tbird athlon k8 k6-3 k6-2 k6 k5

Or maybe some of them are in fact bywords to compiler?

Still, my CURRENT box is at idle mostly, so I will experiment a little and see what I get.


Bartosz Stec

freebsd-current@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to