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

Reply via email to