Re: Noob question. Why is the for-pentium4 kernel built with -march=i686 ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Denis Vlasenko skrev:

On Wednesday 20 July 2005 12:25, Ivan Yosifov wrote:
Also, I believe that the -march=pentium4 option /was/ actually used up
until kernel 2.6.10 where it was dropped because of a risk that some
versions of gcc would cause the kernel to use SSE registers for data
movement (which is a no-no).

You seem right. I fetched a 2.6.9 tarball and it is really built with
-march=pentium4. Do you know which are versions of gcc in question ?

No, I'm afraid not. I only know that the advice came from Richard
Henderson who (I think) is one of the core glibc hackers. You can see
the point at which it was introduced by Linus in the ChangeLog (2nd
message from last):

http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.10
Seems to be this one:

<[email protected]>
	Don't use "-march=pentium3" for gcc tuning.
	
	rth tells me that some versions of gcc may end up using the
	SSE registers for data movement when you do that.
	
	Use "-march=i686 -mtune=xxxx" instead.
	
	(We do the same thing for march=pentium2/4 too, just for
	consistency).


The way it is worded it seems that it is a problem with *some* versions
of gcc only on p3, not p4.

Why do you care? I bet that differences between i686 code and pentium4 code
are well below noise level.
--
vda

For x86_64 the flags -mno-sse -mno-mmx -mno-sse2 -mno-3dnow are always used for compilation. Why is'nt the same thing done for x86 instead of using -march=i686 -mtune=?.

-march=athlon and -march=k6 includes -m3dnow and -mmmx, are those ok for the kernel but -msse isn't?

--
Simon Strandman <[email protected]>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux