Module Name: src
Committed By: jakllsch
Date: Sun Dec 4 22:35:15 UTC 2022
Modified Files:
src/doc: HACKS
src/lib/libc/gdtoa: Makefile.inc
Log Message:
On VAX, compile gdtoa/misc.c at -O0 to avoid incorrect machine code
resulting in some doubles printing as garbage.
To generate a diff of this commit:
cvs rdiff -u -r1.231 -r1.232 src/doc/HACKS
cvs rdiff -u -r1.11 -r1.12 src/lib/libc/gdtoa/Makefile.inc
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/doc/HACKS
diff -u src/doc/HACKS:1.231 src/doc/HACKS:1.232
--- src/doc/HACKS:1.231 Mon Sep 12 08:11:51 2022
+++ src/doc/HACKS Sun Dec 4 22:35:15 2022
@@ -1,4 +1,4 @@
-# $NetBSD: HACKS,v 1.231 2022/09/12 08:11:51 rin Exp $
+# $NetBSD: HACKS,v 1.232 2022/12/04 22:35:15 jakllsch Exp $
#
# This file is intended to document workarounds for currently unsolved
# (mostly) compiler bugs.
@@ -592,6 +592,14 @@ port vax
unitialized with -O1, works with -O0
kcah
+ hack gdtoa/misc.c miscompile
+ cdate Sun Dec 4 22:27:26 UTC 2022
+ who jakllsch
+ file src/lib/libc/gdtoa/Makefile.inc : 1.11
+ descr
+ some doubles print as garbage if gdtoa/misc.c isn't compiled at -O0
+ kcah
+
port arm
hack gcc-unsigned-compare
Index: src/lib/libc/gdtoa/Makefile.inc
diff -u src/lib/libc/gdtoa/Makefile.inc:1.11 src/lib/libc/gdtoa/Makefile.inc:1.12
--- src/lib/libc/gdtoa/Makefile.inc:1.11 Thu Aug 1 02:06:31 2019
+++ src/lib/libc/gdtoa/Makefile.inc Sun Dec 4 22:35:15 2022
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.11 2019/08/01 02:06:31 riastradh Exp $
+# $NetBSD: Makefile.inc,v 1.12 2022/12/04 22:35:15 jakllsch Exp $
# gdtoa sources
.PATH: ${.CURDIR}/gdtoa
@@ -44,3 +44,10 @@ SRCS+= dmisc.c \
.if ${MACHINE_ARCH} != "vax"
SRCS+= strtord.c
.endif
+
+# XXX revisit with newer GCC.
+# Ensure numbers like 0xffff319f5fa95963 print correctly
+# ("999999999999999.98", not garbage like "?A>C>@>C:BA;A><.:<")
+.if ${MACHINE_ARCH} == "vax" && defined(HAVE_GCC)
+COPTS.misc.c+= -O0
+.endif