xref: /OK3568_Linux_fs/u-boot/arch/x86/include/asm/setjmp.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * Written by H. Peter Anvin <hpa@zytor.com>
3*4882a593Smuzhiyun  * Brought in from Linux v4.4 and modified for U-Boot
4*4882a593Smuzhiyun  * From Linux arch/um/sys-i386/setjmp.S
5*4882a593Smuzhiyun  *
6*4882a593Smuzhiyun  * SPDX-License-Identifier:	GPL-2.0
7*4882a593Smuzhiyun  */
8*4882a593Smuzhiyun 
9*4882a593Smuzhiyun #ifndef __setjmp_h
10*4882a593Smuzhiyun #define __setjmp_h
11*4882a593Smuzhiyun 
12*4882a593Smuzhiyun struct jmp_buf_data {
13*4882a593Smuzhiyun 	unsigned int __ebx;
14*4882a593Smuzhiyun 	unsigned int __esp;
15*4882a593Smuzhiyun 	unsigned int __ebp;
16*4882a593Smuzhiyun 	unsigned int __esi;
17*4882a593Smuzhiyun 	unsigned int __edi;
18*4882a593Smuzhiyun 	unsigned int __eip;
19*4882a593Smuzhiyun };
20*4882a593Smuzhiyun 
21*4882a593Smuzhiyun int setjmp(struct jmp_buf_data *jmp_buf);
22*4882a593Smuzhiyun void longjmp(struct jmp_buf_data *jmp_buf, int val);
23*4882a593Smuzhiyun 
24*4882a593Smuzhiyun #endif
25