Module Name: src Committed By: joerg Date: Fri Nov 27 13:45:17 UTC 2015
Modified Files: src/sys/arch/sparc/sparc: emul.c Log Message: Remove shifts of the PSR constants before applying to the trap frame. Oring 0 doesn't do anything useful. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/sparc/sparc/emul.c 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/sparc/sparc/emul.c diff -u src/sys/arch/sparc/sparc/emul.c:1.17 src/sys/arch/sparc/sparc/emul.c:1.18 --- src/sys/arch/sparc/sparc/emul.c:1.17 Tue May 1 09:40:15 2012 +++ src/sys/arch/sparc/sparc/emul.c Fri Nov 27 13:45:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: emul.c,v 1.17 2012/05/01 09:40:15 martin Exp $ */ +/* $NetBSD: emul.c,v 1.18 2015/11/27 13:45:17 joerg Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.17 2012/05/01 09:40:15 martin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.18 2015/11/27 13:45:17 joerg Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -190,17 +190,17 @@ muldiv(struct trapframe *tf, tf->tf_psr &= ~PSR_ICC; if (*rd == 0) - tf->tf_psr |= PSR_Z << 20; + tf->tf_psr |= PSR_Z; else { if (op.bits.sgn && *rd < 0) - tf->tf_psr |= PSR_N << 20; + tf->tf_psr |= PSR_N; if (op.bits.div) { if (*rd * *rs2 != *rs1) - tf->tf_psr |= PSR_O << 20; + tf->tf_psr |= PSR_O; } else { if (*rd / *rs2 != *rs1) - tf->tf_psr |= PSR_O << 20; + tf->tf_psr |= PSR_O; } } }