If an explicit compact branch policy is requested by the user via the debug options in Kconfig, and the toolchain does not support specifying an explicit compact branch policy, then error out with an understandable error message to make it clearer what's happened. Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx> Fixes: c1a0e9bc885d ("MIPS: Allow compact branch policy to be changed") Cc: stable <stable@xxxxxxxxxxxxxxx> # v4.4+ --- Changes in v2: - New patch. arch/mips/Makefile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/arch/mips/Makefile b/arch/mips/Makefile index e78d60d..1ac4612 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile @@ -194,9 +194,13 @@ toolchain-msa := $(call cc-option-yn,$(mips-cflags) -mhard-float -mfp64 -Wa$( cflags-$(toolchain-msa) += -DTOOLCHAIN_SUPPORTS_MSA endif -cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_NEVER) += -mcompact-branches=never -cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_OPTIMAL) += -mcompact-branches=optimal -cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_ALWAYS) += -mcompact-branches=always +ifeq ($(call cc-option-yn,-mcompact-branches=optimal), y) + cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_NEVER) += -mcompact-branches=never + cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_OPTIMAL) += -mcompact-branches=optimal + cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_ALWAYS) += -mcompact-branches=always +else ifneq ($(CONFIG_MIPS_COMPACT_BRANCHES_DEFAULT),y) + $(error Compact branch policy specified, but lacking toolchain support) +endif # # Firmware support -- 2.8.2