Commit d244782c authored by Gustavo Zacarias's avatar Gustavo Zacarias Committed by Peter Korsgaard
Browse files

uclibc/arm: doesn't build in thumb(1) mode with threads



It runs out of registers, it fails even in official form
(COMPILE_IN_THUMB_MODE=y) so just build it in ARM mode since EABI
mandates interworking.
Tested in an arm920t board.

Signed-off-by: default avatarGustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent 10304553
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -185,7 +185,7 @@ config BR2_UCLIBC_ARM_TYPE
config BR2_UCLIBC_ARM_BX
	bool
	depends on BR2_UCLIBC_TARGET_ARCH = "arm"
	default y if !BR2_fa265 && !BR2_strongarm
	default y if (BR2_ARM_CPU_HAS_THUMB || BR2_ARM_CPU_HAS_THUMB2)

config BR2_UCLIBC_MIPS_ABI
	string
+6 −1
Original line number Diff line number Diff line
@@ -74,6 +74,11 @@ define UCLIBC_ARM_ABI_CONFIG
	$(call UCLIBC_OPT_SET,CONFIG_ARM_EABI,y,$(@D))
endef

# Thumb build is broken with threads, build in ARM mode
ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),yy)
UCLIBC_EXTRA_CFLAGS += -marm
endif

ifeq ($(BR2_UCLIBC_ARM_BX),y)
define UCLIBC_ARM_BX_CONFIG
	$(call UCLIBC_OPT_SET,USE_BX,y,$(@D))
@@ -348,7 +353,7 @@ endif
UCLIBC_MAKE_FLAGS = \
	ARCH="$(UCLIBC_TARGET_ARCH)" \
	CROSS_COMPILE="$(TARGET_CROSS)" \
	UCLIBC_EXTRA_CFLAGS="$(TARGET_ABI)" \
	UCLIBC_EXTRA_CFLAGS="$(UCLIBC_EXTRA_CFLAGS) $(TARGET_ABI)" \
	HOSTCC="$(HOSTCC)"

define UCLIBC_SETUP_DOT_CONFIG