2007-05-17 Yaakov Selkowitz <yselkowitz <at> users.sourceforge.net>
* libm/common/Makefile.am: Add support for exp10, exp10f,
        pow10, and pow10f functions.
        * libm/common/Makefile.in: Regenerated.
        * libm/common/s_pow10.c: New file.
        * libm/common/sf_pow10.c: Ditto.
        * libm/common/s_exp10.c: Ditto.
        * libm/common/sf_exp10.c: Ditto.
        * libc/include/math.h [!pow10]: New pow10 prototype.
        [!pow10f]: New pow10f prototype.
        [!exp10]: New exp10 prototype.
        [!exp10f]: New exp10f prototype.
			
			
This commit is contained in:
		| @@ -1,3 +1,17 @@ | |||||||
|  | 2007-05-17  Yaakov Selkowitz  <yselkowitz <at> users.sourceforge.net>  | ||||||
|  |  | ||||||
|  | 	* libm/common/Makefile.am: Add support for exp10, exp10f, | ||||||
|  | 	pow10, and pow10f functions. | ||||||
|  | 	* libm/common/Makefile.in: Regenerated. | ||||||
|  | 	* libm/common/s_pow10.c: New file. | ||||||
|  | 	* libm/common/sf_pow10.c: Ditto. | ||||||
|  | 	* libm/common/s_exp10.c: Ditto. | ||||||
|  | 	* libm/common/sf_exp10.c: Ditto. | ||||||
|  | 	* libc/include/math.h [!pow10]: New pow10 prototype. | ||||||
|  | 	[!pow10f]: New pow10f prototype. | ||||||
|  | 	[!exp10]: New exp10 prototype. | ||||||
|  | 	[!exp10f]: New exp10f prototype. | ||||||
|  |  | ||||||
| 2007-05-17  Charles Wilson  <cygwin@...> | 2007-05-17  Charles Wilson  <cygwin@...> | ||||||
|  |  | ||||||
| 	* stdio/tmpfile.c: Include <sys/stat.h>. | 	* stdio/tmpfile.c: Include <sys/stat.h>. | ||||||
|   | |||||||
| @@ -233,6 +233,14 @@ extern double fmin _PARAMS((double, double)); | |||||||
| extern double fma _PARAMS((double, double, double)); | extern double fma _PARAMS((double, double, double)); | ||||||
| extern void sincos _PARAMS((double, double *, double *)); | extern void sincos _PARAMS((double, double *, double *)); | ||||||
|  |  | ||||||
|  | /* GNU extensions */ | ||||||
|  | # ifndef exp10 | ||||||
|  | extern double exp10 _PARAMS((double)); | ||||||
|  | # endif | ||||||
|  | # ifndef pow10 | ||||||
|  | extern double pow10 _PARAMS((double)); | ||||||
|  | # endif | ||||||
|  |  | ||||||
| #ifndef __math_68881 | #ifndef __math_68881 | ||||||
| extern double log1p _PARAMS((double)); | extern double log1p _PARAMS((double)); | ||||||
| extern double expm1 _PARAMS((double)); | extern double expm1 _PARAMS((double)); | ||||||
| @@ -335,6 +343,14 @@ extern float log1pf _PARAMS((float)); | |||||||
| extern float expm1f _PARAMS((float)); | extern float expm1f _PARAMS((float)); | ||||||
| extern void sincosf _PARAMS((float, float *, float *)); | extern void sincosf _PARAMS((float, float *, float *)); | ||||||
|  |  | ||||||
|  | /* GNU extensions */ | ||||||
|  | # ifndef exp10f | ||||||
|  | extern float exp10f _PARAMS((float)); | ||||||
|  | # endif | ||||||
|  | # ifndef pow10f | ||||||
|  | extern float pow10f _PARAMS((float)); | ||||||
|  | # endif | ||||||
|  |  | ||||||
| #ifndef _REENT_ONLY | #ifndef _REENT_ONLY | ||||||
| extern float acoshf _PARAMS((float)); | extern float acoshf _PARAMS((float)); | ||||||
| extern float atanhf _PARAMS((float)); | extern float atanhf _PARAMS((float)); | ||||||
|   | |||||||
| @@ -5,18 +5,18 @@ AUTOMAKE_OPTIONS = cygnus | |||||||
| INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) | INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) | ||||||
|  |  | ||||||
| src = 	s_finite.c s_copysign.c s_modf.c s_scalbn.c \ | src = 	s_finite.c s_copysign.c s_modf.c s_scalbn.c \ | ||||||
| 	s_cbrt.c s_expm1.c s_ilogb.c s_infconst.c \ | 	s_cbrt.c s_exp10.c s_expm1.c s_ilogb.c s_infconst.c \ | ||||||
| 	s_infinity.c s_isinf.c s_isinfd.c s_isnan.c s_isnand.c \ | 	s_infinity.c s_isinf.c s_isinfd.c s_isnan.c s_isnand.c \ | ||||||
| 	s_log1p.c s_nan.c s_nextafter.c \ | 	s_log1p.c s_nan.c s_nextafter.c s_pow10.c \ | ||||||
| 	s_rint.c s_logb.c s_matherr.c s_lib_ver.c \ | 	s_rint.c s_logb.c s_matherr.c s_lib_ver.c \ | ||||||
| 	s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c \ | 	s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c \ | ||||||
| 	s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c \ | 	s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c \ | ||||||
| 	s_signbit.c s_trunc.c | 	s_signbit.c s_trunc.c | ||||||
|  |  | ||||||
| fsrc =	sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c \ | fsrc =	sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c \ | ||||||
| 	sf_cbrt.c sf_expm1.c sf_ilogb.c \ | 	sf_cbrt.c sf_exp10.c sf_expm1.c sf_ilogb.c \ | ||||||
| 	sf_infinity.c sf_isinf.c sf_isinff.c sf_isnan.c sf_isnanf.c \ | 	sf_infinity.c sf_isinf.c sf_isinff.c sf_isnan.c sf_isnanf.c \ | ||||||
| 	sf_log1p.c sf_nan.c sf_nextafter.c \ | 	sf_log1p.c sf_nan.c sf_nextafter.c sf_pow10.c \ | ||||||
| 	sf_rint.c sf_logb.c \ | 	sf_rint.c sf_logb.c \ | ||||||
| 	sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_fpclassify.c sf_lrint.c \ | 	sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_fpclassify.c sf_lrint.c \ | ||||||
| 	sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c \ | 	sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c \ | ||||||
| @@ -37,9 +37,9 @@ endif # USE_LIBTOOL | |||||||
|  |  | ||||||
| include $(srcdir)/../../Makefile.shared | include $(srcdir)/../../Makefile.shared | ||||||
|  |  | ||||||
| chobj =	scbrt.def scopysign.def sexpm1.def silogb.def \ | chobj =	scbrt.def scopysign.def sexp10.def sexpm1.def silogb.def \ | ||||||
| 	sinfinity.def sisnan.def slog1p.def smatherr.def smodf.def \ | 	sinfinity.def sisnan.def slog1p.def smatherr.def smodf.def \ | ||||||
| 	snan.def snextafter.def sscalbn.def | 	snan.def snextafter.def spow10.def sscalbn.def | ||||||
|  |  | ||||||
| SUFFIXES = .def | SUFFIXES = .def | ||||||
|  |  | ||||||
| @@ -58,18 +58,10 @@ CLEANFILES = $(chobj) *.ref | |||||||
| # Texinfo does not appear to support underscores in file names, so we | # Texinfo does not appear to support underscores in file names, so we | ||||||
| # name the .def files without underscores. | # name the .def files without underscores. | ||||||
|  |  | ||||||
| smodf.def: s_modf.c |  | ||||||
| 	$(CHEW) < $(srcdir)/s_modf.c >$@ 2>/dev/null |  | ||||||
| 	touch stmp-def |  | ||||||
|  |  | ||||||
| scopysign.def: s_copysign.c | scopysign.def: s_copysign.c | ||||||
| 	$(CHEW) < $(srcdir)/s_copysign.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_copysign.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
| sscalbn.def: s_scalbn.c |  | ||||||
| 	$(CHEW) < $(srcdir)/s_scalbn.c >$@ 2>/dev/null |  | ||||||
| 	touch stmp-def |  | ||||||
|  |  | ||||||
| scbrt.def: s_cbrt.c | scbrt.def: s_cbrt.c | ||||||
| 	$(CHEW) < $(srcdir)/s_cbrt.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_cbrt.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
| @@ -78,8 +70,8 @@ serf.def: s_erf.c | |||||||
| 	$(CHEW) < $(srcdir)/s_serf.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_serf.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
| sexpn.def: s_expm.c | sexp10.def: s_exp10.c | ||||||
| 	$(CHEW) < $(srcdir)/s_expn.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_exp10.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
| sexpm1.def: s_expm1.c | sexpm1.def: s_expm1.c | ||||||
| @@ -102,6 +94,10 @@ slog1p.def: s_log1p.c | |||||||
| 	$(CHEW) < $(srcdir)/s_log1p.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_log1p.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
|  | smodf.def: s_modf.c | ||||||
|  | 	$(CHEW) < $(srcdir)/s_modf.c >$@ 2>/dev/null | ||||||
|  | 	touch stmp-def | ||||||
|  |  | ||||||
| smatherr.def: s_matherr.c | smatherr.def: s_matherr.c | ||||||
| 	$(CHEW) < $(srcdir)/s_matherr.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_matherr.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
| @@ -114,6 +110,14 @@ snextafter.def: s_nextafter.c | |||||||
| 	$(CHEW) < $(srcdir)/s_nextafter.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_nextafter.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
|  | spow10.def: s_pow10.c | ||||||
|  | 	$(CHEW) < $(srcdir)/s_pow10.c >$@ 2>/dev/null | ||||||
|  | 	touch stmp-def | ||||||
|  |  | ||||||
|  | sscalbn.def: s_scalbn.c | ||||||
|  | 	$(CHEW) < $(srcdir)/s_scalbn.c >$@ 2>/dev/null | ||||||
|  | 	touch stmp-def | ||||||
|  |  | ||||||
| # A partial dependency list. | # A partial dependency list. | ||||||
|  |  | ||||||
| $(lib_a_OBJECTS): $(srcdir)/../../libc/include/math.h fdlibm.h | $(lib_a_OBJECTS): $(srcdir)/../../libc/include/math.h fdlibm.h | ||||||
|   | |||||||
| @@ -55,12 +55,13 @@ lib_a_AR = $(AR) $(ARFLAGS) | |||||||
| lib_a_LIBADD = | lib_a_LIBADD = | ||||||
| am__objects_1 = lib_a-s_finite.$(OBJEXT) lib_a-s_copysign.$(OBJEXT) \ | am__objects_1 = lib_a-s_finite.$(OBJEXT) lib_a-s_copysign.$(OBJEXT) \ | ||||||
| 	lib_a-s_modf.$(OBJEXT) lib_a-s_scalbn.$(OBJEXT) \ | 	lib_a-s_modf.$(OBJEXT) lib_a-s_scalbn.$(OBJEXT) \ | ||||||
| 	lib_a-s_cbrt.$(OBJEXT) lib_a-s_expm1.$(OBJEXT) \ | 	lib_a-s_cbrt.$(OBJEXT) lib_a-s_exp10.$(OBJEXT) \ | ||||||
| 	lib_a-s_ilogb.$(OBJEXT) lib_a-s_infconst.$(OBJEXT) \ | 	lib_a-s_expm1.$(OBJEXT) lib_a-s_ilogb.$(OBJEXT) \ | ||||||
| 	lib_a-s_infinity.$(OBJEXT) lib_a-s_isinf.$(OBJEXT) \ | 	lib_a-s_infconst.$(OBJEXT) lib_a-s_infinity.$(OBJEXT) \ | ||||||
| 	lib_a-s_isinfd.$(OBJEXT) lib_a-s_isnan.$(OBJEXT) \ | 	lib_a-s_isinf.$(OBJEXT) lib_a-s_isinfd.$(OBJEXT) \ | ||||||
| 	lib_a-s_isnand.$(OBJEXT) lib_a-s_log1p.$(OBJEXT) \ | 	lib_a-s_isnan.$(OBJEXT) lib_a-s_isnand.$(OBJEXT) \ | ||||||
| 	lib_a-s_nan.$(OBJEXT) lib_a-s_nextafter.$(OBJEXT) \ | 	lib_a-s_log1p.$(OBJEXT) lib_a-s_nan.$(OBJEXT) \ | ||||||
|  | 	lib_a-s_nextafter.$(OBJEXT) lib_a-s_pow10.$(OBJEXT) \ | ||||||
| 	lib_a-s_rint.$(OBJEXT) lib_a-s_logb.$(OBJEXT) \ | 	lib_a-s_rint.$(OBJEXT) lib_a-s_logb.$(OBJEXT) \ | ||||||
| 	lib_a-s_matherr.$(OBJEXT) lib_a-s_lib_ver.$(OBJEXT) \ | 	lib_a-s_matherr.$(OBJEXT) lib_a-s_lib_ver.$(OBJEXT) \ | ||||||
| 	lib_a-s_fdim.$(OBJEXT) lib_a-s_fma.$(OBJEXT) \ | 	lib_a-s_fdim.$(OBJEXT) lib_a-s_fma.$(OBJEXT) \ | ||||||
| @@ -72,12 +73,13 @@ am__objects_1 = lib_a-s_finite.$(OBJEXT) lib_a-s_copysign.$(OBJEXT) \ | |||||||
| 	lib_a-s_trunc.$(OBJEXT) | 	lib_a-s_trunc.$(OBJEXT) | ||||||
| am__objects_2 = lib_a-sf_finite.$(OBJEXT) lib_a-sf_copysign.$(OBJEXT) \ | am__objects_2 = lib_a-sf_finite.$(OBJEXT) lib_a-sf_copysign.$(OBJEXT) \ | ||||||
| 	lib_a-sf_modf.$(OBJEXT) lib_a-sf_scalbn.$(OBJEXT) \ | 	lib_a-sf_modf.$(OBJEXT) lib_a-sf_scalbn.$(OBJEXT) \ | ||||||
| 	lib_a-sf_cbrt.$(OBJEXT) lib_a-sf_expm1.$(OBJEXT) \ | 	lib_a-sf_cbrt.$(OBJEXT) lib_a-sf_exp10.$(OBJEXT) \ | ||||||
| 	lib_a-sf_ilogb.$(OBJEXT) lib_a-sf_infinity.$(OBJEXT) \ | 	lib_a-sf_expm1.$(OBJEXT) lib_a-sf_ilogb.$(OBJEXT) \ | ||||||
| 	lib_a-sf_isinf.$(OBJEXT) lib_a-sf_isinff.$(OBJEXT) \ | 	lib_a-sf_infinity.$(OBJEXT) lib_a-sf_isinf.$(OBJEXT) \ | ||||||
| 	lib_a-sf_isnan.$(OBJEXT) lib_a-sf_isnanf.$(OBJEXT) \ | 	lib_a-sf_isinff.$(OBJEXT) lib_a-sf_isnan.$(OBJEXT) \ | ||||||
| 	lib_a-sf_log1p.$(OBJEXT) lib_a-sf_nan.$(OBJEXT) \ | 	lib_a-sf_isnanf.$(OBJEXT) lib_a-sf_log1p.$(OBJEXT) \ | ||||||
| 	lib_a-sf_nextafter.$(OBJEXT) lib_a-sf_rint.$(OBJEXT) \ | 	lib_a-sf_nan.$(OBJEXT) lib_a-sf_nextafter.$(OBJEXT) \ | ||||||
|  | 	lib_a-sf_pow10.$(OBJEXT) lib_a-sf_rint.$(OBJEXT) \ | ||||||
| 	lib_a-sf_logb.$(OBJEXT) lib_a-sf_fdim.$(OBJEXT) \ | 	lib_a-sf_logb.$(OBJEXT) lib_a-sf_fdim.$(OBJEXT) \ | ||||||
| 	lib_a-sf_fma.$(OBJEXT) lib_a-sf_fmax.$(OBJEXT) \ | 	lib_a-sf_fma.$(OBJEXT) lib_a-sf_fmax.$(OBJEXT) \ | ||||||
| 	lib_a-sf_fmin.$(OBJEXT) lib_a-sf_fpclassify.$(OBJEXT) \ | 	lib_a-sf_fmin.$(OBJEXT) lib_a-sf_fpclassify.$(OBJEXT) \ | ||||||
| @@ -91,19 +93,20 @@ lib_a_OBJECTS = $(am_lib_a_OBJECTS) | |||||||
| LTLIBRARIES = $(noinst_LTLIBRARIES) | LTLIBRARIES = $(noinst_LTLIBRARIES) | ||||||
| libcommon_la_LIBADD = | libcommon_la_LIBADD = | ||||||
| am__objects_3 = s_finite.lo s_copysign.lo s_modf.lo s_scalbn.lo \ | am__objects_3 = s_finite.lo s_copysign.lo s_modf.lo s_scalbn.lo \ | ||||||
| 	s_cbrt.lo s_expm1.lo s_ilogb.lo s_infconst.lo s_infinity.lo \ | 	s_cbrt.lo s_exp10.lo s_expm1.lo s_ilogb.lo s_infconst.lo \ | ||||||
| 	s_isinf.lo s_isinfd.lo s_isnan.lo s_isnand.lo s_log1p.lo \ | 	s_infinity.lo s_isinf.lo s_isinfd.lo s_isnan.lo s_isnand.lo \ | ||||||
| 	s_nan.lo s_nextafter.lo s_rint.lo s_logb.lo s_matherr.lo \ | 	s_log1p.lo s_nan.lo s_nextafter.lo s_pow10.lo s_rint.lo \ | ||||||
| 	s_lib_ver.lo s_fdim.lo s_fma.lo s_fmax.lo s_fmin.lo \ | 	s_logb.lo s_matherr.lo s_lib_ver.lo s_fdim.lo s_fma.lo \ | ||||||
| 	s_fpclassify.lo s_lrint.lo s_lround.lo s_nearbyint.lo \ | 	s_fmax.lo s_fmin.lo s_fpclassify.lo s_lrint.lo s_lround.lo \ | ||||||
| 	s_remquo.lo s_round.lo s_scalbln.lo s_signbit.lo s_trunc.lo | 	s_nearbyint.lo s_remquo.lo s_round.lo s_scalbln.lo \ | ||||||
|  | 	s_signbit.lo s_trunc.lo | ||||||
| am__objects_4 = sf_finite.lo sf_copysign.lo sf_modf.lo sf_scalbn.lo \ | am__objects_4 = sf_finite.lo sf_copysign.lo sf_modf.lo sf_scalbn.lo \ | ||||||
| 	sf_cbrt.lo sf_expm1.lo sf_ilogb.lo sf_infinity.lo sf_isinf.lo \ | 	sf_cbrt.lo sf_exp10.lo sf_expm1.lo sf_ilogb.lo sf_infinity.lo \ | ||||||
| 	sf_isinff.lo sf_isnan.lo sf_isnanf.lo sf_log1p.lo sf_nan.lo \ | 	sf_isinf.lo sf_isinff.lo sf_isnan.lo sf_isnanf.lo sf_log1p.lo \ | ||||||
| 	sf_nextafter.lo sf_rint.lo sf_logb.lo sf_fdim.lo sf_fma.lo \ | 	sf_nan.lo sf_nextafter.lo sf_pow10.lo sf_rint.lo sf_logb.lo \ | ||||||
| 	sf_fmax.lo sf_fmin.lo sf_fpclassify.lo sf_lrint.lo \ | 	sf_fdim.lo sf_fma.lo sf_fmax.lo sf_fmin.lo sf_fpclassify.lo \ | ||||||
| 	sf_lround.lo sf_nearbyint.lo sf_remquo.lo sf_round.lo \ | 	sf_lrint.lo sf_lround.lo sf_nearbyint.lo sf_remquo.lo \ | ||||||
| 	sf_scalbln.lo sf_trunc.lo | 	sf_round.lo sf_scalbln.lo sf_trunc.lo | ||||||
| @USE_LIBTOOL_TRUE@am_libcommon_la_OBJECTS = $(am__objects_3) \ | @USE_LIBTOOL_TRUE@am_libcommon_la_OBJECTS = $(am__objects_3) \ | ||||||
| @USE_LIBTOOL_TRUE@	$(am__objects_4) | @USE_LIBTOOL_TRUE@	$(am__objects_4) | ||||||
| libcommon_la_OBJECTS = $(am_libcommon_la_OBJECTS) | libcommon_la_OBJECTS = $(am_libcommon_la_OBJECTS) | ||||||
| @@ -244,18 +247,18 @@ target_alias = @target_alias@ | |||||||
| AUTOMAKE_OPTIONS = cygnus | AUTOMAKE_OPTIONS = cygnus | ||||||
| INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) | INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) | ||||||
| src = s_finite.c s_copysign.c s_modf.c s_scalbn.c \ | src = s_finite.c s_copysign.c s_modf.c s_scalbn.c \ | ||||||
| 	s_cbrt.c s_expm1.c s_ilogb.c s_infconst.c \ | 	s_cbrt.c s_exp10.c s_expm1.c s_ilogb.c s_infconst.c \ | ||||||
| 	s_infinity.c s_isinf.c s_isinfd.c s_isnan.c s_isnand.c \ | 	s_infinity.c s_isinf.c s_isinfd.c s_isnan.c s_isnand.c \ | ||||||
| 	s_log1p.c s_nan.c s_nextafter.c \ | 	s_log1p.c s_nan.c s_nextafter.c s_pow10.c \ | ||||||
| 	s_rint.c s_logb.c s_matherr.c s_lib_ver.c \ | 	s_rint.c s_logb.c s_matherr.c s_lib_ver.c \ | ||||||
| 	s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c \ | 	s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c \ | ||||||
| 	s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c \ | 	s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c \ | ||||||
| 	s_signbit.c s_trunc.c | 	s_signbit.c s_trunc.c | ||||||
|  |  | ||||||
| fsrc = sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c \ | fsrc = sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c \ | ||||||
| 	sf_cbrt.c sf_expm1.c sf_ilogb.c \ | 	sf_cbrt.c sf_exp10.c sf_expm1.c sf_ilogb.c \ | ||||||
| 	sf_infinity.c sf_isinf.c sf_isinff.c sf_isnan.c sf_isnanf.c \ | 	sf_infinity.c sf_isinf.c sf_isinff.c sf_isnan.c sf_isnanf.c \ | ||||||
| 	sf_log1p.c sf_nan.c sf_nextafter.c \ | 	sf_log1p.c sf_nan.c sf_nextafter.c sf_pow10.c \ | ||||||
| 	sf_rint.c sf_logb.c \ | 	sf_rint.c sf_logb.c \ | ||||||
| 	sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_fpclassify.c sf_lrint.c \ | 	sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_fpclassify.c sf_lrint.c \ | ||||||
| 	sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c \ | 	sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c \ | ||||||
| @@ -269,9 +272,9 @@ libcommon_la_LDFLAGS = -Xcompiler -nostdlib | |||||||
| @USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a | @USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a | ||||||
| @USE_LIBTOOL_FALSE@lib_a_SOURCES = $(src) $(fsrc) | @USE_LIBTOOL_FALSE@lib_a_SOURCES = $(src) $(fsrc) | ||||||
| @USE_LIBTOOL_FALSE@lib_a_CFLAGS = $(AM_CFLAGS) | @USE_LIBTOOL_FALSE@lib_a_CFLAGS = $(AM_CFLAGS) | ||||||
| chobj = scbrt.def scopysign.def sexpm1.def silogb.def \ | chobj = scbrt.def scopysign.def sexp10.def sexpm1.def silogb.def \ | ||||||
| 	sinfinity.def sisnan.def slog1p.def smatherr.def smodf.def \ | 	sinfinity.def sisnan.def slog1p.def smatherr.def smodf.def \ | ||||||
| 	snan.def snextafter.def sscalbn.def | 	snan.def snextafter.def spow10.def sscalbn.def | ||||||
|  |  | ||||||
| SUFFIXES = .def | SUFFIXES = .def | ||||||
| CHEW = ../../doc/makedoc -f $(srcdir)/../../doc/doc.str | CHEW = ../../doc/makedoc -f $(srcdir)/../../doc/doc.str | ||||||
| @@ -374,6 +377,12 @@ lib_a-s_cbrt.o: s_cbrt.c | |||||||
| lib_a-s_cbrt.obj: s_cbrt.c | lib_a-s_cbrt.obj: s_cbrt.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_cbrt.obj `if test -f 's_cbrt.c'; then $(CYGPATH_W) 's_cbrt.c'; else $(CYGPATH_W) '$(srcdir)/s_cbrt.c'; fi` | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_cbrt.obj `if test -f 's_cbrt.c'; then $(CYGPATH_W) 's_cbrt.c'; else $(CYGPATH_W) '$(srcdir)/s_cbrt.c'; fi` | ||||||
|  |  | ||||||
|  | lib_a-s_exp10.o: s_exp10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_exp10.o `test -f 's_exp10.c' || echo '$(srcdir)/'`s_exp10.c | ||||||
|  |  | ||||||
|  | lib_a-s_exp10.obj: s_exp10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_exp10.obj `if test -f 's_exp10.c'; then $(CYGPATH_W) 's_exp10.c'; else $(CYGPATH_W) '$(srcdir)/s_exp10.c'; fi` | ||||||
|  |  | ||||||
| lib_a-s_expm1.o: s_expm1.c | lib_a-s_expm1.o: s_expm1.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_expm1.o `test -f 's_expm1.c' || echo '$(srcdir)/'`s_expm1.c | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_expm1.o `test -f 's_expm1.c' || echo '$(srcdir)/'`s_expm1.c | ||||||
|  |  | ||||||
| @@ -440,6 +449,12 @@ lib_a-s_nextafter.o: s_nextafter.c | |||||||
| lib_a-s_nextafter.obj: s_nextafter.c | lib_a-s_nextafter.obj: s_nextafter.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_nextafter.obj `if test -f 's_nextafter.c'; then $(CYGPATH_W) 's_nextafter.c'; else $(CYGPATH_W) '$(srcdir)/s_nextafter.c'; fi` | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_nextafter.obj `if test -f 's_nextafter.c'; then $(CYGPATH_W) 's_nextafter.c'; else $(CYGPATH_W) '$(srcdir)/s_nextafter.c'; fi` | ||||||
|  |  | ||||||
|  | lib_a-s_pow10.o: s_pow10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_pow10.o `test -f 's_pow10.c' || echo '$(srcdir)/'`s_pow10.c | ||||||
|  |  | ||||||
|  | lib_a-s_pow10.obj: s_pow10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_pow10.obj `if test -f 's_pow10.c'; then $(CYGPATH_W) 's_pow10.c'; else $(CYGPATH_W) '$(srcdir)/s_pow10.c'; fi` | ||||||
|  |  | ||||||
| lib_a-s_rint.o: s_rint.c | lib_a-s_rint.o: s_rint.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_rint.o `test -f 's_rint.c' || echo '$(srcdir)/'`s_rint.c | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-s_rint.o `test -f 's_rint.c' || echo '$(srcdir)/'`s_rint.c | ||||||
|  |  | ||||||
| @@ -572,6 +587,12 @@ lib_a-sf_cbrt.o: sf_cbrt.c | |||||||
| lib_a-sf_cbrt.obj: sf_cbrt.c | lib_a-sf_cbrt.obj: sf_cbrt.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_cbrt.obj `if test -f 'sf_cbrt.c'; then $(CYGPATH_W) 'sf_cbrt.c'; else $(CYGPATH_W) '$(srcdir)/sf_cbrt.c'; fi` | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_cbrt.obj `if test -f 'sf_cbrt.c'; then $(CYGPATH_W) 'sf_cbrt.c'; else $(CYGPATH_W) '$(srcdir)/sf_cbrt.c'; fi` | ||||||
|  |  | ||||||
|  | lib_a-sf_exp10.o: sf_exp10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_exp10.o `test -f 'sf_exp10.c' || echo '$(srcdir)/'`sf_exp10.c | ||||||
|  |  | ||||||
|  | lib_a-sf_exp10.obj: sf_exp10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_exp10.obj `if test -f 'sf_exp10.c'; then $(CYGPATH_W) 'sf_exp10.c'; else $(CYGPATH_W) '$(srcdir)/sf_exp10.c'; fi` | ||||||
|  |  | ||||||
| lib_a-sf_expm1.o: sf_expm1.c | lib_a-sf_expm1.o: sf_expm1.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_expm1.o `test -f 'sf_expm1.c' || echo '$(srcdir)/'`sf_expm1.c | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_expm1.o `test -f 'sf_expm1.c' || echo '$(srcdir)/'`sf_expm1.c | ||||||
|  |  | ||||||
| @@ -632,6 +653,12 @@ lib_a-sf_nextafter.o: sf_nextafter.c | |||||||
| lib_a-sf_nextafter.obj: sf_nextafter.c | lib_a-sf_nextafter.obj: sf_nextafter.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_nextafter.obj `if test -f 'sf_nextafter.c'; then $(CYGPATH_W) 'sf_nextafter.c'; else $(CYGPATH_W) '$(srcdir)/sf_nextafter.c'; fi` | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_nextafter.obj `if test -f 'sf_nextafter.c'; then $(CYGPATH_W) 'sf_nextafter.c'; else $(CYGPATH_W) '$(srcdir)/sf_nextafter.c'; fi` | ||||||
|  |  | ||||||
|  | lib_a-sf_pow10.o: sf_pow10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_pow10.o `test -f 'sf_pow10.c' || echo '$(srcdir)/'`sf_pow10.c | ||||||
|  |  | ||||||
|  | lib_a-sf_pow10.obj: sf_pow10.c | ||||||
|  | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_pow10.obj `if test -f 'sf_pow10.c'; then $(CYGPATH_W) 'sf_pow10.c'; else $(CYGPATH_W) '$(srcdir)/sf_pow10.c'; fi` | ||||||
|  |  | ||||||
| lib_a-sf_rint.o: sf_rint.c | lib_a-sf_rint.o: sf_rint.c | ||||||
| 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_rint.o `test -f 'sf_rint.c' || echo '$(srcdir)/'`sf_rint.c | 	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-sf_rint.o `test -f 'sf_rint.c' || echo '$(srcdir)/'`sf_rint.c | ||||||
|  |  | ||||||
| @@ -879,18 +906,10 @@ doc: $(chobj) | |||||||
| # Texinfo does not appear to support underscores in file names, so we | # Texinfo does not appear to support underscores in file names, so we | ||||||
| # name the .def files without underscores. | # name the .def files without underscores. | ||||||
|  |  | ||||||
| smodf.def: s_modf.c |  | ||||||
| 	$(CHEW) < $(srcdir)/s_modf.c >$@ 2>/dev/null |  | ||||||
| 	touch stmp-def |  | ||||||
|  |  | ||||||
| scopysign.def: s_copysign.c | scopysign.def: s_copysign.c | ||||||
| 	$(CHEW) < $(srcdir)/s_copysign.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_copysign.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
| sscalbn.def: s_scalbn.c |  | ||||||
| 	$(CHEW) < $(srcdir)/s_scalbn.c >$@ 2>/dev/null |  | ||||||
| 	touch stmp-def |  | ||||||
|  |  | ||||||
| scbrt.def: s_cbrt.c | scbrt.def: s_cbrt.c | ||||||
| 	$(CHEW) < $(srcdir)/s_cbrt.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_cbrt.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
| @@ -899,8 +918,8 @@ serf.def: s_erf.c | |||||||
| 	$(CHEW) < $(srcdir)/s_serf.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_serf.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
| sexpn.def: s_expm.c | sexp10.def: s_exp10.c | ||||||
| 	$(CHEW) < $(srcdir)/s_expn.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_exp10.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
| sexpm1.def: s_expm1.c | sexpm1.def: s_expm1.c | ||||||
| @@ -923,6 +942,10 @@ slog1p.def: s_log1p.c | |||||||
| 	$(CHEW) < $(srcdir)/s_log1p.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_log1p.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
|  | smodf.def: s_modf.c | ||||||
|  | 	$(CHEW) < $(srcdir)/s_modf.c >$@ 2>/dev/null | ||||||
|  | 	touch stmp-def | ||||||
|  |  | ||||||
| smatherr.def: s_matherr.c | smatherr.def: s_matherr.c | ||||||
| 	$(CHEW) < $(srcdir)/s_matherr.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_matherr.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
| @@ -935,6 +958,14 @@ snextafter.def: s_nextafter.c | |||||||
| 	$(CHEW) < $(srcdir)/s_nextafter.c >$@ 2>/dev/null | 	$(CHEW) < $(srcdir)/s_nextafter.c >$@ 2>/dev/null | ||||||
| 	touch stmp-def | 	touch stmp-def | ||||||
|  |  | ||||||
|  | spow10.def: s_pow10.c | ||||||
|  | 	$(CHEW) < $(srcdir)/s_pow10.c >$@ 2>/dev/null | ||||||
|  | 	touch stmp-def | ||||||
|  |  | ||||||
|  | sscalbn.def: s_scalbn.c | ||||||
|  | 	$(CHEW) < $(srcdir)/s_scalbn.c >$@ 2>/dev/null | ||||||
|  | 	touch stmp-def | ||||||
|  |  | ||||||
| # A partial dependency list. | # A partial dependency list. | ||||||
|  |  | ||||||
| $(lib_a_OBJECTS): $(srcdir)/../../libc/include/math.h fdlibm.h | $(lib_a_OBJECTS): $(srcdir)/../../libc/include/math.h fdlibm.h | ||||||
|   | |||||||
							
								
								
									
										80
									
								
								newlib/libm/common/s_exp10.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								newlib/libm/common/s_exp10.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,80 @@ | |||||||
|  | /* @(#)s_exp10.c 5.1 93/09/24 */ | ||||||
|  | /* Modified from s_exp2.c by Yaakov Selkowitz 2007.  */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * ==================================================== | ||||||
|  |  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. | ||||||
|  |  * | ||||||
|  |  * Developed at SunPro, a Sun Microsystems, Inc. business. | ||||||
|  |  * Permission to use, copy, modify, and distribute this | ||||||
|  |  * software is freely granted, provided that this notice | ||||||
|  |  * is preserved. | ||||||
|  |  * ==================================================== | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | FUNCTION | ||||||
|  | 	<<exp10>>, <<exp10f>>---exponential | ||||||
|  | INDEX | ||||||
|  | 	exp10 | ||||||
|  | INDEX | ||||||
|  | 	exp10f | ||||||
|  |  | ||||||
|  | ANSI_SYNOPSIS | ||||||
|  | 	#include <math.h> | ||||||
|  | 	double exp10(double <[x]>); | ||||||
|  | 	float exp10f(float <[x]>); | ||||||
|  |  | ||||||
|  | TRAD_SYNOPSIS | ||||||
|  | 	#include <math.h> | ||||||
|  | 	double exp10(<[x]>); | ||||||
|  | 	double <[x]>; | ||||||
|  |  | ||||||
|  | 	float exp10f(<[x]>); | ||||||
|  | 	float <[x]>; | ||||||
|  |  | ||||||
|  | DESCRIPTION | ||||||
|  | 	<<exp10>> and <<exp10f>> calculate 10 ^ <[x]>, that is,  | ||||||
|  | 	@ifnottex | ||||||
|  | 	10 raised to the power <[x]>. | ||||||
|  | 	@end ifnottex | ||||||
|  | 	@tex | ||||||
|  | 	$10^x$ | ||||||
|  | 	@end tex | ||||||
|  |  | ||||||
|  | 	You can use the (non-ANSI) function <<matherr>> to specify | ||||||
|  | 	error handling for these functions. | ||||||
|  |  | ||||||
|  | RETURNS | ||||||
|  | 	On success, <<exp10>> and <<exp10f>> return the calculated value. | ||||||
|  | 	If the result underflows, the returned value is <<0>>.  If the | ||||||
|  | 	result overflows, the returned value is <<HUGE_VAL>>.  In | ||||||
|  | 	either case, <<errno>> is set to <<ERANGE>>. | ||||||
|  |  | ||||||
|  | PORTABILITY | ||||||
|  | 	<<exp10>> and <<exp10f>> are GNU extensions. | ||||||
|  |  | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * wrapper exp10(x) | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #undef exp10 | ||||||
|  | #include "fdlibm.h" | ||||||
|  | #include <errno.h> | ||||||
|  | #include <math.h> | ||||||
|  |  | ||||||
|  | #ifndef _DOUBLE_IS_32BITS | ||||||
|  |  | ||||||
|  | #ifdef __STDC__ | ||||||
|  | 	double exp10(double x)		/* wrapper exp10 */ | ||||||
|  | #else | ||||||
|  | 	double exp10(x)			/* wrapper exp10 */ | ||||||
|  | 	double x; | ||||||
|  | #endif | ||||||
|  | { | ||||||
|  |   return pow(10.0, x); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #endif /* defined(_DOUBLE_IS_32BITS) */ | ||||||
							
								
								
									
										79
									
								
								newlib/libm/common/s_pow10.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								newlib/libm/common/s_pow10.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,79 @@ | |||||||
|  | /* @(#)s_pow10.c 5.1 93/09/24 */ | ||||||
|  | /* Modification from s_exp10.c Yaakov Selkowitz 2007.  */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * ==================================================== | ||||||
|  |  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. | ||||||
|  |  * | ||||||
|  |  * Developed at SunPro, a Sun Microsystems, Inc. business. | ||||||
|  |  * Permission to use, copy, modify, and distribute this | ||||||
|  |  * software is freely granted, provided that this notice | ||||||
|  |  * is preserved. | ||||||
|  |  * ==================================================== | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | FUNCTION | ||||||
|  | 	<<pow10>>, <<pow10f>>---exponential | ||||||
|  | INDEX | ||||||
|  | 	pow10 | ||||||
|  | INDEX | ||||||
|  | 	pow10f | ||||||
|  |  | ||||||
|  | ANSI_SYNOPSIS | ||||||
|  | 	#include <math.h> | ||||||
|  | 	double pow10(double <[x]>); | ||||||
|  | 	float pow10f(float <[x]>); | ||||||
|  |  | ||||||
|  | TRAD_SYNOPSIS | ||||||
|  | 	#include <math.h> | ||||||
|  | 	double pow10(<[x]>); | ||||||
|  | 	double <[x]>; | ||||||
|  |  | ||||||
|  | 	float pow10f(<[x]>); | ||||||
|  | 	float <[x]>; | ||||||
|  |  | ||||||
|  | DESCRIPTION | ||||||
|  | 	<<pow10>> and <<pow10f>> calculate 10 ^ <[x]>, that is,  | ||||||
|  | 	@ifnottex | ||||||
|  | 	10 raised to the power <[x]>. | ||||||
|  | 	@end ifnottex | ||||||
|  | 	@tex | ||||||
|  | 	$10^x$ | ||||||
|  | 	@end tex | ||||||
|  |  | ||||||
|  | 	You can use the (non-ANSI) function <<matherr>> to specify | ||||||
|  | 	error handling for these functions. | ||||||
|  |  | ||||||
|  | RETURNS | ||||||
|  | 	On success, <<pow10>> and <<pow10f>> return the calculated value. | ||||||
|  | 	If the result underflows, the returned value is <<0>>.  If the | ||||||
|  | 	result overflows, the returned value is <<HUGE_VAL>>.  In | ||||||
|  | 	either case, <<errno>> is set to <<ERANGE>>. | ||||||
|  |  | ||||||
|  | PORTABILITY | ||||||
|  | 	<<pow10>> and <<pow10f>> are GNU extensions. | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * wrapper pow10(x) | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #undef pow10 | ||||||
|  | #include "fdlibm.h" | ||||||
|  | #include <errno.h> | ||||||
|  | #include <math.h> | ||||||
|  |  | ||||||
|  | #ifndef _DOUBLE_IS_32BITS | ||||||
|  |  | ||||||
|  | #ifdef __STDC__ | ||||||
|  | 	double pow10(double x)		/* wrapper pow10 */ | ||||||
|  | #else | ||||||
|  | 	double pow10(x)			/* wrapper pow10 */ | ||||||
|  | 	double x; | ||||||
|  | #endif | ||||||
|  | { | ||||||
|  |   return pow(10.0, x); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #endif /* defined(_DOUBLE_IS_32BITS) */ | ||||||
							
								
								
									
										47
									
								
								newlib/libm/common/sf_exp10.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								newlib/libm/common/sf_exp10.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | |||||||
|  | /* sf_exp10.c -- float version of s_exp10.c. | ||||||
|  |  * Modification of sf_exp2.c by Yaakov Selkowitz 2007. | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * ==================================================== | ||||||
|  |  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. | ||||||
|  |  * | ||||||
|  |  * Developed at SunPro, a Sun Microsystems, Inc. business. | ||||||
|  |  * Permission to use, copy, modify, and distribute this | ||||||
|  |  * software is freely granted, provided that this notice  | ||||||
|  |  * is preserved. | ||||||
|  |  * ==================================================== | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /*  | ||||||
|  |  * wrapper exp10f(x) | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #undef exp10f | ||||||
|  | #include "fdlibm.h" | ||||||
|  | #include <errno.h> | ||||||
|  | #include <math.h> | ||||||
|  |  | ||||||
|  | #ifdef __STDC__ | ||||||
|  | 	float exp10f(float x)		/* wrapper exp10f */ | ||||||
|  | #else | ||||||
|  | 	float exp10f(x)			/* wrapper exp10f */ | ||||||
|  | 	float x; | ||||||
|  | #endif | ||||||
|  | { | ||||||
|  |   return powf(10.0, x); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #ifdef _DOUBLE_IS_32BITS | ||||||
|  |  | ||||||
|  | #ifdef __STDC__ | ||||||
|  | 	double exp10(double x) | ||||||
|  | #else | ||||||
|  | 	double exp10(x) | ||||||
|  | 	double x; | ||||||
|  | #endif | ||||||
|  | { | ||||||
|  | 	return (double) exp10f((float) x); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #endif /* defined(_DOUBLE_IS_32BITS) */ | ||||||
							
								
								
									
										47
									
								
								newlib/libm/common/sf_pow10.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								newlib/libm/common/sf_pow10.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | |||||||
|  | /* sf_pow10.c -- float version of s_pow10.c. | ||||||
|  |  * Modification of sf_pow10.c by Yaakov Selkowitz 2007. | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * ==================================================== | ||||||
|  |  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. | ||||||
|  |  * | ||||||
|  |  * Developed at SunPro, a Sun Microsystems, Inc. business. | ||||||
|  |  * Permission to use, copy, modify, and distribute this | ||||||
|  |  * software is freely granted, provided that this notice  | ||||||
|  |  * is preserved. | ||||||
|  |  * ==================================================== | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /*  | ||||||
|  |  * wrapper pow10f(x) | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #undef pow10f | ||||||
|  | #include "fdlibm.h" | ||||||
|  | #include <errno.h> | ||||||
|  | #include <math.h> | ||||||
|  |  | ||||||
|  | #ifdef __STDC__ | ||||||
|  | 	float pow10f(float x)		/* wrapper pow10f */ | ||||||
|  | #else | ||||||
|  | 	float pow10f(x)			/* wrapper pow10f */ | ||||||
|  | 	float x; | ||||||
|  | #endif | ||||||
|  | { | ||||||
|  |   return powf(10.0, x); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #ifdef _DOUBLE_IS_32BITS | ||||||
|  |  | ||||||
|  | #ifdef __STDC__ | ||||||
|  | 	double pow10(double x) | ||||||
|  | #else | ||||||
|  | 	double pow10(x) | ||||||
|  | 	double x; | ||||||
|  | #endif | ||||||
|  | { | ||||||
|  | 	return (double) pow10f((float) x); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #endif /* defined(_DOUBLE_IS_32BITS) */ | ||||||
		Reference in New Issue
	
	Block a user