Module Name: src
Committed By: matt
Date: Thu Nov 26 01:21:50 UTC 2009
Modified Files:
src/sys/arch/mips/include: mcontext.h
Log Message:
Back out unintended commit.
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/mips/include/mcontext.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/mips/include/mcontext.h
diff -u src/sys/arch/mips/include/mcontext.h:1.9 src/sys/arch/mips/include/mcontext.h:1.10
--- src/sys/arch/mips/include/mcontext.h:1.9 Thu Nov 26 00:19:19 2009
+++ src/sys/arch/mips/include/mcontext.h Thu Nov 26 01:21:50 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mcontext.h,v 1.9 2009/11/26 00:19:19 matt Exp $ */
+/* $NetBSD: mcontext.h,v 1.10 2009/11/26 01:21:50 matt Exp $ */
/*-
* Copyright (c) 1999, 2002 The NetBSD Foundation, Inc.
@@ -81,15 +81,15 @@
/* Make sure this is signed; we need pointers to be sign-extended. */
#if defined(__mips_n32)
-typedef long long __greg_t;
+typedef long long __greg_t;
#else
-typedef long __greg_t;
+typedef long __greg_t;
#endif /* __mips_n32 */
typedef __greg_t __gregset_t[_NGREG];
/*
- * For the O32/O64 ABI, there are 16 doubles, one at each even FP reg
+ * For the O32 ABI, there are 16 doubles, one at each even FP reg
* number. The FP registers themselves are 32-bits.
*
* For 64-bit ABIs (include N32), each FP register is a 64-bit double.
@@ -99,50 +99,45 @@
/*
* Floating point register state
*/
-struct __fpregset_nabi {
+#if defined(__mips_n32) || defined(_LP64)
+typedef struct {
union {
double __fp64_dregs[32];
__freg_t __fp_regs[32];
} __fp_r;
unsigned int __fp_csr;
unsigned int __fp_pad;
-};
-struct __fpregset_oabi {
+} __fpregset_t;
+#else /* !(__mips_n32 || _LP64) */
+typedef struct {
union {
double __fp_dregs[16];
float __fp_fregs[32];
- int32_t __fp_regs[32];
+ __freg_t __fp_regs[32];
} __fp_r;
unsigned int __fp_csr;
unsigned int __fp_pad;
-};
-
-#if __mips_n32 || __mips_n64
-typedef struct __fpregset_nabi __fpregset_t;
-#else
-typedef struct __fpregset_oabi __fpregset_t;
-#else
+} __fpregset_t;
+#endif /* !(__mips_n32 || _LP64) */
typedef struct {
__gregset_t __gregs;
__fpregset_t __fpregs;
} mcontext_t;
-#ifdef COMPAT_NETBSD32
-typedef int32_t __greg32_t;
-typedef __greg32_t __gregset32_t[_NGREG];
-
-typedef struct {
- __gregset32_t __gregs;
- __fpregset_oabi_t __fpregs;
-} mcontext32_t;
-
-#endif
-
#endif /* !__ASSEMBLER__ */
#define _UC_MACHINE_PAD 16 /* Padding appended to ucontext_t */
+/*
+ * Offsets relative to ucontext_t; intended to be used by assembly stubs.
+ */
+#if !defined(_MIPS_BSD_API) || _MIPS_BSD_API == _MIPS_BSD_API_LP32
+#define _OFFSETOF_UC_GREGS 40
+#else
+#define _OFFSETOF_UC_GREGS 56
+#endif
+
#define _UC_SETSTACK 0x00010000
#define _UC_CLRSTACK 0x00020000