Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/sommerfeld_i386mp_1]: src/sys/arch/i386/include rename (incorrect) SVR4_...
details: https://anonhg.NetBSD.org/src/rev/85deb9c4fdb1
branches: sommerfeld_i386mp_1
changeset: 482467:85deb9c4fdb1
user: jdolecek <jdolecek%NetBSD.org@localhost>
date: Fri Dec 21 07:02:24 2001 +0000
description:
rename (incorrect) SVR4_TRAP_CLOCK_SETTIME to SVR4_TRAP_GETHRESTIME - this
is what Solaris8 calls it
implement SVR4_TRAP_GETHRESTIME, though obviously only with microsecond accuracy
now clock_gettime(CLOCK_REALTIME, tp) works on Solaris8/i386
diffstat:
sys/arch/i386/include/svr4_machdep.h | 133 +++++++++++++++++++++++++++++++++++
1 files changed, 133 insertions(+), 0 deletions(-)
diffs (137 lines):
diff -r ed884d8e4e22 -r 85deb9c4fdb1 sys/arch/i386/include/svr4_machdep.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/i386/include/svr4_machdep.h Fri Dec 21 07:02:24 2001 +0000
@@ -0,0 +1,133 @@
+/* $NetBSD: svr4_machdep.h,v 1.14.2.2 2001/12/21 07:02:24 jdolecek Exp $ */
+
+/*-
+ * Copyright (c) 1994 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Christos Zoulas.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _I386_SVR4_MACHDEP_H_
+#define _I386_SVR4_MACHDEP_H_
+
+#include <compat/svr4/svr4_types.h>
+
+/*
+ * Machine dependent portions [X86]
+ */
+
+#define SVR4_X86_GS 0
+#define SVR4_X86_FS 1
+#define SVR4_X86_ES 2
+#define SVR4_X86_DS 3
+#define SVR4_X86_EDI 4
+#define SVR4_X86_ESI 5
+#define SVR4_X86_EBP 6
+#define SVR4_X86_ESP 7
+#define SVR4_X86_EBX 8
+#define SVR4_X86_EDX 9
+#define SVR4_X86_ECX 10
+#define SVR4_X86_EAX 11
+#define SVR4_X86_TRAPNO 12
+#define SVR4_X86_ERR 13
+#define SVR4_X86_EIP 14
+#define SVR4_X86_CS 15
+#define SVR4_X86_EFL 16
+#define SVR4_X86_UESP 17
+#define SVR4_X86_SS 18
+#define SVR4_X86_MAXREG 19
+
+
+typedef int svr4_greg_t;
+typedef svr4_greg_t svr4_gregset_t[SVR4_X86_MAXREG];
+
+typedef struct {
+ int f_x87[62]; /* x87 registers */
+ long f_weitek[33]; /* weitek */
+} svr4_fregset_t;
+
+struct svr4_mcontext;
+
+typedef struct svr4_mcontext {
+ svr4_gregset_t greg;
+ svr4_fregset_t freg;
+} svr4_mcontext_t;
+
+#define SVR4_UC_MACHINE_PAD 5
+
+/*
+ * SYSARCH numbers
+ */
+#define SVR4_SYSARCH_FPHW 40
+#define SVR4_SYSARCH_DSCR 75
+
+struct svr4_ssd {
+ unsigned int selector;
+ unsigned int base;
+ unsigned int limit;
+ unsigned int access1;
+ unsigned int access2;
+};
+
+/*
+ * Processor traps
+ */
+#define SVR4_T_DIVIDE 0
+#define SVR4_T_TRCTRAP 1
+#define SVR4_T_NMI 2
+#define SVR4_T_BPTFLT 3
+#define SVR4_T_OFLOW 4
+#define SVR4_T_BOUND 5
+#define SVR4_T_PRIVINFLT 6
+#define SVR4_T_DNA 7
+#define SVR4_T_DOUBLEFLT 8
+#define SVR4_T_FPOPFLT 9
+#define SVR4_T_TSSFLT 10
+#define SVR4_T_SEGNPFLT 11
+#define SVR4_T_STKFLT 12
+#define SVR4_T_PROTFLT 13
+#define SVR4_T_PAGEFLT 14
+#define SVR4_T_ALIGNFLT 17
+
+/*
+ * Fast syscall gate traps.
+ */
+#define SVR4_TRAP_FNULL 0 /* Null trap, for testing */
+#define SVR4_TRAP_FGETFP 1 /* Get emulated FP context */
+#define SVR4_TRAP_FSETFP 2 /* Set emulated FP context */
+#define SVR4_TRAP_GETHRTIME 3 /* implements gethrtime(2) */
+#define SVR4_TRAP_GETHRVTIME 4 /* implements gethrvtime(2) */
+#define SVR4_TRAP_GETHRESTIME 5 /* clock_gettime(CLOCK_REALTIME, tp) */
+
+void svr4_syscall_intern __P((struct proc *));
+
+#endif /* !_I386_SVR4_MACHDEP_H_ */
Home |
Main Index |
Thread Index |
Old Index