[U-Boot] [PATCH v2] arm: build arch memset/memcpy in Thumb2 mode

Stefan Agner stefan at agner.ch
Fri Nov 28 00:02:44 CET 2014


On 2014-11-21 16:34, Stefan Agner wrote:
> Resynchronize memcpy/memset with kernel and build them explicitly
> in Thumb2 mode (unified syntax). Those assembler files can be
> built and linked in ARM mode too, however when calling them from
> Thumb2 built code, the stack got corrupted and the copy did not
> succeed (the exact details have not been traced back). Hoever,
> the Linux kernel builds those files in Thumb2 mode. Hence U-Boot
> should build them in Thumb2 mode too when CONFIG_SYS_THUMB_BUILD
> is set.
> 
> To build the files without warning, some assembler instructions
> had to be replaced with their UAL compliant variant (thanks
> Jeroen for this input).
> 
> To build the file in Thumb2 mode the implicit-it=always option need
> to be set to generate Thumb2 compliant IT instructions where needed.
> We add this option to the general AFLAGS when building for Thumb2.
> 
> Signed-off-by: Stefan Agner <stefan at agner.ch>
> ---
> Changes since v1:
> - Don't set auto-it in AFLAGS
> - Removed "no-warn-deprecated" warning suppression
> - Converted non-UAL assembler instructions to their UAL compliant variants
> 
> Tested in ARM and Thumb2 mode on Vybrid SoC. Disassembled the memset/
> memcpy object files before and after converting the instructions to UAL,
> the output was identical.
> 

Any thoughts on that? Would be nice to have it in 2015.01 as the current
state breaks Thumb2 for our board.

--
Stefan



More information about the U-Boot mailing list