Module Name: src
Committed By: martin
Date: Fri Aug 11 14:44:19 UTC 2023
Modified Files:
src/distrib/sets/lists/base [netbsd-10]: shl.mi
src/distrib/sets/lists/debug [netbsd-10]: shl.mi
src/lib/libm [netbsd-10]: Makefile shlib_version
src/lib/libm/man [netbsd-10]: math.3 sincos.3
src/lib/libm/src [netbsd-10]: ldbl_dummy.c namespace.h s_llrintl.c
s_lrintl.c
Log Message:
Pull up following revision(s) (requested by riastradh in ticket #320):
lib/libm/src/ldbl_dummy.c: revision 1.3
distrib/sets/lists/debug/shl.mi: revision 1.303
lib/libm/src/ldbl_dummy.c: revision 1.4
lib/libm/src/namespace.h: revision 1.17
lib/libm/src/s_llrintl.c: revision 1.3
lib/libm/Makefile: revision 1.220
lib/libm/src/s_lrintl.c: revision 1.3
lib/libm/man/sincos.3: revision 1.2
lib/libm/man/math.3: revision 1.29
distrib/sets/lists/base/shl.mi: revision 1.946
lib/libm/shlib_version: revision 1.18
libm: Fill in more dummy long double transcendental functions.
This should cover everything from C99.
libm: Need <math.h> for __HAVE_LONG_DOUBLE.
Fixes missing definitions of lrintl, llrintl on various platforms.
Add (newly added): expm1l log1pl log2l lgammal tgammal
so that the library gets the correct symbols defined in it.
libm: Bump minor for new long double transcendental functions.
XXX Still missing: remquol, remainderl.
fix cross references (from Anon Ymous)
Correct history (Brad Smith)
libm: Add missing fma(3) and friends for sh3.
libm: Add dummy remainderl and remquol.
These are pretty bad -- these aren't transcendental functions; not
rocket science to make them correctly rounded -- but let's just make
sure they're available in libm for netbsd-10.
To generate a diff of this commit:
cvs rdiff -u -r1.942.2.2 -r1.942.2.3 src/distrib/sets/lists/base/shl.mi
cvs rdiff -u -r1.298.2.3 -r1.298.2.4 src/distrib/sets/lists/debug/shl.mi
cvs rdiff -u -r1.218 -r1.218.2.1 src/lib/libm/Makefile
cvs rdiff -u -r1.17 -r1.17.14.1 src/lib/libm/shlib_version
cvs rdiff -u -r1.28 -r1.28.14.1 src/lib/libm/man/math.3
cvs rdiff -u -r1.1 -r1.1.2.1 src/lib/libm/man/sincos.3
cvs rdiff -u -r1.2 -r1.2.26.1 src/lib/libm/src/ldbl_dummy.c
cvs rdiff -u -r1.16 -r1.16.2.1 src/lib/libm/src/namespace.h
cvs rdiff -u -r1.2 -r1.2.22.1 src/lib/libm/src/s_llrintl.c \
src/lib/libm/src/s_lrintl.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/sets/lists/base/shl.mi
diff -u src/distrib/sets/lists/base/shl.mi:1.942.2.2 src/distrib/sets/lists/base/shl.mi:1.942.2.3
--- src/distrib/sets/lists/base/shl.mi:1.942.2.2 Fri Aug 11 13:42:53 2023
+++ src/distrib/sets/lists/base/shl.mi Fri Aug 11 14:44:19 2023
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.942.2.2 2023/08/11 13:42:53 martin Exp $
+# $NetBSD: shl.mi,v 1.942.2.3 2023/08/11 14:44:19 martin Exp $
#
# Note: Don't delete entries from here - mark them as "obsolete" instead,
# unless otherwise stated below.
@@ -68,7 +68,7 @@
./lib/liblzma.so.2.0 base-sys-shlib dynamicroot
./lib/libm.so base-sys-shlib dynamicroot
./lib/libm.so.0 base-sys-shlib dynamicroot
-./lib/libm.so.0.12 base-sys-shlib dynamicroot
+./lib/libm.so.0.13 base-sys-shlib dynamicroot
./lib/libnpf.so base-npf-shlib dynamicroot,npf
./lib/libnpf.so.0 base-npf-shlib dynamicroot,npf
./lib/libnpf.so.0.1 base-npf-shlib dynamicroot,npf
@@ -459,7 +459,7 @@
./usr/lib/liblzma.so.2.0 base-sys-shlib compatfile
./usr/lib/libm.so base-sys-shlib compatfile
./usr/lib/libm.so.0 base-sys-shlib compatfile
-./usr/lib/libm.so.0.12 base-sys-shlib compatfile
+./usr/lib/libm.so.0.13 base-sys-shlib compatfile
./usr/lib/libmagic.so base-sys-shlib compatfile
./usr/lib/libmagic.so.8 base-sys-shlib compatfile
./usr/lib/libmagic.so.8.0 base-sys-shlib compatfile
Index: src/distrib/sets/lists/debug/shl.mi
diff -u src/distrib/sets/lists/debug/shl.mi:1.298.2.3 src/distrib/sets/lists/debug/shl.mi:1.298.2.4
--- src/distrib/sets/lists/debug/shl.mi:1.298.2.3 Fri Aug 11 13:42:54 2023
+++ src/distrib/sets/lists/debug/shl.mi Fri Aug 11 14:44:19 2023
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.298.2.3 2023/08/11 13:42:54 martin Exp $
+# $NetBSD: shl.mi,v 1.298.2.4 2023/08/11 14:44:19 martin Exp $
./usr/lib/libbfd_g.a comp-c-debuglib debuglib,compatfile,binutils
./usr/libdata/debug/lib base-sys-usr debug,dynamicroot,compatdir
./usr/libdata/debug/lib/libavl.so.0.0.debug comp-zfs-debug debug,dynamicroot,zfs
@@ -19,7 +19,7 @@
./usr/libdata/debug/lib/libkvm.so.6.0.debug comp-sys-debug debug,dynamicroot
./usr/libdata/debug/lib/liblzf.so.1.0.debug comp-sys-debug debug,dynamicroot
./usr/libdata/debug/lib/liblzma.so.2.0.debug comp-sys-debug debug,dynamicroot
-./usr/libdata/debug/lib/libm.so.0.12.debug comp-sys-debug debug,dynamicroot
+./usr/libdata/debug/lib/libm.so.0.13.debug comp-sys-debug debug,dynamicroot
./usr/libdata/debug/lib/libnpf.so.0.1.debug comp-sys-debug debug,dynamicroot
./usr/libdata/debug/lib/libnvpair.so.0.0.debug comp-zfs-debug debug,dynamicroot,zfs
./usr/libdata/debug/lib/libpcap.so.8.1.debug comp-sys-debug debug,dynamicroot
@@ -165,7 +165,7 @@
./usr/libdata/debug/usr/lib/liblwres.so.8.5.debug comp-obsolete obsolete
./usr/libdata/debug/usr/lib/liblzf.so.1.0.debug comp-sys-debug debug,compatfile
./usr/libdata/debug/usr/lib/liblzma.so.2.0.debug comp-sys-debug debug,compatfile
-./usr/libdata/debug/usr/lib/libm.so.0.12.debug comp-sys-debug debug,compatfile
+./usr/libdata/debug/usr/lib/libm.so.0.13.debug comp-sys-debug debug,compatfile
./usr/libdata/debug/usr/lib/libmagic.so.8.0.debug comp-sys-debug debug,compatfile
./usr/libdata/debug/usr/lib/libmenu.so.6.0.debug comp-sys-debug debug,obsolete,compatfile
./usr/libdata/debug/usr/lib/libmenu.so.7.0.debug comp-sys-debug debug,obsolete,compatfile
Index: src/lib/libm/Makefile
diff -u src/lib/libm/Makefile:1.218 src/lib/libm/Makefile:1.218.2.1
--- src/lib/libm/Makefile:1.218 Sat Aug 27 09:56:21 2022
+++ src/lib/libm/Makefile Fri Aug 11 14:44:19 2023
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.218 2022/08/27 09:56:21 christos Exp $
+# $NetBSD: Makefile,v 1.218.2.1 2023/08/11 14:44:19 martin Exp $
#
# @(#)Makefile 5.1beta 93/09/24
#
@@ -212,6 +212,7 @@ COMMON_SRCS+= s_nexttoward.c
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS += fenv.c
.endif
+COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
.endif
# End of list of CPU tests
Index: src/lib/libm/shlib_version
diff -u src/lib/libm/shlib_version:1.17 src/lib/libm/shlib_version:1.17.14.1
--- src/lib/libm/shlib_version:1.17 Tue Sep 26 18:03:30 2017
+++ src/lib/libm/shlib_version Fri Aug 11 14:44:19 2023
@@ -1,8 +1,8 @@
-# $NetBSD: shlib_version,v 1.17 2017/09/26 18:03:30 maya Exp $
+# $NetBSD: shlib_version,v 1.17.14.1 2023/08/11 14:44:19 martin Exp $
# Remember to update distrib/sets/lists/base/shl.* when changing
#
# things we wish to do on next major version bump:
# - remove compatibility cabs
# - not provide isinff / isnanf (only provide __isinff version)
major=0
-minor=12
+minor=13
Index: src/lib/libm/man/math.3
diff -u src/lib/libm/man/math.3:1.28 src/lib/libm/man/math.3:1.28.14.1
--- src/lib/libm/man/math.3:1.28 Thu Sep 28 11:18:41 2017
+++ src/lib/libm/man/math.3 Fri Aug 11 14:44:19 2023
@@ -1,4 +1,4 @@
-.\" $NetBSD: math.3,v 1.28 2017/09/28 11:18:41 maya Exp $
+.\" $NetBSD: math.3,v 1.28.14.1 2023/08/11 14:44:19 martin Exp $
.\"
.\" Copyright (c) 1985 Regents of the University of California.
.\" All rights reserved.
@@ -29,7 +29,7 @@
.\"
.\" from: @(#)math.3 6.10 (Berkeley) 5/6/91
.\"
-.Dd September 28, 2017
+.Dd May 7, 2023
.Dt MATH 3
.Os
.Sh NAME
@@ -66,10 +66,10 @@ Declarations for these functions may be
.It exp2 Ta Xr exp2 3 Ta base 2 exponential Ta ???
.It expm1 Ta Xr expm1 3 Ta exp(x)\-1 Ta 1
.It fabs Ta Xr fabs 3 Ta absolute value Ta 0
-.It fdim Ta Xr erf 3 Ta positive difference Ta ???
+.It fdim Ta Xr fdim 3 Ta positive difference Ta ???
.It finite Ta Xr finite 3 Ta test for finity Ta 0
.It floor Ta Xr floor 3 Ta integer no greater than Ta 0
-.It fma Ta Xr fmod 3 Ta fused multiply-add Ta ???
+.It fma Ta Xr fma 3 Ta fused multiply-add Ta ???
.It fmax Ta Xr fmax 3 Ta maximum Ta 0
.It fmin Ta Xr fmin 3 Ta minimum Ta 0
.It fmod Ta Xr fmod 3 Ta remainder Ta ???
Index: src/lib/libm/man/sincos.3
diff -u src/lib/libm/man/sincos.3:1.1 src/lib/libm/man/sincos.3:1.1.2.1
--- src/lib/libm/man/sincos.3:1.1 Sat Aug 27 08:31:59 2022
+++ src/lib/libm/man/sincos.3 Fri Aug 11 14:44:19 2023
@@ -22,9 +22,9 @@
.\" SUCH DAMAGE.
.\"
.\" $FreeBSD: head/lib/msun/man/sincos.3 366583 2020-10-09 19:12:44Z gbe $
-.\" $NetBSD: sincos.3,v 1.1 2022/08/27 08:31:59 christos Exp $
+.\" $NetBSD: sincos.3,v 1.1.2.1 2023/08/11 14:44:19 martin Exp $
.\"
-.Dd March 12, 2011
+.Dd June 11, 2023
.Dt SINCOS 3
.Os
.Sh NAME
@@ -77,7 +77,7 @@ are assigned the values of sine and cosi
.Xr sin 3 ,
.Sh HISTORY
These functions were added to
-.Fx 9.0
+.Fx 11.2
and
.Nx 10.0
to aid in writing various complex function contained in
Index: src/lib/libm/src/ldbl_dummy.c
diff -u src/lib/libm/src/ldbl_dummy.c:1.2 src/lib/libm/src/ldbl_dummy.c:1.2.26.1
--- src/lib/libm/src/ldbl_dummy.c:1.2 Thu Nov 13 21:43:27 2014
+++ src/lib/libm/src/ldbl_dummy.c Fri Aug 11 14:44:19 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ldbl_dummy.c,v 1.2 2014/11/13 21:43:27 christos Exp $ */
+/* $NetBSD: ldbl_dummy.c,v 1.2.26.1 2023/08/11 14:44:19 martin Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: ldbl_dummy.c,v 1.2 2014/11/13 21:43:27 christos Exp $");
+__RCSID("$NetBSD: ldbl_dummy.c,v 1.2.26.1 2023/08/11 14:44:19 martin Exp $");
#include "namespace.h"
#include <math.h>
@@ -43,8 +43,11 @@ __weak_alias(atan2l, _atan2l)
__weak_alias(hypotl, _hypotl)
__weak_alias(logl, _logl)
__weak_alias(log10l, _log10l)
+__weak_alias(log2l, _log2l)
+__weak_alias(log1pl, _log1pl)
__weak_alias(expl, _expl)
__weak_alias(exp2l, _exp2l)
+__weak_alias(expm1l, _expm1l)
__weak_alias(powl, _powl)
__weak_alias(cosl, _cosl)
__weak_alias(sinl, _sinl)
@@ -60,6 +63,8 @@ __weak_alias(asinhl, _asinhl)
__weak_alias(atanhl, _atanhl)
__weak_alias(erfl, _erfl)
__weak_alias(erfcl, _erfcl)
+__weak_alias(lgammal, _lgammal)
+__weak_alias(tgammal, _tgammal)
long double
atan2l(long double y, long double x)
@@ -86,6 +91,18 @@ log10l(long double x)
}
long double
+log2l(long double x)
+{
+ return log2(x);
+}
+
+long double
+log1pl(long double x)
+{
+ return log1p(x);
+}
+
+long double
expl(long double x)
{
return exp(x);
@@ -98,6 +115,12 @@ exp2l(long double x)
}
long double
+expm1l(long double x)
+{
+ return expm1(x);
+}
+
+long double
powl(long double x, long double y)
{
return pow(x, y);
@@ -187,3 +210,27 @@ erfcl(long double x)
{
return erfc(x);
}
+
+long double
+lgammal(long double x)
+{
+ return lgamma(x);
+}
+
+long double
+tgammal(long double x)
+{
+ return tgamma(x);
+}
+
+long double
+remainderl(long double x, long double y)
+{
+ return remainder(x, y);
+}
+
+long double
+remquol(long double x, long double y, int *quo)
+{
+ return remquo(x, y, quo);
+}
Index: src/lib/libm/src/namespace.h
diff -u src/lib/libm/src/namespace.h:1.16 src/lib/libm/src/namespace.h:1.16.2.1
--- src/lib/libm/src/namespace.h:1.16 Sat Aug 27 08:31:59 2022
+++ src/lib/libm/src/namespace.h Fri Aug 11 14:44:19 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: namespace.h,v 1.16 2022/08/27 08:31:59 christos Exp $ */
+/* $NetBSD: namespace.h,v 1.16.2.1 2023/08/11 14:44:19 martin Exp $ */
#define atan2 _atan2
#define atan2f _atan2f
@@ -10,6 +10,7 @@
#define exp _exp
#define expf _expf
#define expl _expl
+#define expm1l _expm1l
#define log _log
#define logf _logf
#define logl _logl
@@ -73,9 +74,14 @@
#define tanhl _tanhl
#define atanhl _atanhl
#define log10l _log10l
+#define log1pl _log1pl
+#define log2l _log2l
-#define erfl _erfl
-#define erfcl _erfcl
+#define erfl _erfl
+#define erfcl _erfcl
+
+#define lgammal _lgammal
+#define tgammal _tgammal
#define feclearexcept _feclearexcept
#define fegetenv _fegetenv
Index: src/lib/libm/src/s_llrintl.c
diff -u src/lib/libm/src/s_llrintl.c:1.2 src/lib/libm/src/s_llrintl.c:1.2.22.1
--- src/lib/libm/src/s_llrintl.c:1.2 Sun May 7 11:29:21 2017
+++ src/lib/libm/src/s_llrintl.c Fri Aug 11 14:44:19 2023
@@ -2,9 +2,11 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: head/lib/msun/src/s_llrintl.c 175309 2008-01-14 02:12:07Z das $");
#else
-__RCSID("$NetBSD: s_llrintl.c,v 1.2 2017/05/07 11:29:21 martin Exp $");
+__RCSID("$NetBSD: s_llrintl.c,v 1.2.22.1 2023/08/11 14:44:19 martin Exp $");
#endif
+#include <math.h>
+
#ifdef __HAVE_LONG_DOUBLE
#define stype long double
#define roundit rintl
Index: src/lib/libm/src/s_lrintl.c
diff -u src/lib/libm/src/s_lrintl.c:1.2 src/lib/libm/src/s_lrintl.c:1.2.22.1
--- src/lib/libm/src/s_lrintl.c:1.2 Sun May 7 11:29:21 2017
+++ src/lib/libm/src/s_lrintl.c Fri Aug 11 14:44:19 2023
@@ -2,9 +2,11 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: head/lib/msun/src/s_lrintl.c 175309 2008-01-14 02:12:07Z das $");
#else
-__RCSID("$NetBSD: s_lrintl.c,v 1.2 2017/05/07 11:29:21 martin Exp $");
+__RCSID("$NetBSD: s_lrintl.c,v 1.2.22.1 2023/08/11 14:44:19 martin Exp $");
#endif
+#include <math.h>
+
#ifdef __HAVE_LONG_DOUBLE
#define stype long double
#define roundit rintl