diff options
Diffstat (limited to 'linux-user/aarch64/target_signal.h')
-rw-r--r-- | linux-user/aarch64/target_signal.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/linux-user/aarch64/target_signal.h b/linux-user/aarch64/target_signal.h new file mode 100644 index 0000000000..d413dfc85c --- /dev/null +++ b/linux-user/aarch64/target_signal.h @@ -0,0 +1,33 @@ +#ifndef TARGET_SIGNAL_H +#define TARGET_SIGNAL_H + +#include "cpu.h" + +/* this struct defines a stack used during syscall handling */ + +typedef struct target_sigaltstack { + abi_ulong ss_sp; + abi_long ss_flags; + abi_ulong ss_size; +} target_stack_t; + + +/* + * sigaltstack controls + */ +#define TARGET_SS_ONSTACK 1 +#define TARGET_SS_DISABLE 2 + +#define TARGET_MINSIGSTKSZ 2048 +#define TARGET_SIGSTKSZ 8192 + +static inline abi_ulong get_sp_from_cpustate(CPUARMState *state) +{ +#ifdef TARGET_AARCH64 + return state->xregs[31]; +#else + return state->regs[13]; +#endif +} + +#endif /* TARGET_SIGNAL_H */ |