[Buildroot] [PATCH v2 04/17] uclibc: add patches to simplify Thumb handling
Arnout Vandecappelle
arnout at mind.be
Sat Mar 19 15:46:04 UTC 2016
On 03/18/16 22:08, Thomas Petazzoni wrote:
> 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 at free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
Upstream status? Knowing Waldemar's lightning reflexes, we will probably just
bump the uClibc version rather than having these patches in Buildroot :-)
Regards,
Arnout
> ---
> .../0001-arm-remove-use-of-USE_BX-option.patch | 53 ++++++++++++++++++++++
> package/uclibc/0002-arm-remove-USE_BX-option.patch | 40 ++++++++++++++++
> .../0003-arm-remove-use-of-USE_LDREXSTREX.patch | 49 ++++++++++++++++++++
> .../uclibc/0004-arm-remove-USE_LDREXSTREX.patch | 34 ++++++++++++++
> .../uclibc/0005-arm-remove-COMPILE_IN_THUMB.patch | 43 ++++++++++++++++++
> 5 files changed, 219 insertions(+)
> create mode 100644 package/uclibc/0001-arm-remove-use-of-USE_BX-option.patch
> create mode 100644 package/uclibc/0002-arm-remove-USE_BX-option.patch
> create mode 100644 package/uclibc/0003-arm-remove-use-of-USE_LDREXSTREX.patch
> create mode 100644 package/uclibc/0004-arm-remove-USE_LDREXSTREX.patch
> create mode 100644 package/uclibc/0005-arm-remove-COMPILE_IN_THUMB.patch
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
More information about the buildroot
mailing list