x86: prevent binutils from being "smart" and generating NOPLs for us
binutils, contrary to documented behaviour, will generate long NOPs (a P6-or-higher instruction which is broken on at least some VIA chips, Virtual PC/Virtual Server, and some versions of Qemu) depending on the -mtune= option, which is not supposed to change architectural behaviour. Pass an explicit override to the assembler, in case ends up passing the -mtune= parameter to gas (gcc 4.3.0 does not appear to.) Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This commit is contained in:
parent
43789e2163
commit
28f7e66fc1
|
@ -45,3 +45,8 @@ cflags-$(CONFIG_MGEODEGX1) += -march=pentium-mmx
|
|||
# cpu entries
|
||||
cflags-$(CONFIG_X86_GENERIC) += $(call tune,generic,$(call tune,i686))
|
||||
|
||||
# Bug fix for binutils: this option is required in order to keep
|
||||
# binutils from generating NOPL instructions against our will.
|
||||
ifneq ($(CONFIG_X86_P6_NOP),y)
|
||||
cflags-y += $(call cc-option,-Wa$(comma)-mtune=generic32,)
|
||||
endif
|
||||
|
|
Loading…
Reference in New Issue