Re: [BUG] x86 kenel won't boot under Virtual PC

From: H. Peter Anvin
Date: Mon Sep 08 2008 - 13:12:36 EST


H. Peter Anvin wrote:

Yes, it does:

/* We need to decide which NOP sequence to use for 32bit and
64bit. When -mtune= is used:

1. For PROCESSOR_I386, PROCESSOR_I486, PROCESSOR_PENTIUM and
PROCESSOR_GENERIC32, f32_patt will be used.
2. For PROCESSOR_PENTIUMPRO, PROCESSOR_PENTIUM4, PROCESSOR_NOCONA,
PROCESSOR_CORE, PROCESSOR_CORE2, and PROCESSOR_GENERIC64,
alt_long_patt will be used.
3. For PROCESSOR_ATHLON, PROCESSOR_K6, PROCESSOR_K8 and
PROCESSOR_AMDFAM10, alt_short_patt will be used.

When -mtune= isn't used, alt_long_patt will be used if
cpu_arch_isa_flags has Cpu686. Otherwise, f32_patt will
be used.

"alt_long_patt" uses NOPL and its variants.


I should point out that the code above is from binutils (gas), not from gcc. It is entirely possible that doing something like
"-mtune=core2 -Wa,-mtune=generic" might actually work, but I have not dug through the gcc code proper to figure out if that (a) would work, and (b) will remain the case...

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