summaryrefslogtreecommitdiffstats
path: root/lib/msun/src/s_cimagf.c
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate __real__ and __imag__ gccisms.das2009-03-141-1/+3
|
* Use cpack() and the gcc extension __imag__ to implement cimag() anddas2008-08-071-1/+2
| | | | | | | | | | | | conj() instead of using expressions like z * I. The latter is bad for several reasons: 1. It is implemented using arithmetic, which is unnecessary, and can generate floating point exceptions, contrary to the requirements on these functions. 2. gcc implements complex multiplication using a formula that breaks down for infinities, e.g., it gives INFINITY * I == nan + inf I.
* Add implementations for cimag{,f,l}, creal{,f,l} and conj{,f,l}. They arestefanf2004-05-301-0/+35
needed for cases where GCC's builtin functions cannot be used and for compilers that don't know about them. Approved by: das (mentor)
OpenPOWER on IntegriCloud