blob: 13772574e15dee83078d2b0df9a4aa741810e8ea [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0 */
Simon Glass70785632016-10-17 20:29:07 -06002/*
3 * Written by H. Peter Anvin <hpa@zytor.com>
4 * Brought in from Linux v4.4 and modified for U-Boot
5 * From Linux arch/um/sys-i386/setjmp.S
Simon Glass70785632016-10-17 20:29:07 -06006 */
7
Heinrich Schuchardtf6782bb2025-03-02 15:21:19 +01008#ifndef _ASM_SETJMP_H_
9#define _ASM_SETJMP_H_ 1
Simon Glass70785632016-10-17 20:29:07 -060010
Ivan Gorinov8a57ea72018-06-19 11:40:42 -070011#ifdef CONFIG_X86_64
12
13struct jmp_buf_data {
14 unsigned long __rip;
15 unsigned long __rsp;
16 unsigned long __rbp;
17 unsigned long __rbx;
18 unsigned long __r12;
19 unsigned long __r13;
20 unsigned long __r14;
21 unsigned long __r15;
22};
23
24#else
25
Simon Glass70785632016-10-17 20:29:07 -060026struct jmp_buf_data {
27 unsigned int __ebx;
28 unsigned int __esp;
29 unsigned int __ebp;
30 unsigned int __esi;
31 unsigned int __edi;
32 unsigned int __eip;
33};
34
Ivan Gorinov8a57ea72018-06-19 11:40:42 -070035#endif
36
Heinrich Schuchardtf6782bb2025-03-02 15:21:19 +010037#endif /* _ASM_SETJMP_H_ */