gcc compiler cputype, prescott or nocona confusion
salkillen at internode.on.net
Wed Jan 31 12:56:03 UTC 2007
When recompiling the world or kernel in FreeBSD i386 Rel 6.1 with,
"# make buildworld"
"# make buildkernel KERNCONF=MYSMPCONF"
(or building anything anything else for that matter), even though I have
"CPUTYPE?=nocona" set in my "/etc/make.conf" file the compiler seems to head
back to a default of "-march=prescott" when compiling many of the functions
on a Dual Xeon 3.6g (nocona) machine!
This doesn't happen when compiling for other machine types, I've tried it on a
Dual PentiumPro, Dual PII, Dual PIII setting the CPUTYPE to the correct cpu
type and the -march sticks to the assigned cpu type through all operations
and produces nice quick optimized code.
Why is this so?
Is it because the "nocona" machine type optimization refers to the EMT64
technology and thus is rejected when compiling for i386 targets rather than
amd64 or emt64 targets and Gcc rejects it?
More information about the freebsd-questions