summaryrefslogtreecommitdiff
path: root/src/complex
AgeCommit message (Collapse)AuthorFilesLines
2018-04-09fix wrong result in casin and many related complex functionsRich Felker3-3/+6
the factor of -i noted in the comment at the top of casin.c was omitted from the actual code, yielding a result rotated 90 degrees and propagating into errors in other functions defined in terms of casin. implement multiplication by -i as a rotation of the real and imaginary parts of the result, rather than by actual multiplication, since the latter cannot be optimized without knowledge that the operand is finite. here, the rotation is the actual intent, anyway.
2015-05-01complex: fix ctanh(+-0+i*nan) and ctanh(+-0+-i*inf)Szabolcs Nagy2-2/+4
These cases were incorrect in C11 as described by http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1886.htm
2012-11-13complex: add C11 CMPLX macros and replace cpack with themSzabolcs Nagy45-138/+138
2012-03-22add creal/cimag macros in complex.h (and use them in the functions defs)Rich Felker6-12/+9
2012-03-13first commit of the new libm!Rich Felker68-0/+2024
thanks to the hard work of Szabolcs Nagy (nsz), identifying the best (from correctness and license standpoint) implementations from freebsd and openbsd and cleaning them up! musl should now fully support c99 float and long double math functions, and has near-complete complex math support. tgmath should also work (fully on gcc-compatible compilers, and mostly on any c99 compiler). based largely on commit 0376d44a890fea261506f1fc63833e7a686dca19 from nsz's libm git repo, with some additions (dummy versions of a few missing long double complex functions, etc.) by me. various cleanups still need to be made, including re-adding (if they're correct) some asm functions that were dropped.