/* SPDX-License-Identifier: GPL-2.0 */ /* * Written by H. Peter Anvin * Brought in from Linux v4.4 and modified for U-Boot * From Linux arch/um/sys-i386/setjmp.S */ #ifndef __setjmp_h #define __setjmp_h #ifdef CONFIG_X86_64 struct jmp_buf_data { unsigned long __rip; unsigned long __rsp; unsigned long __rbp; unsigned long __rbx; unsigned long __r12; unsigned long __r13; unsigned long __r14; unsigned long __r15; }; #else struct jmp_buf_data { unsigned int __ebx; unsigned int __esp; unsigned int __ebp; unsigned int __esi; unsigned int __edi; unsigned int __eip; }; #endif typedef struct jmp_buf_data jmp_buf[1]; int setjmp(jmp_buf env); void longjmp(jmp_buf env, int val); #endif