Module Name:    src
Committed By:   drochner
Date:           Fri Apr 23 19:17:07 UTC 2010

Modified Files:
        src/lib/libm: Makefile
        src/lib/libm/arch/i387: s_scalbn.S s_scalbnf.S
        src/lib/libm/arch/mc68881: s_scalbn.S
        src/lib/libm/src: e_pow.c e_powf.c e_scalb.c e_scalbf.c k_rem_pio2.c
            k_rem_pio2f.c namespace.h s_ldexp.c s_ldexpf.c s_scalbn.c
            s_scalbnf.c

Log Message:
-build ldexp/frexp/modf locally again rather than relying on libc
 reaching over, to get things into a sane state,
-do the usual namespace protection game with scalbn(f) because it
 is used internally
(more symbol renamings are necessary)

The weak_alias change for mc68881 is untested.


To generate a diff of this commit:
cvs rdiff -u -r1.93 -r1.94 src/lib/libm/Makefile
cvs rdiff -u -r1.8 -r1.9 src/lib/libm/arch/i387/s_scalbn.S
cvs rdiff -u -r1.7 -r1.8 src/lib/libm/arch/i387/s_scalbnf.S
cvs rdiff -u -r1.7 -r1.8 src/lib/libm/arch/mc68881/s_scalbn.S
cvs rdiff -u -r1.15 -r1.16 src/lib/libm/src/e_pow.c
cvs rdiff -u -r1.14 -r1.15 src/lib/libm/src/e_powf.c
cvs rdiff -u -r1.9 -r1.10 src/lib/libm/src/e_scalb.c
cvs rdiff -u -r1.6 -r1.7 src/lib/libm/src/e_scalbf.c
cvs rdiff -u -r1.11 -r1.12 src/lib/libm/src/k_rem_pio2.c
cvs rdiff -u -r1.7 -r1.8 src/lib/libm/src/k_rem_pio2f.c \
    src/lib/libm/src/s_ldexpf.c
cvs rdiff -u -r1.2 -r1.3 src/lib/libm/src/namespace.h
cvs rdiff -u -r1.10 -r1.11 src/lib/libm/src/s_ldexp.c
cvs rdiff -u -r1.13 -r1.14 src/lib/libm/src/s_scalbn.c
cvs rdiff -u -r1.8 -r1.9 src/lib/libm/src/s_scalbnf.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/libm/Makefile
diff -u src/lib/libm/Makefile:1.93 src/lib/libm/Makefile:1.94
--- src/lib/libm/Makefile:1.93	Mon Mar 29 06:59:42 2010
+++ src/lib/libm/Makefile	Fri Apr 23 19:17:07 2010
@@ -1,4 +1,4 @@
-#  $NetBSD: Makefile,v 1.93 2010/03/29 06:59:42 mrg Exp $
+#  $NetBSD: Makefile,v 1.94 2010/04/23 19:17:07 drochner Exp $
 #
 #  @(#)Makefile 5.1beta 93/09/24
 #
@@ -137,17 +137,9 @@
 	w_pow.c w_powf.c w_remainder.c w_remainderf.c w_scalb.c w_scalbf.c \
 	w_sinh.c w_sinhf.c w_sqrt.c w_sqrtf.c \
 	lrint.c lrintf.c llrint.c llrintf.c lround.c lroundf.c llround.c \
-	llroundf.c \
+	llroundf.c s_frexp.c s_ldexp.c s_modf.c \
 	s_fmax.c s_fmaxf.c s_fmaxl.c s_fmin.c s_fminf.c s_fminl.c s_fdim.c
 
-#
-# Add these for machines which don't have compatibility functions in libc,
-# since they appeared later than they became libc compatibility.
-#
-.if (${MACHINE_ARCH} == "powerpc64")
-COMMON_SRCS += s_frexp.c s_ldexp.c s_modf.c
-.endif
-
 .PATH:	${.CURDIR}/compat
 COMMON_SRCS+= compat_cabs.c compat_cabsf.c
 # XXX our compatibility cabs() is different!

Index: src/lib/libm/arch/i387/s_scalbn.S
diff -u src/lib/libm/arch/i387/s_scalbn.S:1.8 src/lib/libm/arch/i387/s_scalbn.S:1.9
--- src/lib/libm/arch/i387/s_scalbn.S:1.8	Tue Mar 21 11:35:21 2006
+++ src/lib/libm/arch/i387/s_scalbn.S	Fri Apr 23 19:17:07 2010
@@ -5,9 +5,13 @@
 
 #include <machine/asm.h>
 
-RCSID("$NetBSD: s_scalbn.S,v 1.8 2006/03/21 11:35:21 drochner Exp $")
+RCSID("$NetBSD: s_scalbn.S,v 1.9 2010/04/23 19:17:07 drochner Exp $")
 
-ENTRY(scalbn)
+#ifdef WEAK_ALIAS
+WEAK_ALIAS(scalbn,_scalbn)
+#endif
+
+ENTRY(_scalbn)
 #ifdef __x86_64__
 	movl %edi,-12(%rsp)
 	fildl -12(%rsp)

Index: src/lib/libm/arch/i387/s_scalbnf.S
diff -u src/lib/libm/arch/i387/s_scalbnf.S:1.7 src/lib/libm/arch/i387/s_scalbnf.S:1.8
--- src/lib/libm/arch/i387/s_scalbnf.S:1.7	Tue Mar 21 11:35:21 2006
+++ src/lib/libm/arch/i387/s_scalbnf.S	Fri Apr 23 19:17:07 2010
@@ -5,9 +5,13 @@
 
 #include <machine/asm.h>
 
-RCSID("$NetBSD: s_scalbnf.S,v 1.7 2006/03/21 11:35:21 drochner Exp $")
+RCSID("$NetBSD: s_scalbnf.S,v 1.8 2010/04/23 19:17:07 drochner Exp $")
 
-ENTRY(scalbnf)
+#ifdef WEAK_ALIAS
+WEAK_ALIAS(scalbnf,_scalbnf)
+#endif
+
+ENTRY(_scalbnf)
 #ifdef __x86_64__
 	movl %edi,-8(%rsp)
 	fildl -8(%rsp)

Index: src/lib/libm/arch/mc68881/s_scalbn.S
diff -u src/lib/libm/arch/mc68881/s_scalbn.S:1.7 src/lib/libm/arch/mc68881/s_scalbn.S:1.8
--- src/lib/libm/arch/mc68881/s_scalbn.S:1.7	Thu Aug  7 16:44:43 2003
+++ src/lib/libm/arch/mc68881/s_scalbn.S	Fri Apr 23 19:17:07 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: s_scalbn.S,v 1.7 2003/08/07 16:44:43 agc Exp $	*/
+/*	$NetBSD: s_scalbn.S,v 1.8 2010/04/23 19:17:07 drochner Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -38,11 +38,15 @@
 ;_sccsid:
 ;.asciz	"from: @(#)support.s	5.2 (Berkeley) 5/17/90"
 
-RCSID("$NetBSD: s_scalbn.S,v 1.7 2003/08/07 16:44:43 agc Exp $")
+RCSID("$NetBSD: s_scalbn.S,v 1.8 2010/04/23 19:17:07 drochner Exp $")
+
+#ifdef WEAK_ALIAS
+WEAK_ALIAS(scalbn,_scalbn)
+#endif
 
 | scalbn(x, N)
 | returns  x * (2**N), for integer values N.
-ENTRY(scalbn)
+ENTRY(_scalbn)
 	fmoved	%sp@(4),%fp0
 	fscalel	%sp@(12),%fp0
 #ifndef __SVR4_ABI__

Index: src/lib/libm/src/e_pow.c
diff -u src/lib/libm/src/e_pow.c:1.15 src/lib/libm/src/e_pow.c:1.16
--- src/lib/libm/src/e_pow.c:1.15	Mon Jan 19 06:41:13 2009
+++ src/lib/libm/src/e_pow.c	Fri Apr 23 19:17:07 2010
@@ -12,7 +12,7 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: e_pow.c,v 1.15 2009/01/19 06:41:13 lukem Exp $");
+__RCSID("$NetBSD: e_pow.c,v 1.16 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
 /* __ieee754_pow(x,y) return x**y
@@ -60,6 +60,7 @@
  * to produce the hexadecimal values shown.
  */
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 

Index: src/lib/libm/src/e_powf.c
diff -u src/lib/libm/src/e_powf.c:1.14 src/lib/libm/src/e_powf.c:1.15
--- src/lib/libm/src/e_powf.c:1.14	Mon Jan 19 05:59:06 2009
+++ src/lib/libm/src/e_powf.c	Fri Apr 23 19:17:07 2010
@@ -15,9 +15,10 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: e_powf.c,v 1.14 2009/01/19 05:59:06 lukem Exp $");
+__RCSID("$NetBSD: e_powf.c,v 1.15 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 

Index: src/lib/libm/src/e_scalb.c
diff -u src/lib/libm/src/e_scalb.c:1.9 src/lib/libm/src/e_scalb.c:1.10
--- src/lib/libm/src/e_scalb.c:1.9	Sun May 26 22:01:52 2002
+++ src/lib/libm/src/e_scalb.c	Fri Apr 23 19:17:07 2010
@@ -12,7 +12,7 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: e_scalb.c,v 1.9 2002/05/26 22:01:52 wiz Exp $");
+__RCSID("$NetBSD: e_scalb.c,v 1.10 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
 /*
@@ -21,6 +21,7 @@
  * should use scalbn() instead.
  */
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 

Index: src/lib/libm/src/e_scalbf.c
diff -u src/lib/libm/src/e_scalbf.c:1.6 src/lib/libm/src/e_scalbf.c:1.7
--- src/lib/libm/src/e_scalbf.c:1.6	Sun May 26 22:01:52 2002
+++ src/lib/libm/src/e_scalbf.c	Fri Apr 23 19:17:07 2010
@@ -15,9 +15,10 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: e_scalbf.c,v 1.6 2002/05/26 22:01:52 wiz Exp $");
+__RCSID("$NetBSD: e_scalbf.c,v 1.7 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 

Index: src/lib/libm/src/k_rem_pio2.c
diff -u src/lib/libm/src/k_rem_pio2.c:1.11 src/lib/libm/src/k_rem_pio2.c:1.12
--- src/lib/libm/src/k_rem_pio2.c:1.11	Sat Jan  4 23:43:03 2003
+++ src/lib/libm/src/k_rem_pio2.c	Fri Apr 23 19:17:07 2010
@@ -12,7 +12,7 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: k_rem_pio2.c,v 1.11 2003/01/04 23:43:03 wiz Exp $");
+__RCSID("$NetBSD: k_rem_pio2.c,v 1.12 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
 /*
@@ -131,6 +131,7 @@
  * to produce the hexadecimal values shown.
  */
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 

Index: src/lib/libm/src/k_rem_pio2f.c
diff -u src/lib/libm/src/k_rem_pio2f.c:1.7 src/lib/libm/src/k_rem_pio2f.c:1.8
--- src/lib/libm/src/k_rem_pio2f.c:1.7	Sun May 26 22:01:53 2002
+++ src/lib/libm/src/k_rem_pio2f.c	Fri Apr 23 19:17:07 2010
@@ -15,9 +15,10 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: k_rem_pio2f.c,v 1.7 2002/05/26 22:01:53 wiz Exp $");
+__RCSID("$NetBSD: k_rem_pio2f.c,v 1.8 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 
Index: src/lib/libm/src/s_ldexpf.c
diff -u src/lib/libm/src/s_ldexpf.c:1.7 src/lib/libm/src/s_ldexpf.c:1.8
--- src/lib/libm/src/s_ldexpf.c:1.7	Fri Apr 25 22:21:53 2008
+++ src/lib/libm/src/s_ldexpf.c	Fri Apr 23 19:17:07 2010
@@ -15,9 +15,10 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: s_ldexpf.c,v 1.7 2008/04/25 22:21:53 christos Exp $");
+__RCSID("$NetBSD: s_ldexpf.c,v 1.8 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 #include <errno.h>

Index: src/lib/libm/src/namespace.h
diff -u src/lib/libm/src/namespace.h:1.2 src/lib/libm/src/namespace.h:1.3
--- src/lib/libm/src/namespace.h:1.2	Mon Aug 20 16:01:39 2007
+++ src/lib/libm/src/namespace.h	Fri Apr 23 19:17:07 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: namespace.h,v 1.2 2007/08/20 16:01:39 drochner Exp $ */
+/* $NetBSD: namespace.h,v 1.3 2010/04/23 19:17:07 drochner Exp $ */
 
 #define atan2 _atan2
 #define atan2f _atan2f
@@ -15,6 +15,8 @@
 #define sinf _sinf
 #define cos _cos
 #define cosf _cosf
+#define finite _finite
+#define finitef _finitef
 #endif /* notyet */
 #define sinh _sinh
 #define sinhf _sinhf
@@ -27,3 +29,6 @@
 #define casinf _casinf
 #define catan _catan
 #define catanf _catanf
+
+#define scalbn _scalbn
+#define scalbnf _scalbnf

Index: src/lib/libm/src/s_ldexp.c
diff -u src/lib/libm/src/s_ldexp.c:1.10 src/lib/libm/src/s_ldexp.c:1.11
--- src/lib/libm/src/s_ldexp.c:1.10	Fri Apr 25 22:21:53 2008
+++ src/lib/libm/src/s_ldexp.c	Fri Apr 23 19:17:07 2010
@@ -12,9 +12,10 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: s_ldexp.c,v 1.10 2008/04/25 22:21:53 christos Exp $");
+__RCSID("$NetBSD: s_ldexp.c,v 1.11 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 #include <errno.h>

Index: src/lib/libm/src/s_scalbn.c
diff -u src/lib/libm/src/s_scalbn.c:1.13 src/lib/libm/src/s_scalbn.c:1.14
--- src/lib/libm/src/s_scalbn.c:1.13	Sun Sep 28 18:54:55 2008
+++ src/lib/libm/src/s_scalbn.c	Fri Apr 23 19:17:07 2010
@@ -12,7 +12,7 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: s_scalbn.c,v 1.13 2008/09/28 18:54:55 christos Exp $");
+__RCSID("$NetBSD: s_scalbn.c,v 1.14 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
 /*
@@ -22,9 +22,14 @@
  * exponentiation or a multiplication.
  */
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 
+#ifdef __weak_alias
+__weak_alias(scalbn, _scalbn)
+#endif
+
 static const double
 two54   =  1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */
 twom54  =  5.55111512312578270212e-17, /* 0x3C900000, 0x00000000 */

Index: src/lib/libm/src/s_scalbnf.c
diff -u src/lib/libm/src/s_scalbnf.c:1.8 src/lib/libm/src/s_scalbnf.c:1.9
--- src/lib/libm/src/s_scalbnf.c:1.8	Sun May 26 22:01:58 2002
+++ src/lib/libm/src/s_scalbnf.c	Fri Apr 23 19:17:07 2010
@@ -15,12 +15,17 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBM_SCCS) && !defined(lint)
-__RCSID("$NetBSD: s_scalbnf.c,v 1.8 2002/05/26 22:01:58 wiz Exp $");
+__RCSID("$NetBSD: s_scalbnf.c,v 1.9 2010/04/23 19:17:07 drochner Exp $");
 #endif
 
+#include "namespace.h"
 #include "math.h"
 #include "math_private.h"
 
+#ifdef __weak_alias
+__weak_alias(scalbnf, _scalbnf)
+#endif
+
 static const float
 two25   =  3.355443200e+07,	/* 0x4c000000 */
 twom25  =  2.9802322388e-08,	/* 0x33000000 */

Reply via email to