Up to [local] / src / lib / libm
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.21 / (download) - annotate - [select for diffs], Sat Mar 10 20:52:58 2018 UTC (6 years, 3 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
OPENBSD_7_4_BASE,
OPENBSD_7_4,
OPENBSD_7_3_BASE,
OPENBSD_7_3,
OPENBSD_7_2_BASE,
OPENBSD_7_2,
OPENBSD_7_1_BASE,
OPENBSD_7_1,
OPENBSD_7_0_BASE,
OPENBSD_7_0,
OPENBSD_6_9_BASE,
OPENBSD_6_9,
OPENBSD_6_8_BASE,
OPENBSD_6_8,
OPENBSD_6_7_BASE,
OPENBSD_6_7,
OPENBSD_6_6_BASE,
OPENBSD_6_6,
OPENBSD_6_5_BASE,
OPENBSD_6_5,
OPENBSD_6_4_BASE,
OPENBSD_6_4,
OPENBSD_6_3_BASE,
OPENBSD_6_3,
HEAD
Changes since 1.20: +1 -1 lines
Diff to previous 1.20 (colored)
Implement sicos(3), sincosf(3) and sincosl(3). These functions are common extensions and modern compilers (such as clang) will use them to optimize separate calculations of sine and cosine. ok tom@, patrick@, deraadt@, jmc@
Revision 1.20 / (download) - annotate - [select for diffs], Mon Sep 12 19:47:01 2016 UTC (7 years, 8 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE,
OPENBSD_6_2,
OPENBSD_6_1_BASE,
OPENBSD_6_1
Changes since 1.19: +1 -1 lines
Diff to previous 1.19 (colored)
Reduce libm's exports and make internal calls go direct. All dependencies on libc are now via reserved/standardized names. ok kettenis@ millert@ deraadt@
Revision 1.19 / (download) - annotate - [select for diffs], Tue Aug 13 05:52:14 2013 UTC (10 years, 10 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE,
OPENBSD_6_0,
OPENBSD_5_9_BASE,
OPENBSD_5_9,
OPENBSD_5_8_BASE,
OPENBSD_5_8,
OPENBSD_5_7_BASE,
OPENBSD_5_7,
OPENBSD_5_6_BASE,
OPENBSD_5_6,
OPENBSD_5_5_BASE,
OPENBSD_5_5
Changes since 1.18: +1 -1 lines
Diff to previous 1.18 (colored)
Switch time_t, ino_t, clock_t, and struct kevent's ident and data members to 64bit types. Assign new syscall numbers for (almost all) the syscalls that involve the affected types, including anything with time_t, timeval, itimerval, timespec, rusage, dirent, stat, or kevent arguments. Add a d_off member to struct dirent and replace getdirentries() with getdents(), thus immensely simplifying and accelerating telldir/seekdir. Build perl with -DBIG_TIME. Bump the major on every single base library: the compat bits included here are only good enough to make the transition; the T32 compat option will be burned as soon as we've reached the new world are are happy with the snapshots for all architectures. DANGER: ABI incompatibility. Updating to this kernel requires extra work or you won't be able to login: install a snapshot instead. Much assistance in fixing userland issues from deraadt@ and tedu@ and build assistance from todd@ and otto@
Revision 1.18 / (download) - annotate - [select for diffs], Thu Mar 28 18:09:38 2013 UTC (11 years, 2 months ago) by martynas
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE,
OPENBSD_5_4
Changes since 1.17: +2 -2 lines
Diff to previous 1.17 (colored)
Switch libc and libm to use strong aliases rather than weak aliases where appropriate. Among other things makes the symbols consistent across all architectures (notably where ldbl mantissa is 53 bits). While at it, kill unused LINTLIBRARY/PROTOLIB1 cruft which was there to trick lint into recording the right prototypes for aliased functions. Most of the work done at the awesome n2k13 hackathon. Agreed by kettenis@, guenther@, matthew@.
Revision 1.17 / (download) - annotate - [select for diffs], Thu Aug 23 15:28:16 2012 UTC (11 years, 9 months ago) by martynas
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE,
OPENBSD_5_3
Changes since 1.16: +1 -1 lines
Diff to previous 1.16 (colored)
Aliases for extended precision were missed on a few functions on hppa. Reported by Brad, thanks!
Revision 1.16 / (download) - annotate - [select for diffs], Fri Jul 8 22:28:33 2011 UTC (12 years, 11 months ago) by martynas
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE,
OPENBSD_5_2,
OPENBSD_5_1_BASE,
OPENBSD_5_1,
OPENBSD_5_0_BASE,
OPENBSD_5_0
Changes since 1.15: +1 -1 lines
Diff to previous 1.15 (colored)
Revert (leaving the complex math part alone). Some stuff is depending on this historical behavior; so we're stuck in this stupid situation. No cookie for me.
Revision 1.15 / (download) - annotate - [select for diffs], Fri Jul 8 19:21:42 2011 UTC (12 years, 11 months ago) by martynas
Branch: MAIN
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored)
Move fabs(3), frexp(3), and modf(3) to libm--nothing has been using them in libc for a very long time. OK guenther@.
Revision 1.14 / (download) - annotate - [select for diffs], Wed Jul 6 00:02:42 2011 UTC (12 years, 11 months ago) by martynas
Branch: MAIN
Changes since 1.13: +1 -1 lines
Diff to previous 1.13 (colored)
Finalize work on the math library. It's time to do this monster commit, and deal with problems (if any) in tree. Note that this adds the following functions. Ports with hacks might need adjustments. nexttoward(3), fma(3), nexttowardf(3), fmaf(3), acoshl(3), asinhl(3), atanhl(3), coshl(3), sinhl(3), tanhl(3), expl(3), expm1l(3), logl(3), log10l(3), log1pl(3), log2l(3), modfl(3), cbrtl(3), hypotl(3), powl(3), erfl(3), erfcl(3), lgammal(3), tgammal(3), ceill(3), floorl(3), lrintl(3), llrintl(3), roundl(3), lroundl(3), llroundl(3), truncl(3), fmodl(3), remainderl(3), remquol(3), nextafterl(3), nexttowardl(3), fmal(3). With this commit, our library implements all functionality required by C99. Documentation bits will follow.
Revision 1.13 / (download) - annotate - [select for diffs], Thu Apr 28 18:05:39 2011 UTC (13 years, 1 month ago) by martynas
Branch: MAIN
Changes since 1.12: +1 -1 lines
Diff to previous 1.12 (colored)
- enable fenv - add nearbyint, nearbyintf and nearbyintl implemented using fenv
Revision 1.12 / (download) - annotate - [select for diffs], Mon Oct 26 21:06:19 2009 UTC (14 years, 7 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE,
OPENBSD_4_9,
OPENBSD_4_8_BASE,
OPENBSD_4_8,
OPENBSD_4_7_BASE,
OPENBSD_4_7
Changes since 1.11: +1 -1 lines
Diff to previous 1.11 (colored)
Add man pages for the fdim/fmin/fmax family of functions and make sure fdiml is defined on all architectures. ok jmc@ (man pages) and martynas@
Revision 1.11 / (download) - annotate - [select for diffs], Sat Jul 25 11:38:10 2009 UTC (14 years, 10 months ago) by martynas
Branch: MAIN
Changes since 1.10: +1 -1 lines
Diff to previous 1.10 (colored)
int is big enough to fully represent exponents of all supported fp formats. which even for 80-bit & 128-bit long doubles is only 15 bits. therefore, scalbln, scalblnf, scalblnl are essentially the same as scalbn, scalbnf, scalbnl with bounds checking so that LONG_MIN..INT_MIN, and INT_MAX..LONG_MAX ranges properly raise exceptions & yield correct values. looks good to millert@
Revision 1.10 / (download) - annotate - [select for diffs], Tue Dec 9 20:00:35 2008 UTC (15 years, 6 months ago) by martynas
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE,
OPENBSD_4_6,
OPENBSD_4_5_BASE,
OPENBSD_4_5
Changes since 1.9: +1 -1 lines
Diff to previous 1.9 (colored)
- 80-bit and quad precision trigonometric and other most important functions: acosl, asinl, atanl, atan2l, cosl, sinl, tanl, exp2l, frexpl, ilogbl, ldexpl, logbl, scalbnl, fabsl, hypotl, powl, sqrtl, rintl, copysignl, nanl, fdiml, fmaxl, fminl. mostly taken from freebsd, needed alot of changes to adapt. note, these are all c versions; and are quite slow when architectures have, e.g. sqrt. assembly versions will be added afterwards - make them .weak/__weak_alias to the double precision versions on other archs - no need to have two finites. finite() and finitef() are non-standard 3BSD obsolete versions of isfinite. remove from libm. make them weak_alias in libc to __isfinite and __isfinitef instead. similarly make 3BSD obsolete versions of isinf, isinff, isnan, isnanf weak_aliases to C99's __isinf, __isinff, __isnan, __isnanf - remove unused infinity.c. the c library has infinities for each supported platform - use STRICT_ASSIGN cast hack for _kernel_rem_pio2, so that the double version has a chance of working on i386 with extra precision - avoid storing multiple copies of the pi/2 array, since it won't vary - bump major due to removed finite/finitef. although they will be in libc, which anything is linked to, minor bump might be enough ok millert@. tested by sthen@, jsg@, ajacoutot@, kili@, naddy@
Revision 1.9 / (download) - annotate - [select for diffs], Sun Sep 7 20:36:08 2008 UTC (15 years, 9 months ago) by martynas
Branch: MAIN
Changes since 1.8: +1 -1 lines
Diff to previous 1.8 (colored)
- replace dtoa w/ David's gdtoa, version 2008-03-15 - provide proper dtoa locks - use the real strtof implementation - add strtold, __hdtoa, __hldtoa - add %a/%A support - don't lose precision in printf, don't round to double anymore - implement extended-precision versions of libc functions: fpclassify, isnan, isinf, signbit, isnormal, isfinite, now that the ieee.h is fixed - separate vax versions of strtof, and __hdtoa - add complex math support. added functions: cacos, casin, catan, ccos, csin, ctan, cacosh, casinh, catanh, ccosh, csinh, ctanh, cexp, clog, cabs, cpow, csqrt, carg, cimag, conj, cproj, creal, cacosf, casinf, catanf, ccosf, csinf, ctanf, cacoshf, casinhf, catanhf, ccoshf, csinhf, ctanhf, cexpf, clogf, cabsf, cpowf, csqrtf, cargf, cimagf, conjf, cprojf, crealf - add fdim, fmax, fmin - add log2. (adapted implementation e_log.c. could be more acruate & faster, but it's good enough for now) - remove wrappers & cruft in libm, supposed to work-around mistakes in SVID, etc.; use ieee versions. fixes issues in python 2.6 for djm@ - make _digittoint static - proper definitions for i386, and amd64 in ieee.h - sh, powerpc don't really have extended-precision - add missing definitions for mips64 (quad), m{6,8}k (96-bit) float.h for LDBL_* - merge lead to frac for m{6,8}k, for gdtoa to work properly - add FRAC*BITS & EXT_TO_ARRAY32 definitions in ieee.h, for hdtoa&ldtoa to use - add EXT_IMPLICIT_NBIT definition, which indicates implicit normalization bit - add regression tests for libc: fpclassify and printf - arith.h & gd_qnan.h definitions - update ieee.h: hppa doesn't have quad-precision, hppa64 does - add missing prototypes to gdtoaimp - on 64-bit platforms make sure gdtoa doesn't use a long when it really wants an int - etc., what i may have forgotten... - bump libm major, due to removed&changed symbols - no libc bump, since this is riding on djm's libc major crank from a day ago discussed with / requested by / testing theo, sthen@, djm@, jsg@, merdely@, jsing@, tedu@, brad@, jakemsr@, and others. looks good to millert@ parts of the diff ok kettenis@ this commit does not include: - man page changes
Revision 1.8 / (download) - annotate - [select for diffs], Thu Jul 24 09:40:16 2008 UTC (15 years, 10 months ago) by martynas
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE,
OPENBSD_4_4
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)
- remove isinff, isnanf. this has been moved to libc - remove never-enabled signbit. libc has is now - add C99 implementations, from freebsd, for nan(), nanf() (needed to write _digittoint for it), exp2(), exp2f(), remquo(), remquof(), needed STRICT_ASSIGN macro for math_private.h - bump major man pages will follow exp2{,f} has been requested by chl@ ok millert@
Revision 1.7 / (download) - annotate - [select for diffs], Wed Jun 11 20:53:27 2008 UTC (16 years ago) by martynas
Branch: MAIN
Changes since 1.6: +1 -1 lines
Diff to previous 1.6 (colored)
- on non-ieee, rename gamma to tgamma, the 'true' gamma - make gamma an alias of lgamma - on ieee, add tgamma, based on gamma from non-ieee - fixes for tgamma/lgamma/exp/log, esp. special cases (some from freebsd); properly raise invalid fp operations on vax - also some general cleanup, ansification, man page (which was ok jmc@) - bump minor this makes some ports using tgamma possible; also consistifies behavior across openbsd/ieee and openbsd/non-ieee, and other operating systems much thanks sthen@, johan@, steven@, Simon Kuhnle, Wiktor Izdebski for testing ok millert@
Revision 1.6 / (download) - annotate - [select for diffs], Wed Jul 12 07:26:08 2006 UTC (17 years, 11 months ago) by brad
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE,
OPENBSD_4_3,
OPENBSD_4_2_BASE,
OPENBSD_4_2,
OPENBSD_4_1_BASE,
OPENBSD_4_1,
OPENBSD_4_0_BASE,
OPENBSD_4_0
Changes since 1.5: +1 -1 lines
Diff to previous 1.5 (colored)
add some more C99 functions: round(3) and roundf(3). By Steven G. Kargl <kargl at troutmask dot apl dot washington.edu> From FreeBSD
Revision 1.5 / (download) - annotate - [select for diffs], Sat Mar 18 20:13:24 2006 UTC (18 years, 2 months ago) by brad
Branch: MAIN
Changes since 1.4: +1 -1 lines
Diff to previous 1.4 (colored)
add some more C99 functions: trunc(3) and truncf(3). From FreeBSD ok deraadt@ millert@ otto@ jmc@
Revision 1.4 / (download) - annotate - [select for diffs], Thu Nov 17 20:07:40 2005 UTC (18 years, 6 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE,
OPENBSD_3_9
Changes since 1.3: +1 -1 lines
Diff to previous 1.3 (colored)
Introduce a few c99 functions: {l,ll}{rint,round}{,f}. From NetBSD via jason@. Man page fixes by jmc@, prodding by jsg@. ok mickey@
Revision 1.3 / (download) - annotate - [select for diffs], Tue Jul 13 21:03:35 2004 UTC (19 years, 11 months ago) by marc
Branch: MAIN
CVS Tags: OPENBSD_3_8_BASE,
OPENBSD_3_8,
OPENBSD_3_7_BASE,
OPENBSD_3_7,
OPENBSD_3_6_BASE,
OPENBSD_3_6
Changes since 1.2: +1 -1 lines
Diff to previous 1.2 (colored)
errno changes, lib major version bumps, and general flag day To build you must: cd /usr/src && make obj && make includes cd lib/libc && make depend && make && NOMAN=1 sudo make install cd /usr/src && make build
Revision 1.2 / (download) - annotate - [select for diffs], Tue Dec 3 06:39:38 2002 UTC (21 years, 6 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_5_BASE,
OPENBSD_3_5,
OPENBSD_3_4_BASE,
OPENBSD_3_4,
OPENBSD_3_3_BASE,
OPENBSD_3_3
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored)
Crank all library major numbers. Needed due to the fact that we now build libraries with propolice enabled. Without this, existing binaries (such as ports/packages) that link with any system library other than libc will fail with an undefined symbol of "___guard" (__guard on ELF). Pointed out by markus@ and discussed with deraadt@
Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Wed Oct 18 08:42:45 1995 UTC (28 years, 8 months ago) by deraadt
CVS Tags: netbsd_1_1,
OPENBSD_3_2_BASE,
OPENBSD_3_2,
OPENBSD_3_1_BASE,
OPENBSD_3_1,
OPENBSD_3_0_BASE,
OPENBSD_3_0,
OPENBSD_2_9_BASE,
OPENBSD_2_9,
OPENBSD_2_8_BASE,
OPENBSD_2_8,
OPENBSD_2_7_BASE,
OPENBSD_2_7,
OPENBSD_2_6_BASE,
OPENBSD_2_6,
OPENBSD_2_5_BASE,
OPENBSD_2_5,
OPENBSD_2_4_BASE,
OPENBSD_2_4,
OPENBSD_2_3_BASE,
OPENBSD_2_3,
OPENBSD_2_2_BASE,
OPENBSD_2_2,
OPENBSD_2_1_BASE,
OPENBSD_2_1,
OPENBSD_2_0_BASE,
OPENBSD_2_0
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)
initial import of NetBSD tree
Revision 1.1 / (download) - annotate - [select for diffs], Wed Oct 18 08:42:45 1995 UTC (28 years, 8 months ago) by deraadt
Branch: MAIN
Initial revision