It turns out that some toolchains which support MIPS R6 don't support the -mcompact-branches flag to specify compact branch behaviour. Default to not providing the -mcompact-branch option to the compiler such that we can build with such toolchains. Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx> Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx> Fixes: c1a0e9bc885d ("MIPS: Allow compact branch policy to be changed") Cc: stable <stable@xxxxxxxxxxxxxxx> # v4.4+ --- Changes in v2: - Hide the options behind CONFIG_DEBUG_KERNEL. arch/mips/Kconfig.debug | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/arch/mips/Kconfig.debug b/arch/mips/Kconfig.debug index f0e314c..ee3dc9b 100644 --- a/arch/mips/Kconfig.debug +++ b/arch/mips/Kconfig.debug @@ -117,7 +117,16 @@ if CPU_MIPSR6 choice prompt "Compact branch policy" - default MIPS_COMPACT_BRANCHES_OPTIMAL + depends on DEBUG_KERNEL + default MIPS_COMPACT_BRANCHES_DEFAULT + +config MIPS_COMPACT_BRANCHES_DEFAULT + bool "Toolchain Default (don't specify)" + help + Don't pass the -mcompact-branches flag to the compiler, allowing it + to use its default (generally "optimal"). This is particularly + useful for early R6-supporting toolchains which don't support the + -mcompact-branches flag. config MIPS_COMPACT_BRANCHES_NEVER bool "Never (force delay slot branches)" -- 2.8.2