Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-4]: src/sys/arch/alpha/alpha pull up rev(s) 1.45-1.46 from trun...



details:   https://anonhg.NetBSD.org/src/rev/0d62078fea84
branches:  netbsd-1-4
changeset: 468827:0d62078fea84
user:      cgd <cgd%NetBSD.org@localhost>
date:      Mon Jun 21 19:20:13 1999 +0000

description:
pull up rev(s) 1.45-1.46 from trunk. (cgd)

diffstat:

 sys/arch/alpha/alpha/trap.c |  13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diffs (41 lines):

diff -r a9debfd4ad1d -r 0d62078fea84 sys/arch/alpha/alpha/trap.c
--- a/sys/arch/alpha/alpha/trap.c       Mon Jun 21 19:19:37 1999 +0000
+++ b/sys/arch/alpha/alpha/trap.c       Mon Jun 21 19:20:13 1999 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: trap.c,v 1.42.2.2 1999/06/18 18:02:11 perry Exp $ */
+/* $NetBSD: trap.c,v 1.42.2.3 1999/06/21 19:20:13 cgd Exp $ */
 
 /*
  * Copyright (c) 1999 Christopher G. Demetriou.  All rights reserved.
@@ -64,7 +64,7 @@
 
 #include <sys/cdefs.h>                 /* RCS ID & Copyright macro defns */
 
-__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.42.2.2 1999/06/18 18:02:11 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.42.2.3 1999/06/21 19:20:13 cgd Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -303,6 +303,13 @@
                 * user has requested that.
                 */
                if (user) {
+#ifdef COMPAT_OSF1
+                       extern struct emul emul_osf1;
+
+                       /* just punt on OSF/1.  XXX THIS IS EVIL */
+                       if (p->p_emul == &emul_osf1) 
+                               goto out;
+#endif
                        i = SIGFPE;
                        ucode =  a0;            /* exception summary */
                        break;
@@ -669,6 +676,8 @@
        case EJUSTRETURN:
                break;
        default:
+               if (p->p_emul->e_errno)
+                       error = p->p_emul->e_errno[error];
                framep->tf_regs[FRAME_V0] = error;
                framep->tf_regs[FRAME_A3] = 1;
                break;



Home | Main Index | Thread Index | Old Index