Module Name: src Committed By: rin Date: Tue Sep 6 23:05:52 UTC 2022
Modified Files: src/sys/arch/powerpc/fpu: fpu_mul.c Log Message: fpu_mul(): Do not multiply sign bits for NaN. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/sys/arch/powerpc/fpu/fpu_mul.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/powerpc/fpu/fpu_mul.c diff -u src/sys/arch/powerpc/fpu/fpu_mul.c:1.7 src/sys/arch/powerpc/fpu/fpu_mul.c:1.8 --- src/sys/arch/powerpc/fpu/fpu_mul.c:1.7 Tue Sep 6 23:04:08 2022 +++ src/sys/arch/powerpc/fpu/fpu_mul.c Tue Sep 6 23:05:52 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: fpu_mul.c,v 1.7 2022/09/06 23:04:08 rin Exp $ */ +/* $NetBSD: fpu_mul.c,v 1.8 2022/09/06 23:05:52 rin Exp $ */ /* * Copyright (c) 1992, 1993 @@ -45,7 +45,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: fpu_mul.c,v 1.7 2022/09/06 23:04:08 rin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: fpu_mul.c,v 1.8 2022/09/06 23:05:52 rin Exp $"); #include <sys/types.h> #if defined(DIAGNOSTIC)||defined(DEBUG) @@ -135,8 +135,7 @@ fpu_mul(struct fpemu *fe) if (ISSNAN(x) || ISSNAN(y)) fe->fe_cx |= FPSCR_VXSNAN; if (ISNAN(x)) - SWAP(x, y); - y->fp_sign ^= x->fp_sign; + y = x; DUMPFPN(FPE_REG, y); return (y); }