This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
Re: setjmp() on ARM with Neon
- From: Matthew Gretton-Dann <matthew dot gretton-dann at linaro dot org>
- To: Sebastian Huber <sebastian dot huber at embedded-brains dot de>
- Cc: newlib at sourceware dot org, Will Newton <will dot newton at linaro dot org>
- Date: Tue, 07 May 2013 11:25:42 +0100
- Subject: Re: setjmp() on ARM with Neon
- References: <5187AFBB dot 5000500 at embedded-brains dot de>
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