1*a8720299SJia Liu #ifndef TARGET_SIGNAL_H 2*a8720299SJia Liu #define TARGET_SIGNAL_H 3*a8720299SJia Liu 4*a8720299SJia Liu #include "cpu.h" 5*a8720299SJia Liu 6*a8720299SJia Liu /* this struct defines a stack used during syscall handling */ 7*a8720299SJia Liu 8*a8720299SJia Liu typedef struct target_sigaltstack { 9*a8720299SJia Liu abi_long ss_sp; 10*a8720299SJia Liu abi_ulong ss_size; 11*a8720299SJia Liu abi_long ss_flags; 12*a8720299SJia Liu } target_stack_t; 13*a8720299SJia Liu 14*a8720299SJia Liu /* sigaltstack controls */ 15*a8720299SJia Liu #define TARGET_SS_ONSTACK 1 16*a8720299SJia Liu #define TARGET_SS_DISABLE 2 17*a8720299SJia Liu 18*a8720299SJia Liu #define TARGET_MINSIGSTKSZ 2048 19*a8720299SJia Liu #define TARGET_SIGSTKSZ 8192 20*a8720299SJia Liu 21*a8720299SJia Liu static inline abi_ulong get_sp_from_cpustate(CPUOpenRISCState *state) 22*a8720299SJia Liu { 23*a8720299SJia Liu return state->gpr[1]; 24*a8720299SJia Liu } 25*a8720299SJia Liu 26*a8720299SJia Liu #endif /* TARGET_SIGNAL_H */ 27