Hi Thomas, Thomas Petazzoni wrote,
Currently, the Thumb support on ARM has three related Config.in options, which are not trivial for users to understand, and are in fact not needed:
The USE_BX option is not needed: knowing whether BX is available or not is easy. If you have an ARM > v4 or ARMv4T, then BX is available, otherwise it's not. This is the logic used in glibc.
The USE_LDREXSTREX option is not needed: whenever Thumb2 is available, ldrex/strex are available, so we can simply rely on __thumb2__ to determine whether ldrex/strex should be used, without requiring a Config.in option.
Once USE_BX and USE_LDREXSTREX are removed, the only thing left that COMPILE_IN_THUMB does is to set -mthumb. This makes the option unnecessary, as on ARM at least, the user is already supposed to pass -march=<foo> or other compiler options tuning the library for a specific ARM variant. There is no reason to do otherwise for Thumb, which allows to get rid of the COMPILE_IN_THUMB option.
Signed-off-by: Thomas Petazzoni thomas.petazzoni@free-electrons.com
Applied and pushed.
Want to get the thread ARM noMMU problem analyzed and fixed before the next release. Did you done any further testing?
best regards Waldemar