[Buildroot] [PATCH v2 08/17] uclibc: context functions are not Thumb-compatible

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Sat Mar 19 18:07:33 UTC 2016


Hello,

On Sat, 19 Mar 2016 17:20:09 +0100, Arnout Vandecappelle wrote:
> On 03/18/16 22:08, Thomas Petazzoni wrote:
> > On Thumb1 platforms and Thumb2 platforms that support the ARM
> 
>   This sentence is a bit weird, unless you realise that we don't have any thumb1 
> platforms that don't have ARM instructions.

Right.

>   It may be useful to note that this will break packages that rely on the 
> context functions, so that these packages must be disabled for that architecture 
> combination.

Correct, but we already have such a case with musl, which doesn't
implement the context functions.

>   BTW, for that reason, it may be better to create a Kconfig blind option to 
> encode this situation.

I think we need to see how many packages use such functions. Probably
not many.

> uclibc: context functions are not Thumb-compatible
> 
> On platforms that do support the ARM instruction set, there is no problem, as 
> the context functions are built unconditionally in ARM mode.
> 
> However, on platforms that only support the Thumb instruction set, the context 
> functions cannot be built since the assembler code is not Thumb-ready. 
> Therefore, these functions must be disabled. All Thumb1 platforms support ARM 
> instructions, so this is only relevant for Thumb2 platforms (i.e., Cortex-M).

I would do: "only relevant for Thumb2-only platforms". Cortex-A is a
Thumb2 platform, but does not have any problem as it also supports the
ARM instruction set.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com



More information about the buildroot mailing list