• Jeenu Viswambharan's avatar
    BL31: Introduce jump primitives · e7b9473e
    Jeenu Viswambharan authored
    
    
    This patch introduces setjmp() and ongjmp() primitives to enable
    standard setjmp/longjmp style execution. Both APIs parameters take a
    pointer to struct jmpbuf type, which hosts CPU registers saved/restored
    during jump.
    
    As per the standard usage:
    
      - setjmp() return 0 when a jump is setup; and a non-zero value when
        returning from jump.
    
      - The caller of setjmp() must not return, or otherwise update stack
        pointer since.
    
    Change-Id: I4af1d32e490cfa547979631b762b4cba188d0551
    Signed-off-by: default avatarJeenu Viswambharan <jeenu.viswambharan@arm.com>
    e7b9473e
setjmp.h 1.49 KB