2 move ldouble manipulation into arch specific headers
3 long double isnan, isinf..:
4 efficient macro versions of long double classification macros?
5 (they are ld* representation specific)
7 does inexact allowed on overflow?
8 see c99 7.12, 7.12.9.5, F.9, F.9.6.5
10 if libm.h internals is not needed (ldexp,..) then include math.h only
11 trigonometric functions:
12 __rem_pio_large: is returning 2 bits enough?
13 __tan: 3rd arg semantics is probably not optimal
14 sinf,cosf: return sindf(-y) vs -sindf(y)?
15 __sin,__cos,..: z,w,.. -> x2,x4,.. so degree is easier to see
16 __rem_pio2*: rounding trick: simply use the low 32 bits of fn?
17 use long double pi in long double code? (casin, cacos,..)
19 use strtod? c99 7.12.11.2
21 scalb is buggy, do we need the *f and *l version?
23 needs a rewrite: signed int problems, wrong <-50000 check
25 declare long double bessel functions in math.h?
26 uniform inexact exception raising:
27 (int)x == 0 and huge+x > 0 are used
28 unreachable code is not commented and hard to follow
30 int32_t -> uint32_t conversion (subtle)
32 TWO52, one, zero, twom1000,.. -> use reasonable consts
34 ldexp -> use scalbn internally (ldexp is a wrapper)
35 i386 vs precision -> assume extended prec setting
36 long double const trunc/slowness bug
37 remove "unsupported long double format" checks
40 expects single 53bit rounding
41 rewrite using long double arithmetics?
43 dekker vs long double arithmetics
46 lanczos approx as in boost/math/special_functions, python/Modules/mathmodule.c
49 optimizable creal cimag (libm.h macro for internal code?)
50 cpack(x,y) vs x+I*y vs union .a[0]=x, .a[1]=y
51 fix casin[h], cacos[h], catan[h]
52 add missing long double versions
53 test? (using mdc lib, available test vectors,..)
54 Kahan, W. "Branch Cuts for Complex Elementary Functions, or Much Ado About Nothing's Sign Bit." 1987
55 Hull, Fairgrieve, Tang "Implementing complex elementary functions using exception handling" 1994
56 Hull, Fairgrieve, Tang "Implementing the complex arcsine and arccosine functions using exception handling" 1997
58 python/Modules/cmathmodule.c (+math, cmath tests)
60 i386, x86_64 asm versions
63 special cases from c99 F.9, G.6
64 randomized test using mpfr