MIPS: Disable Loongson MMI instructions for kernel build
GCC 9.x automatically enables support for Loongson MMI instructions when using some -march= flags, and then errors out when -msoft-float is specified with: cc1: error: ‘-mloongson-mmi’ must be used with ‘-mhard-float’ The kernel shouldn't be using these MMI instructions anyway, just as it doesn't use floating point instructions. Explicitly disable them in order to fix the build with GCC 9.x. Signed-off-by: Paul Burton <paul.burton@mips.com> Fixes:3702bba5eb
("MIPS: Loongson: Add GCC 4.4 support for Loongson2E") Fixes:6f7a251a25
("MIPS: Loongson: Add basic Loongson 2F support") Fixes:5188129b8c
("MIPS: Loongson-3: Improve -march option and move it to Platform") Cc: Huacai Chen <chenhc@lemote.com> Cc: Jiaxun Yang <jiaxun.yang@flygoat.com> Cc: stable@vger.kernel.org # v2.6.32+ Cc: linux-mips@vger.kernel.org
This commit is contained in:
parent
38dffe1e4d
commit
2f2b4fd674
|
@ -66,6 +66,10 @@ else
|
||||||
$(call cc-option,-march=mips64r2,-mips64r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS64)
|
$(call cc-option,-march=mips64r2,-mips64r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS64)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Some -march= flags enable MMI instructions, and GCC complains about that
|
||||||
|
# support being enabled alongside -msoft-float. Thus explicitly disable MMI.
|
||||||
|
cflags-y += $(call cc-option,-mno-loongson-mmi)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Loongson Machines' Support
|
# Loongson Machines' Support
|
||||||
#
|
#
|
||||||
|
|
|
@ -15,6 +15,7 @@ ccflags-vdso := \
|
||||||
$(filter -mmicromips,$(KBUILD_CFLAGS)) \
|
$(filter -mmicromips,$(KBUILD_CFLAGS)) \
|
||||||
$(filter -march=%,$(KBUILD_CFLAGS)) \
|
$(filter -march=%,$(KBUILD_CFLAGS)) \
|
||||||
$(filter -m%-float,$(KBUILD_CFLAGS)) \
|
$(filter -m%-float,$(KBUILD_CFLAGS)) \
|
||||||
|
$(filter -mno-loongson-%,$(KBUILD_CFLAGS)) \
|
||||||
-D__VDSO__
|
-D__VDSO__
|
||||||
|
|
||||||
ifdef CONFIG_CC_IS_CLANG
|
ifdef CONFIG_CC_IS_CLANG
|
||||||
|
|
Loading…
Reference in New Issue