setjmp() on ARM with Neon

Matthew Gretton-Dann matthew.gretton-dann@linaro.org
Tue May 7 10:25:00 GMT 2013


On 06/05/13 14:27, Sebastian Huber wrote:
> Hello,
>
> the implementation of setjmp() in "newlib/libc/machine/arm/setjmp.S" doesn't
> store the non-volatile Neon registers d8..d15.  Is this correct?  I think we
> have to save and restore these registers if __ARM_NEON__ is defined.

I agree - but not just __ARM_NEON__ also when VFP is enabled.  We should 
also save WMMX registers when WMMX is available.  See the ABI docs here:

http://infocenter.arm.com/help/topic/com.arm.doc.ihi0039c/IHI0039C_clibabi.pdf

Unfortunately I doubt I have time at the moment to generate an appropriate 
patch.

Thanks,

Matt


-- 
Matthew Gretton-Dann
Toolchain Working Group, Linaro



More information about the Newlib mailing list