2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
6 * Copyright (C) 1996, 1997, 1999 by Ralf Baechle
7 * Copyright (C) 1999 Silicon Graphics, Inc.
9 #ifndef _UAPI_ASM_SIGCONTEXT_H
10 #define _UAPI_ASM_SIGCONTEXT_H
12 #include <linux/types.h>
13 #include <asm/sgidefs.h>
15 /* Bits which may be set in sc_used_math */
16 #define USEDMATH_FP (1 << 0)
17 #define USEDMATH_MSA (1 << 1)
19 #if _MIPS_SIM == _MIPS_SIM_ABI32
22 * Keep this struct definition in sync with the sigcontext fragment
23 * in arch/mips/tools/offset.c
26 unsigned int sc_regmask; /* Unused */
27 unsigned int sc_status; /* Unused */
28 unsigned long long sc_pc;
29 unsigned long long sc_regs[32];
30 unsigned long long sc_fpregs[32];
31 unsigned int sc_acx; /* Was sc_ownedfp */
32 unsigned int sc_fpc_csr;
33 unsigned int sc_fpc_eir; /* Unused */
34 unsigned int sc_used_math;
35 unsigned int sc_dsp; /* dsp status, was sc_ssflags */
36 unsigned long long sc_mdhi;
37 unsigned long long sc_mdlo;
38 unsigned long sc_hi1; /* Was sc_cause */
39 unsigned long sc_lo1; /* Was sc_badvaddr */
40 unsigned long sc_hi2; /* Was sc_sigset[4] */
44 unsigned long long sc_msaregs[32]; /* Most significant 64 bits */
45 unsigned long sc_msa_csr;
48 #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
50 #if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
52 #include <linux/posix_types.h>
54 * Keep this struct definition in sync with the sigcontext fragment
55 * in arch/mips/tools/offset.c
57 * Warning: this structure illdefined with sc_badvaddr being just an unsigned
58 * int so it was changed to unsigned long in 2.6.0-test1. This may break
59 * binary compatibility - no prisoners.
60 * DSP ASE in 2.6.12-rc4. Turn sc_mdhi and sc_mdlo into an array of four
61 * entries, add sc_dsp and sc_reserved for padding. No prisoners.
84 #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
86 #endif /* _UAPI_ASM_SIGCONTEXT_H */