4.9.11. __rt_stack_postlongjmp()

This function sets sp and sl to correct values after a call to longjmp(). An incomplete prototype implementation in assembler code is in rt_memory.s.


This function is called with r0 containing the pre-setjmp() value for sl, and r1 containing the pre-setjmp() value for sp.

If your memory model is used only with non stack-checked ATPCS, you do not have to implement this function.


The function must set sl and sp to valid post-longjmp() values. The registers must be set atomically to avoid interrupt problems. So in the minimal implementation where the memory model requires no special handling, you would push r0 and r1 on the stack and then use LDM to load sl and sp atomically with the new values.

Copyright © 1999-2001 ARM Limited. All rights reserved.ARM DUI 0067D