Module Name: src
Committed By: rillig
Date: Tue Apr 2 20:42:13 UTC 2024
Modified Files:
src/lib/libc/arch/sparc/gen: fpsetround.c
Log Message:
sparc/fpsetround: fix the nearby signed integer overflow as well
Same as for sparc64 a few days ago.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/sparc/gen/fpsetround.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/libc/arch/sparc/gen/fpsetround.c
diff -u src/lib/libc/arch/sparc/gen/fpsetround.c:1.7 src/lib/libc/arch/sparc/gen/fpsetround.c:1.8
--- src/lib/libc/arch/sparc/gen/fpsetround.c:1.7 Tue Apr 2 20:27:44 2024
+++ src/lib/libc/arch/sparc/gen/fpsetround.c Tue Apr 2 20:42:12 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: fpsetround.c,v 1.7 2024/04/02 20:27:44 christos Exp $ */
+/* $NetBSD: fpsetround.c,v 1.8 2024/04/02 20:42:12 rillig Exp $ */
/*
* Written by J.T. Conklin, Apr 10, 1995
@@ -7,7 +7,7 @@
#include <sys/cdefs.h>
#if defined(LIBC_SCCS) && !defined(lint)
-__RCSID("$NetBSD: fpsetround.c,v 1.7 2024/04/02 20:27:44 christos Exp $");
+__RCSID("$NetBSD: fpsetround.c,v 1.8 2024/04/02 20:42:12 rillig Exp $");
#endif /* LIBC_SCCS and not lint */
#include "namespace.h"
@@ -27,8 +27,8 @@ fpsetround(fp_rnd rnd_dir)
__asm("st %%fsr,%0" : "=m" (*&old));
new = old;
- new &= ~(0x03U << 30);
- new |= ((rnd_dir & 0x03) << 30);
+ new &= ~(0x03U << 30);
+ new |= ((rnd_dir & 0x03U) << 30);
__asm("ld %0,%%fsr" : : "m" (*&new));