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