Consolidate reduce_and_compute code

This patch reshuffles the reduce_and_compute code so that the
structure matches other code structures of the same type elsewhere in
s_sin.c and s_sincos.c.  This is the beginning of an attempt to
consolidate and reduce code duplication in functions in s_sin.c to
make it easier to read and possibly also easier for the compiler to
optimize.

	* sysdeps/ieee754/dbl-64/s_sin.c (reduce_and_compute):
	Consolidate switch cases 0 and 2.
This commit is contained in:
Siddhesh Poyarekar 2016-08-30 12:51:39 +05:30
parent feb62ddacb
commit 32efd690bd
2 changed files with 18 additions and 16 deletions

View File

@ -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.

View File

@ -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 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;
case 1:
case 3:
retval = bsloww2 (a, da, x, n);
break;
}
return retval;
}