1*156d7557SWarner Losh /*
2*156d7557SWarner Losh  *  arm signal definitions
3*156d7557SWarner Losh  *
4*156d7557SWarner Losh  *  Copyright (c) 2013 Stacey D. Son
5*156d7557SWarner Losh  *
6*156d7557SWarner Losh  *  This program is free software; you can redistribute it and/or modify
7*156d7557SWarner Losh  *  it under the terms of the GNU General Public License as published by
8*156d7557SWarner Losh  *  the Free Software Foundation; either version 2 of the License, or
9*156d7557SWarner Losh  *  (at your option) any later version.
10*156d7557SWarner Losh  *
11*156d7557SWarner Losh  *  This program is distributed in the hope that it will be useful,
12*156d7557SWarner Losh  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13*156d7557SWarner Losh  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14*156d7557SWarner Losh  *  GNU General Public License for more details.
15*156d7557SWarner Losh  *
16*156d7557SWarner Losh  *  You should have received a copy of the GNU General Public License
17*156d7557SWarner Losh  *  along with this program; if not, see <http://www.gnu.org/licenses/>.
18*156d7557SWarner Losh  */
19*156d7557SWarner Losh #ifndef _TARGET_ARCH_SIGNAL_H_
20*156d7557SWarner Losh #define _TARGET_ARCH_SIGNAL_H_
21*156d7557SWarner Losh 
22*156d7557SWarner Losh #include "cpu.h"
23*156d7557SWarner Losh 
24*156d7557SWarner Losh #define TARGET_REG_R0   0
25*156d7557SWarner Losh #define TARGET_REG_R1   1
26*156d7557SWarner Losh #define TARGET_REG_R2   2
27*156d7557SWarner Losh #define TARGET_REG_R3   3
28*156d7557SWarner Losh #define TARGET_REG_R4   4
29*156d7557SWarner Losh #define TARGET_REG_R5   5
30*156d7557SWarner Losh #define TARGET_REG_R6   6
31*156d7557SWarner Losh #define TARGET_REG_R7   7
32*156d7557SWarner Losh #define TARGET_REG_R8   8
33*156d7557SWarner Losh #define TARGET_REG_R9   9
34*156d7557SWarner Losh #define TARGET_REG_R10  10
35*156d7557SWarner Losh #define TARGET_REG_R11  11
36*156d7557SWarner Losh #define TARGET_REG_R12  12
37*156d7557SWarner Losh #define TARGET_REG_R13  13
38*156d7557SWarner Losh #define TARGET_REG_R14  14
39*156d7557SWarner Losh #define TARGET_REG_R15  15
40*156d7557SWarner Losh #define TARGET_REG_CPSR 16
41*156d7557SWarner Losh #define TARGET__NGREG   17
42*156d7557SWarner Losh /* Convenience synonyms */
43*156d7557SWarner Losh #define TARGET_REG_FP   TARGET_REG_R11
44*156d7557SWarner Losh #define TARGET_REG_SP   TARGET_REG_R13
45*156d7557SWarner Losh #define TARGET_REG_LR   TARGET_REG_R14
46*156d7557SWarner Losh #define TARGET_REG_PC   TARGET_REG_R15
47*156d7557SWarner Losh 
48*156d7557SWarner Losh #define TARGET_INSN_SIZE    4       /* arm instruction size */
49*156d7557SWarner Losh 
50*156d7557SWarner Losh /* Size of the signal trampolin code. See _sigtramp(). */
51*156d7557SWarner Losh #define TARGET_SZSIGCODE    ((abi_ulong)(9 * TARGET_INSN_SIZE))
52*156d7557SWarner Losh 
53*156d7557SWarner Losh /* compare to arm/include/_limits.h */
54*156d7557SWarner Losh #define TARGET_MINSIGSTKSZ  (1024 * 4)                  /* min sig stack size */
55*156d7557SWarner Losh #define TARGET_SIGSTKSZ     (TARGET_MINSIGSTKSZ + 32768)  /* recommended size */
56*156d7557SWarner Losh 
57*156d7557SWarner Losh #endif /* !_TARGET_ARCH_SIGNAL_H_ */
58