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