[PATCH v2 1/2] MIPS: Allow R6 compact branch policy to be left unspecified

From: Paul Burton
Date: Tue May 17 2016 - 10:56:32 EST


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