Clang support for gnu_inline attribute
[uclibc-ng.git] / libc / sysdeps / linux / nds32 / bits / setjmp.h
blobe287c2481d5a65607df8186d56b629f673e0762d
1 /*
2 * Copyright (C) 2016 Andes Technology, Inc.
3 * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
4 */
6 /* Copyright (C) 2003, 2004 Free Software Foundation, Inc.
8 The GNU C Library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU Library General Public License as
10 published by the Free Software Foundation; either version 2 of the
11 License, or (at your option) any later version.
13 The GNU C Library is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 Library General Public License for more details.
18 You should have received a copy of the GNU Library General Public
19 License along with the GNU C Library; see the file COPYING.LIB. If not,
20 write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA. */
23 /* Define the machine-dependent type `jmp_buf'. NDS32 version. */
24 #ifndef _BITS_SETJMP_H
25 #define _BITS_SETJMP_H 1
27 #if !defined _SETJMP_H && !defined _PTHREAD_H
28 # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead."
29 #endif
31 #ifndef _ASM
32 typedef struct
34 /* Callee-saved registers: r6 - r14,
35 * * fp, gp, lp, sp: r28 - r31. */
36 int __regs[13];
38 /* Floating-Point Configuration Register. */
39 int __fpcfg;
41 /* Callee-saved fp registers pointer. */
42 int __fpregs[32];
44 } __jmp_buf[1] __attribute__((__aligned__ (8)));
46 #endif
48 #endif /* bits/setjmp.h */