diff options
Diffstat (limited to 'winsup/mingw/mingwex/complex/csqrtl.c')
-rwxr-xr-x | winsup/mingw/mingwex/complex/csqrtl.c | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/winsup/mingw/mingwex/complex/csqrtl.c b/winsup/mingw/mingwex/complex/csqrtl.c deleted file mode 100755 index 1b2ebbe5b..000000000 --- a/winsup/mingw/mingwex/complex/csqrtl.c +++ /dev/null @@ -1,55 +0,0 @@ -/* csqrtl.c */ -/* - Contributed by Danny Smith - 2005-01-04 -*/ - -#include <math.h> -#include <complex.h> - -long double complex csqrtl (long double complex Z) -{ - long double complex Res; - long double r; - long double x = __real__ Z; - long double y = __imag__ Z; - - if (y == 0.0L) - { - if (x < 0.0L) - { - __real__ Res = 0.0L; - __imag__ Res = sqrtl (-x); - } - else - { - __real__ Res = sqrtl (x); - __imag__ Res = 0.0L; - } - } - - else if (x == 0.0L) - { - r = sqrtl(0.5L * fabsl (y)); - __real__ Res = r; - __imag__ Res = y > 0 ? r : -r; - } - - else - { - long double t = sqrtl (2.0L * (hypotl (__real__ Z, __imag__ Z) + fabsl (x))); - long double u = t / 2.0L; - if ( x > 0.0L) - { - __real__ Res = u; - __imag__ Res = y / t; - } - else - { - __real__ Res = fabsl (y / t); - __imag__ Res = y < 0 ? -u : u; - } - } - - return Res; -} |