about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@sourceware.org>2016-07-18 22:33:09 +0530
committerSiddhesh Poyarekar <siddhesh@sourceware.org>2016-07-18 22:33:09 +0530
commitcbf88869edced4b23d792d95a8626e35b831df35 (patch)
treeb1ed5b36db2734e3dc0d4bcb4b6051630f7cbd0d /elf
parent2413e73c32fc36470885ae548631e081d66f4201 (diff)
downloadglibc-cbf88869edced4b23d792d95a8626e35b831df35.tar.gz
glibc-cbf88869edced4b23d792d95a8626e35b831df35.tar.xz
glibc-cbf88869edced4b23d792d95a8626e35b831df35.zip
Fix cos computation for multiple precision fallback (bz #20357)
During the sincos consolidation I made two mistakes, one was a logical
error due to which cos(0x1.8475e5afd4481p+0) returned
sin(0x1.8475e5afd4481p+0) instead.

The second issue was an error in negating inputs for the correct
quadrants for sine.  I could not find a suitable test case for this
despite running a program to search for such an input for a couple of
hours.

Following patch fixes both issues.  Tested on x86_64.  Thanks to Matt
Clay for identifying the issue.

	[BZ #20357]
	* sysdeps/ieee754/dbl-64/s_sin.c (sloww): Fix up condition
	to call __mpsin/__mpcos and to negate values.
	* math/auto-libm-test-in: Add test.
	* math/auto-libm-test-out: Regenerate.
Diffstat (limited to 'elf')
0 files changed, 0 insertions, 0 deletions