buildroot: allow enabling MIPS16 user-space build
Enabling MIPS16 is made conditional on advertising the "mips16" feature for a specific target since it requires support from the CPU (HAS_MIPS16) and the actual use of MIPS16 for building packages (USE_MIPS16). Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 36202
This commit is contained in:
parent
f223d0927e
commit
9e1d2c15d9
11
Config.in
11
Config.in
@ -681,6 +681,17 @@ menuconfig TARGET_OPTIONS
|
||||
|
||||
Most people will answer N.
|
||||
|
||||
config USE_MIPS16
|
||||
bool "Build packages with MIPS16 instructions" if TARGET_OPTIONS
|
||||
depends on HAS_MIPS16
|
||||
help
|
||||
If your target CPU does support the MIPS16 instruction set
|
||||
and you want to use it for packages, enable this option.
|
||||
MIPS16 produces smaller binaries thus reducing pressure on
|
||||
caches and TLB.
|
||||
|
||||
Most people will answer N.
|
||||
|
||||
source "toolchain/Config.in"
|
||||
|
||||
source "target/imagebuilder/Config.in"
|
||||
|
3
rules.mk
3
rules.mk
@ -63,6 +63,9 @@ endif
|
||||
ifneq ($(filter -mips%r2,$(TARGET_OPTIMIZATION)),)
|
||||
ARCH_SUFFIX:=_r2
|
||||
endif
|
||||
ifdef CONFIG_USE_MIPS16
|
||||
TARGET_OPTIMIZATION+= -minterlink-mips16 -mips16
|
||||
endif
|
||||
ifneq ($(findstring -mips16,$(TARGET_OPTIMIZATION)),)
|
||||
TARGET_ASFLAGS_OVERRIDE:=-mno-mips16
|
||||
ARCH_SUFFIX:= $(ARCH_SUFFIX)_m16
|
||||
|
@ -174,6 +174,7 @@ sub target_config_features(@) {
|
||||
/ramdisk/ and $ret .= "\tselect USES_INITRAMFS\n";
|
||||
/powerpc64/ and $ret .= "\tselect powerpc64\n";
|
||||
/nommu/ and $ret .= "\tselect NOMMU\n";
|
||||
/mips16/ and $ret .= "\tselect HAS_MIPS16\n";
|
||||
}
|
||||
return $ret;
|
||||
}
|
||||
|
@ -66,6 +66,10 @@ config PROFILE_KCONFIG
|
||||
config NOMMU
|
||||
bool
|
||||
|
||||
config HAS_MIPS16
|
||||
depends (mips || mipsel || mips64 || mips64el)
|
||||
bool
|
||||
|
||||
# Architecture selection
|
||||
|
||||
config arm
|
||||
|
Loading…
Reference in New Issue
Block a user