diff options
author | Rich Felker <dalias@aerifal.cx> | 2012-11-15 08:37:58 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2012-11-15 08:37:58 -0500 |
commit | 8bb181622222f2ee3462c8b021bcae4fcdbbd37a (patch) | |
tree | 166a1be834c8cd5a4c2521d41d7ee506bd8c8e51 /src/complex/csqrt.c | |
parent | 22781b4d8ecaf97ac52d2a501a2e7d3bc1920ce0 (diff) | |
parent | 68847ecd3a644d3ffd9be58603be1a3fa437dff0 (diff) | |
download | musl-8bb181622222f2ee3462c8b021bcae4fcdbbd37a.tar.gz musl-8bb181622222f2ee3462c8b021bcae4fcdbbd37a.tar.bz2 musl-8bb181622222f2ee3462c8b021bcae4fcdbbd37a.tar.xz musl-8bb181622222f2ee3462c8b021bcae4fcdbbd37a.zip |
Merge remote-tracking branch 'nsz/math'
Diffstat (limited to 'src/complex/csqrt.c')
-rw-r--r-- | src/complex/csqrt.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/complex/csqrt.c b/src/complex/csqrt.c index 21fb879d..8a2ba608 100644 --- a/src/complex/csqrt.c +++ b/src/complex/csqrt.c @@ -51,12 +51,12 @@ double complex csqrt(double complex z) /* Handle special cases. */ if (z == 0) - return cpack(0, b); + return CMPLX(0, b); if (isinf(b)) - return cpack(INFINITY, b); + return CMPLX(INFINITY, b); if (isnan(a)) { t = (b - b) / (b - b); /* raise invalid if b is not a NaN */ - return cpack(a, t); /* return NaN + NaN i */ + return CMPLX(a, t); /* return NaN + NaN i */ } if (isinf(a)) { /* @@ -66,9 +66,9 @@ double complex csqrt(double complex z) * csqrt(-inf + y i) = 0 + inf i */ if (signbit(a)) - return cpack(fabs(b - b), copysign(a, b)); + return CMPLX(fabs(b - b), copysign(a, b)); else - return cpack(a, copysign(b - b, b)); + return CMPLX(a, copysign(b - b, b)); } /* * The remaining special case (b is NaN) is handled just fine by @@ -87,10 +87,10 @@ double complex csqrt(double complex z) /* Algorithm 312, CACM vol 10, Oct 1967. */ if (a >= 0) { t = sqrt((a + hypot(a, b)) * 0.5); - result = cpack(t, b / (2 * t)); + result = CMPLX(t, b / (2 * t)); } else { t = sqrt((-a + hypot(a, b)) * 0.5); - result = cpack(fabs(b) / (2 * t), copysign(t, b)); + result = CMPLX(fabs(b) / (2 * t), copysign(t, b)); } /* Rescale. */ |