Re: P6 NOPs again: MPSC?

Hugh Dickins
2008-03-10T22:12:37Z

On Mon, 10 Mar 2008, H. Peter Anvin wrote:
> Hugh Dickins wrote:
> >
> > I'm suspecting that the patch below is actually wrong, and that it's
> > really the "(X86_64 || !X86_GENERIC) &&" which should be changed;
> > but very unsure of my ground and what's right for CPU_GENERIC -
> > the 32/64 heritage of x86/Kconfig.cpu rather confuses me.
>
> X86_64 && !X86_GENERIC comes from not wanting to be a compatibility issue when
> compiling for generic CPUs. There are some 32-bit otherwise i686-compatible
> chips (from VIA and Transmeta) which don't have these NOPs.

Yup, I realized that (with || in place of &&): I meant that perhaps
it was supposed to say X86_64 || (!X86_GENERIC && (M686 || ....))
since quite a lot of other options there have "|| X86_64" to cover
all the 64-bit possibilities at once i.e. is it only MPSC that
needs to be added, or both MPSC and CPU_GENERIC?

(But I've lost my way around here. A good example of the 32/64
confusion is how one has to remember that X86_GENERIC is peculiar
to 32-bit, and CPU_GENERIC peculiar to 64-bit. And CPU_GENERIC is
understandably an alternative to the specific 64-bit models, but
X86_GENERIC is strangely in addition to the specific 32-bit models.)

Hugh