Add SGI Iris mods.
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Thu, 30 Jul 1992 15:08:48 +0000 (15:08 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Thu, 30 Jul 1992 15:08:48 +0000 (15:08 +0000)
v7/src/microcode/config.h
v7/src/microcode/oscond.h
v7/src/microcode/ux.h
v7/src/microcode/uxtrap.h

index 223562b1973b7c7c8bba941f7a0133aef17d3ee6..c4ca418c7aa7113931182fc1b56cebfdef9d26c6 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/config.h,v 9.72 1992/07/23 12:31:38 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/config.h,v 9.73 1992/07/30 15:08:48 jinx Exp $
 
 Copyright (c) 1987-1992 Massachusetts Institute of Technology
 
@@ -416,7 +416,7 @@ typedef unsigned long SCHEME_OBJECT;
 #endif
 #endif
 
-#ifdef sony
+#if defined(sony) || defined(_IRIX4)
 #define HAS_FLOOR
 #define HAS_FREXP
 #define HAS_MODF
index 78161dd0127837ec90128bb11a192de3a40f7eb8..038307fb8d867bcaf5678584b3aecc3f9acd3fd0 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/oscond.h,v 1.10 1992/07/23 03:48:28 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/oscond.h,v 1.11 1992/07/30 15:04:07 jinx Exp $
 
 Copyright (c) 1990-1992 Massachusetts Institute of Technology
 
@@ -111,6 +111,11 @@ MIT in each case. */
 #endif /* __hpux */
 #endif /* _HPUX */
   
+#ifdef _IRIX4
+#define _POSIX
+#define _SYSV3
+#endif
+
 #ifdef _SYSV4
 #define _POSIX
 #define _SYSV3
index a04419512bd68389788bc9807c8c6b849aee64a4..4740a1279fdfc389707f558b0fdf81c6ad59ce7c 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/ux.h,v 1.33 1992/07/06 23:42:06 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/ux.h,v 1.34 1992/07/30 14:59:58 jinx Exp $
 
 Copyright (c) 1988-1992 Massachusetts Institute of Technology
 
@@ -215,6 +215,17 @@ extern void EXFUN (error_system_call, (int code, enum syscall_names name));
 #define ERRNO_NONBLOCK EAGAIN
 #define FCNTL_NONBLOCK O_NONBLOCK
 
+#ifdef _IRIX4
+
+#define HAVE_DIR
+#define HAVE_SELECT
+#define HAVE_SIGCONTEXT
+#define HAVE_SOCKETS
+#define HAVE_SYMBOLIC_LINKS
+#define HAVE_UNIX_SOCKETS
+
+#endif /* _IRIX4 */
+
 #else /* not _POSIX */
 #ifdef _BSD
 
index 01065b370b5c236bf55deac0260d2baa316c87d9..3d84b20c9cd36a537e9b8c67bd062444800f659b 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxtrap.h,v 1.14 1992/06/05 20:10:27 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxtrap.h,v 1.15 1992/07/30 15:03:01 jinx Exp $
 
 Copyright (c) 1990-1992 Massachusetts Institute of Technology
 
@@ -252,6 +252,43 @@ struct full_sigcontext
 #endif /* vax */
 \f
 #ifdef mips
+#ifdef _IRIX4
+
+/* Information on sigcontext structure in signal.h */
+
+#ifndef sc_sp
+#define sc_sp                          sc_regs[29]
+#endif
+
+#define sc_rfree                       sc_regs[9]
+#define sc_schsp                       sc_regs[3]
+
+#define HAVE_FULL_SIGCONTEXT
+#define FULL_SIGCONTEXT_RFREE(scp)     ((scp)->sc_rfree)
+#define FULL_SIGCONTEXT_SCHSP(scp)     ((scp)->sc_schsp)
+#define FULL_SIGCONTEXT_FIRST_REG(scp) (&((scp)->sc_regs[0]))
+#define FULL_SIGCONTEXT_NREGS          32
+#define PROCESSOR_NREGS                        32
+
+#define INITIALIZE_UX_SIGNAL_CODES()                                   \
+{                                                                      \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGTRAP, (~ 0L), BRK_OVERFLOW, "integer overflow trap");          \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGTRAP, (~ 0L), BRK_DIVZERO, "integer divide by 0 trap");                \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGTRAP, (~ 0L), BRK_MULOVF, "integer multiply overflow");                \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGFPE,  (  0L),       0,      "floating-point exception");       \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGSEGV, (~ 0L),       EFAULT,   "Invalid virtual address");      \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGSEGV, (~ 0L),       EACCES,   "Read-only address");            \
+  DECLARE_UX_SIGNAL_CODE                                               \
+    (SIGSEGV, (~ 0L),       ENXIO,   "Read beyond mapped object");     \
+}
+
+#else /* not _IRIX4 */
 #ifndef _SYSV4
 
 /* Information on sigcontext structure in signal.h */
@@ -364,6 +401,7 @@ struct full_sigcontext
 }
 
 #endif /* _SYSV4 */
+#endif /* _IRIX4 */
 #endif /* mips */
 \f
 #if defined(i386) && defined(_MACH_UNIX)