xref: /DragonStub/inc/aarch64/efisetjmp_arch.h (revision c2102ae05917d81ffc7b854003415e575fc90764)
1 #ifndef GNU_EFI_AARCH64_SETJMP_H
2 #define GNU_EFI_AARCH64_SETJMP_H
3 
4 #define JMPBUF_ALIGN 8
5 
6 typedef struct {
7 	/* GP regs */
8 	UINT64	X19;
9 	UINT64	X20;
10 	UINT64	X21;
11 	UINT64	X22;
12 	UINT64	X23;
13 	UINT64	X24;
14 	UINT64	X25;
15 	UINT64	X26;
16 	UINT64	X27;
17 	UINT64	X28;
18 	UINT64	FP;
19 	UINT64	LR;
20 	UINT64	IP0;
21 	UINT64	_pad1;
22 
23 	/* FP regs */
24 	UINT64	D8;
25 	UINT64	D9;
26 	UINT64	D10;
27 	UINT64	D11;
28 	UINT64	D12;
29 	UINT64	D13;
30 	UINT64	D14;
31 	UINT64	D15;
32 } ALIGN(JMPBUF_ALIGN) jmp_buf[1];
33 
34 #endif /* GNU_EFI_AARCH64_SETJMP_H */
35