blob: 174b3eb18062708c2d3ddd6b16521a19857d0e65 [file] [log] [blame]
Ambroise Vincentefac5972019-02-11 13:34:41 +00001/*
2 * Copyright (c) 2018-2019, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef SETJMP__H
8#define SETJMP__H
9
10#define JMP_CTX_X19 0x0
11#define JMP_CTX_X21 0x10
12#define JMP_CTX_X23 0x20
13#define JMP_CTX_X25 0x30
14#define JMP_CTX_X27 0x40
15#define JMP_CTX_X29 0x50
16#define JMP_CTX_SP 0x60
17#define JMP_CTX_END 0x70 /* Aligned to 16 bytes */
18
19#define JMP_SIZE (JMP_CTX_END >> 3)
20
21#ifndef __ASSEMBLY__
22
23#include <cdefs.h>
24
25/* Jump buffer hosting x18 - x30 and sp_el0 registers */
26typedef uint64_t jmp_buf[JMP_SIZE] __aligned(16);
27
28#endif /* __ASSEMBLY__ */
29
30#endif /* SETJMP__H */