Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/lib/libm two disgusting hacks:
details: https://anonhg.NetBSD.org/src/rev/9d25cdcff413
branches: trunk
changeset: 757010:9d25cdcff413
user: drochner <drochner%NetBSD.org@localhost>
date: Tue Aug 10 17:53:08 2010 +0000
description:
two disgusting hacks:
-mk/bsd.lib.mk picks up a .S asm file behind our back (did it do so
always?). s_modf.S is incorrect; I'm undecided whether it makes sense
to fix it, so add a stupid rule to enforce the .c file to be used.
-on i386, s_tanh.c gets miscompiled. It works with -O0, so add
COPTS for exactly that file.
diffstat:
lib/libm/Makefile | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diffs (30 lines):
diff -r 21b779a64116 -r 9d25cdcff413 lib/libm/Makefile
--- a/lib/libm/Makefile Tue Aug 10 13:52:13 2010 +0000
+++ b/lib/libm/Makefile Tue Aug 10 17:53:08 2010 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.96 2010/08/07 18:12:46 wiz Exp $
+# $NetBSD: Makefile,v 1.97 2010/08/10 17:53:08 drochner Exp $
#
# @(#)Makefile 5.1beta 93/09/24
#
@@ -66,6 +66,8 @@
s_ilogbf.S s_log1p.S s_log1pf.S s_logb.S s_logbf.S s_rint.S \
s_rintf.S s_scalbn.S s_scalbnf.S s_significand.S \
s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S lrint.S
+# do not pick up the i387 asm version, it is incorrect
+s_modf.o s_modf.pico s_modf.po s_modf.d: s_modf.c
.if (${MACHINE_ARCH} == "i386")
SUBDIR=arch/i387
@@ -189,6 +191,11 @@
n_support.S
.endif
+.if (${MACHINE_ARCH} == "i386")
+# XXX this gets miscompiled. There should be a better fix.
+COPTS.s_tanh.c+= -O0
+.endif
+
MAN+= acos.3 acosh.3 asin.3 asinh.3 atan.3 atan2.3 atanh.3 ceil.3 \
cos.3 cosh.3 erf.3 exp.3 fabs.3 floor.3 fmod.3 frexp.3 hypot.3 ieee.3 \
ieee_test.3 isinff.3 j0.3 ldexp.3 lgamma.3 lrint.3 \
Home |
Main Index |
Thread Index |
Old Index