1 /* Define the machine-dependent type `jmp_buf'.  C-SKY version.
2    Copyright (C) 2018-2022 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
4 
5    The GNU C Library is free software; you can redistribute it and/or
6    modify it under the terms of the GNU Lesser General Public
7    License as published by the Free Software Foundation; either
8    version 2.1 of the License, or (at your option) any later version.
9 
10    The GNU C Library is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Lesser General Public License for more details.
14 
15    You should have received a copy of the GNU Lesser General Public
16    License along with the GNU C Library.  If not, see
17    <https://www.gnu.org/licenses/>.  */
18 
19 #ifndef _CSKY_BITS_SETJMP_H
20 #define _CSKY_BITS_SETJMP_H 1
21 
22 typedef struct __jmp_buf_str
23   {
24     /* Stack pointer.  */
25     int __sp;
26     int __lr;
27     /* The actual core defines which registers should be saved.  The
28        buffer contains 32 words, keep space for future growth.
29        Callee-saved registers:
30        r4 ~ r11, r16 ~ r17, r26 ~r31 for abiv2; r8 ~ r14 for abiv1.  */
31     int __regs[32];
32   } __jmp_buf[1];
33 
34 #endif
35