1 #ifndef SPARC_TARGET_SIGNAL_H
2 #define SPARC_TARGET_SIGNAL_H
3 
4 #include "cpu.h"
5 
6 /* this struct defines a stack used during syscall handling */
7 
8 typedef struct target_sigaltstack {
9 	abi_ulong ss_sp;
10 	abi_long ss_flags;
11 	abi_ulong ss_size;
12 } target_stack_t;
13 
14 
15 /*
16  * sigaltstack controls
17  */
18 #define TARGET_SS_ONSTACK	1
19 #define TARGET_SS_DISABLE	2
20 
21 #define TARGET_MINSIGSTKSZ	4096
22 #define TARGET_SIGSTKSZ		16384
23 
24 #ifndef UREG_I6
25 #define UREG_I6        6
26 #endif
27 #ifndef UREG_FP
28 #define UREG_FP        UREG_I6
29 #endif
30 
31 static inline abi_ulong get_sp_from_cpustate(CPUSPARCState *state)
32 {
33     return state->regwptr[UREG_FP];
34 }
35 
36 #define TARGET_ARCH_HAS_SETUP_FRAME
37 #endif /* SPARC_TARGET_SIGNAL_H */
38