On Fri, Apr 22, 2016 at 04:56:02PM +0100, Maciej W. Rozycki wrote: > On Fri, 22 Apr 2016, Paul Burton wrote: > > > 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. > > Good idea overall, one further suggestion below. > > > diff --git a/arch/mips/Kconfig.debug b/arch/mips/Kconfig.debug > > index f0e314c..e91b3d1 100644 > > --- a/arch/mips/Kconfig.debug > > +++ b/arch/mips/Kconfig.debug > > @@ -117,7 +117,15 @@ if CPU_MIPSR6 > > > > choice > > prompt "Compact branch policy" > > - default MIPS_COMPACT_BRANCHES_OPTIMAL > > + 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)" > > How about making the option depend on DEBUG_KERNEL and maybe making it an > umbrella setting to hide details from users who do not want to be > bothered, i.e. something like: > > config MIPS_COMPACT_BRANCHES_OVERRIDE > bool "Override the toolchain default for compact branch policy" > depends on DEBUG_KERNEL > default n Although note that "default n" is redundant. Cheers James > [...] > if MIPS_COMPACT_BRANCHES_OVERRIDE > choice > prompt "Compact branch policy" > default MIPS_COMPACT_BRANCHES_OPTIMAL > [...] > endif # MIPS_COMPACT_BRANCHES_OVERRIDE > > ? > > Maciej >
Attachment:
signature.asc
Description: Digital signature