19c93ae13SMarkus Armbruster #ifndef MICROBLAZE_TARGET_SIGNAL_H 29c93ae13SMarkus Armbruster #define MICROBLAZE_TARGET_SIGNAL_H 38dfbe4e8SEdgar E. Iglesias 48dfbe4e8SEdgar E. Iglesias #include "cpu.h" 58dfbe4e8SEdgar E. Iglesias 68dfbe4e8SEdgar E. Iglesias /* this struct defines a stack used during syscall handling */ 78dfbe4e8SEdgar E. Iglesias 88dfbe4e8SEdgar E. Iglesias typedef struct target_sigaltstack { 98dfbe4e8SEdgar E. Iglesias abi_ulong ss_sp; 108dfbe4e8SEdgar E. Iglesias abi_ulong ss_size; 118dfbe4e8SEdgar E. Iglesias abi_long ss_flags; 12c227f099SAnthony Liguori } target_stack_t; 138dfbe4e8SEdgar E. Iglesias 148dfbe4e8SEdgar E. Iglesias 158dfbe4e8SEdgar E. Iglesias /* 168dfbe4e8SEdgar E. Iglesias * sigaltstack controls 178dfbe4e8SEdgar E. Iglesias */ 188dfbe4e8SEdgar E. Iglesias #define TARGET_SS_ONSTACK 1 198dfbe4e8SEdgar E. Iglesias #define TARGET_SS_DISABLE 2 208dfbe4e8SEdgar E. Iglesias 218dfbe4e8SEdgar E. Iglesias #define TARGET_MINSIGSTKSZ 2048 228dfbe4e8SEdgar E. Iglesias #define TARGET_SIGSTKSZ 8192 238dfbe4e8SEdgar E. Iglesias 248dfbe4e8SEdgar E. Iglesias static inline abi_ulong get_sp_from_cpustate(CPUMBState *state) 258dfbe4e8SEdgar E. Iglesias { 26*a31e7605SLaurent Vivier return state->regs[1]; 278dfbe4e8SEdgar E. Iglesias } 288dfbe4e8SEdgar E. Iglesias 294134ecfeSTimothy E Baldwin 309c93ae13SMarkus Armbruster #endif /* MICROBLAZE_TARGET_SIGNAL_H */ 31