diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/ieee754/dbl-64/s_sin.c | 31 |
2 files changed, 19 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog index 73b2ed0e5e..dec058d7a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2016-08-30 Siddhesh Poyarekar <siddhesh@sourceware.org> + + * sysdeps/ieee754/dbl-64/s_sin.c (reduce_and_compute): + Consolidate switch cases 0 and 2. + 2016-08-29 Paul E. Murphy <murphyp@linux.vnet.ibm.com> * math/Makefile (libm-gen-calls): Add cpow, clog, clog10, cexp, cproj. diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c index 7c9a07990f..e1ee7a980b 100644 --- a/sysdeps/ieee754/dbl-64/s_sin.c +++ b/sysdeps/ieee754/dbl-64/s_sin.c @@ -249,23 +249,20 @@ reduce_and_compute (double x, unsigned int k) k = (n + k) % 4; switch (k) { - case 0: - if (a * a < 0.01588) - retval = bsloww (a, da, x, n); - else - retval = bsloww1 (a, da, x, n); - break; - case 2: - if (a * a < 0.01588) - retval = bsloww (-a, -da, x, n); - else - retval = bsloww1 (-a, -da, x, n); - break; - - case 1: - case 3: - retval = bsloww2 (a, da, x, n); - break; + case 2: + a = -a; + da = -da; + case 0: + if (a * a < 0.01588) + retval = bsloww (a, da, x, n); + else + retval = bsloww1 (a, da, x, n); + break; + + case 1: + case 3: + retval = bsloww2 (a, da, x, n); + break; } return retval; } |