kumquat-buildroot/package/uclibc/0005-arm-remove-COMPILE_IN_THUMB.patch
Thomas Petazzoni 15a2901d36 uclibc: add patches to simplify Thumb handling
This commit adds a number of patches to uClibc that radically
simplifies the Thumb handling. uClibc currently has three options that
you need to toggle on Thumb configurations depending on the specific
ARM CPU being targeted.

However, it turns out that none of those options are necessary:

 - USE_BX can simply be guessed by looking at the ARM core being
   used. The bx instruction is available for all ARM cores >=
   ARMv4T. This is exactly what glibc is doing.

 - USE_LDREXSTREX can also be guessed by looking at the ARM core being
   used: whenever you have Thumb2, ldrex/strex is available.

 - COMPILE_IN_THUMB becomes useless, since all it does is passing
   -mthumb. But just like the uClibc config options to set
   --march=<foo> have been removed a long time ago, there's no need to
   -have an option to pass -mthumb.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 00:14:48 +02:00

44 lines
1.3 KiB
Diff

From 021e407a5ef7d75f62bde70178606b530720d513 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Thu, 17 Mar 2016 22:47:16 +0100
Subject: [PATCH] arm: remove COMPILE_IN_THUMB
One just need to pass the appropriate -mthumb gcc flag, like you
anyway need to do to build for the proper ARM variant.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Rules.mak | 1 -
extra/Configs/Config.arm | 6 ------
2 files changed, 7 deletions(-)
diff --git a/Rules.mak b/Rules.mak
index b1cecec..0ae3bb1 100644
--- a/Rules.mak
+++ b/Rules.mak
@@ -392,7 +392,6 @@ endif
ifeq ($(TARGET_ARCH),arm)
CPU_CFLAGS-$(ARCH_LITTLE_ENDIAN)+=-mlittle-endian
CPU_CFLAGS-$(ARCH_BIG_ENDIAN)+=-mbig-endian
- CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb
endif
ifeq ($(TARGET_ARCH),metag)
diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
index 0825c42..0d02e3f 100644
--- a/extra/Configs/Config.arm
+++ b/extra/Configs/Config.arm
@@ -24,9 +24,3 @@ config CONFIG_ARM_EABI
If you say 'n' here, then the library will be built for the
old Linux ABI.
-
-config COMPILE_IN_THUMB_MODE
- bool "Build using Thumb mode"
- help
- Say 'y' here to force building uClibc in thumb mode.
- Say 'n' to use your compiler's default mode.
--
2.6.4