···11-diff -rupN a/elf/rtld.c b/elf/rtld.c
22---- a/elf/rtld.c 2013-08-11 00:52:55.000000001 +0200
33-+++ b/elf/rtld.c 2014-02-18 13:56:19.000000001 +0100
44-@@ -1639,7 +1639,7 @@ ERROR: ld.so: object '%s' cannot be load
11+diff -ru glibc-2.20-orig/elf/rtld.c glibc-2.20/elf/rtld.c
22+--- glibc-2.20-orig/elf/rtld.c 2014-09-07 10:09:09.000000000 +0200
33++++ glibc-2.20/elf/rtld.c 2014-10-27 11:32:25.203043157 +0100
44+@@ -1513,7 +1513,7 @@
55 open(). So we do this first. If it succeeds we do almost twice
66 the work but this does not matter, since it is not for production
77 use. */
88- static const char preload_file[] = "/etc/ld.so.preload";
99+ static const char preload_file[] = "/etc/ld-nix.so.preload";
1010- if (__builtin_expect (__access (preload_file, R_OK) == 0, 0))
1010+ if (__glibc_unlikely (__access (preload_file, R_OK) == 0))
1111 {
1212 /* Read the contents of the file. */
-336
pkgs/development/libraries/glibc/fix-math.patch
···11-From: Siddhesh Poyarekar <siddhesh@redhat.com>
22-Date: Thu, 27 Feb 2014 15:42:09 +0000 (+0530)
33-Subject: Fix sign of input to bsloww1 (BZ #16623)
44-X-Git-Url: http://repo.or.cz/w/glibc.git/commitdiff_plain/1cadc85813d736f7682fa2eeadae639ab6b66c65
55-66-Fix sign of input to bsloww1 (BZ #16623)
77-88-In 84ba214c, I removed some redundant sign computations and in the
99-process, I incorrectly got rid of a temporary variable, thus passing
1010-the absolute value of the input to bsloww1. This caused #16623.
1111-1212-This fix undoes the incorrect change.
1313-1414-[nix]: drop docs update (wouldn't apply)
1515----
1616-1717-diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
1818-index ac5348f..fafe96f 100644
1919---- a/math/auto-libm-test-in
2020-+++ b/math/auto-libm-test-in
2121-@@ -594,6 +594,7 @@ cos 0x1.0000010b239a9p0
2222- cos 0x1.00000162a932bp0
2323- cos 0x1.000002d452a10p0
2424- cos 0x1.000005bc7d86dp0
2525-+cos 0x1.200145a975ce6p32
2626- cos 1
2727- cos 2
2828- cos 3
2929-@@ -1748,6 +1749,7 @@ sin 7
3030- sin 8
3131- sin 9
3232- sin 10
3333-+sin 0x1.2001469775ce6p32
3434-3535- sincos 0
3636- sincos -0
3737-diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out
3838-index 8f79359..59c08a7 100644
3939---- a/math/auto-libm-test-out
4040-+++ b/math/auto-libm-test-out
4141-@@ -74446,6 +74446,75 @@ cos 0x1.000005bc7d86dp0
4242- = cos tonearest ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
4343- = cos towardzero ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
4444- = cos upward ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92358p-4L : inexact-ok
4545-+cos 0x1.200145a975ce6p32
4646-+= cos downward flt-32 0x1.200146p+32f : -0xf.74fbep-4f : inexact-ok
4747-+= cos tonearest flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok
4848-+= cos towardzero flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok
4949-+= cos upward flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok
5050-+= cos downward dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe5p-4 : inexact-ok
5151-+= cos tonearest dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe5p-4 : inexact-ok
5252-+= cos towardzero dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe48p-4 : inexact-ok
5353-+= cos upward dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe48p-4 : inexact-ok
5454-+= cos downward ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0dp-4L : inexact-ok
5555-+= cos tonearest ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
5656-+= cos towardzero ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
5757-+= cos upward ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
5858-+= cos downward ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0dp-4L : inexact-ok
5959-+= cos tonearest ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
6060-+= cos towardzero ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
6161-+= cos upward ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
6262-+= cos downward ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59e8p-4L : inexact-ok
6363-+= cos tonearest ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59e8p-4L : inexact-ok
6464-+= cos towardzero ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59ep-4L : inexact-ok
6565-+= cos upward ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59ep-4L : inexact-ok
6666-+= cos downward ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef5cp-4L : inexact-ok
6767-+= cos tonearest ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok
6868-+= cos towardzero ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok
6969-+= cos upward ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok
7070-+= cos downward flt-32 0x1.200144p+32f : 0xf.bc96cp-4f : inexact-ok
7171-+= cos tonearest flt-32 0x1.200144p+32f : 0xf.bc96dp-4f : inexact-ok
7272-+= cos towardzero flt-32 0x1.200144p+32f : 0xf.bc96cp-4f : inexact-ok
7373-+= cos upward flt-32 0x1.200144p+32f : 0xf.bc96dp-4f : inexact-ok
7474-+= cos downward dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok
7575-+= cos tonearest dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok
7676-+= cos towardzero dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok
7777-+= cos upward dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658bp-4 : inexact-ok
7878-+= cos downward ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
7979-+= cos tonearest ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
8080-+= cos towardzero ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
8181-+= cos upward ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
8282-+= cos downward ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
8383-+= cos tonearest ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
8484-+= cos towardzero ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
8585-+= cos upward ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
8686-+= cos downward ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok
8787-+= cos tonearest ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok
8888-+= cos towardzero ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok
8989-+= cos upward ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fb8p-4L : inexact-ok
9090-+= cos downward ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8cp-4L : inexact-ok
9191-+= cos tonearest ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a9p-4L : inexact-ok
9292-+= cos towardzero ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8cp-4L : inexact-ok
9393-+= cos upward ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a9p-4L : inexact-ok
9494-+= cos downward dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffdp-4 : inexact-ok
9595-+= cos tonearest dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok
9696-+= cos towardzero dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok
9797-+= cos upward dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok
9898-+= cos downward ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe8p-4L : inexact-ok
9999-+= cos tonearest ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
100100-+= cos towardzero ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
101101-+= cos upward ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
102102-+= cos downward ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe8p-4L : inexact-ok
103103-+= cos tonearest ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
104104-+= cos towardzero ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
105105-+= cos upward ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
106106-+= cos downward ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e8p-4L : inexact-ok
107107-+= cos tonearest ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok
108108-+= cos towardzero ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok
109109-+= cos upward ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok
110110-+= cos downward ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726842p-4L : inexact-ok
111111-+= cos tonearest ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok
112112-+= cos towardzero ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok
113113-+= cos upward ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok
114114- cos 1
115115- = cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
116116- = cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
117117-@@ -157744,6 +157813,75 @@ sin 10
118118- = sin tonearest ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be025p-4L : inexact-ok
119119- = sin towardzero ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok
120120- = sin upward ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok
121121-+sin 0x1.2001469775ce6p32
122122-+= sin downward flt-32 0x1.200148p+32f : -0x5.595d8p-4f : inexact-ok
123123-+= sin tonearest flt-32 0x1.200148p+32f : -0x5.595d8p-4f : inexact-ok
124124-+= sin towardzero flt-32 0x1.200148p+32f : -0x5.595d78p-4f : inexact-ok
125125-+= sin upward flt-32 0x1.200148p+32f : -0x5.595d78p-4f : inexact-ok
126126-+= sin downward dbl-64 0x1.200148p+32 : -0x5.595d7e536fe38p-4 : inexact-ok
127127-+= sin tonearest dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok
128128-+= sin towardzero dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok
129129-+= sin upward dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok
130130-+= sin downward ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35eep-4L : inexact-ok
131131-+= sin tonearest ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
132132-+= sin towardzero ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
133133-+= sin upward ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
134134-+= sin downward ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35eep-4L : inexact-ok
135135-+= sin tonearest ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
136136-+= sin towardzero ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
137137-+= sin upward ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
138138-+= sin downward ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d944p-4L : inexact-ok
139139-+= sin tonearest ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok
140140-+= sin towardzero ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok
141141-+= sin upward ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok
142142-+= sin downward ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9dap-4L : inexact-ok
143143-+= sin tonearest ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9dap-4L : inexact-ok
144144-+= sin towardzero ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d8p-4L : inexact-ok
145145-+= sin upward ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d8p-4L : inexact-ok
146146-+= sin downward flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok
147147-+= sin tonearest flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok
148148-+= sin towardzero flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok
149149-+= sin upward flt-32 0x1.200146p+32f : 0x4.220ff8p-4f : inexact-ok
150150-+= sin downward dbl-64 0x1.200146p+32 : 0x4.220ff25f5cfp-4 : inexact-ok
151151-+= sin tonearest dbl-64 0x1.200146p+32 : 0x4.220ff25f5cf04p-4 : inexact-ok
152152-+= sin towardzero dbl-64 0x1.200146p+32 : 0x4.220ff25f5cfp-4 : inexact-ok
153153-+= sin upward dbl-64 0x1.200146p+32 : 0x4.220ff25f5cf04p-4 : inexact-ok
154154-+= sin downward ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
155155-+= sin tonearest ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
156156-+= sin towardzero ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
157157-+= sin upward ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
158158-+= sin downward ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
159159-+= sin tonearest ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
160160-+= sin towardzero ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
161161-+= sin upward ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
162162-+= sin downward ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok
163163-+= sin tonearest ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok
164164-+= sin towardzero ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok
165165-+= sin upward ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cc4p-4L : inexact-ok
166166-+= sin downward ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok
167167-+= sin tonearest ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok
168168-+= sin towardzero ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok
169169-+= sin upward ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ep-4L : inexact-ok
170170-+= sin downward dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019fcp-4 : inexact-ok
171171-+= sin tonearest dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok
172172-+= sin towardzero dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok
173173-+= sin upward dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok
174174-+= sin downward ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f6p-4L : inexact-ok
175175-+= sin tonearest ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
176176-+= sin towardzero ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
177177-+= sin upward ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
178178-+= sin downward ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f6p-4L : inexact-ok
179179-+= sin tonearest ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
180180-+= sin towardzero ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
181181-+= sin upward ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
182182-+= sin downward ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca70604p-4L : inexact-ok
183183-+= sin tonearest ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
184184-+= sin towardzero ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
185185-+= sin upward ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
186186-+= sin downward ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca708p-4L : inexact-ok
187187-+= sin tonearest ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
188188-+= sin towardzero ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
189189-+= sin upward ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
190190- sincos 0
191191- = sincos downward flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
192192- = sincos tonearest flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
193193-diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c
194194-index 6105e9f..50109b8 100644
195195---- a/sysdeps/ieee754/dbl-64/s_sin.c
196196-+++ b/sysdeps/ieee754/dbl-64/s_sin.c
197197-@@ -447,19 +447,21 @@ __sin (double x)
198198- }
199199- else
200200- {
201201-+ double t;
202202- if (a > 0)
203203- {
204204- m = 1;
205205-+ t = a;
206206- db = da;
207207- }
208208- else
209209- {
210210- m = 0;
211211-- a = -a;
212212-+ t = -a;
213213- db = -da;
214214- }
215215-- u.x = big + a;
216216-- y = a - (u.x - big);
217217-+ u.x = big + t;
218218-+ y = t - (u.x - big);
219219- res = do_sin (u, y, db, &cor);
220220- cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
221221- retval = ((res == res + cor) ? ((m) ? res : -res)
222222-@@ -671,19 +673,21 @@ __cos (double x)
223223- }
224224- else
225225- {
226226-+ double t;
227227- if (a > 0)
228228- {
229229- m = 1;
230230-+ t = a;
231231- db = da;
232232- }
233233- else
234234- {
235235- m = 0;
236236-- a = -a;
237237-+ t = -a;
238238- db = -da;
239239- }
240240-- u.x = big + a;
241241-- y = a - (u.x - big);
242242-+ u.x = big + t;
243243-+ y = t - (u.x - big);
244244- res = do_sin (u, y, db, &cor);
245245- cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
246246- retval = ((res == res + cor) ? ((m) ? res : -res)
247247-diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
248248-index f3980f8..544f1c7 100644
249249---- a/sysdeps/x86_64/fpu/libm-test-ulps
250250-+++ b/sysdeps/x86_64/fpu/libm-test-ulps
251251-@@ -10900,6 +10900,14 @@ idouble: 1
252252- Test "cos_downward (0x1.0c152382d7365p+0)":
253253- double: 1
254254- idouble: 1
255255-+Test "cos_downward (0x1.200145a975ce6p+32)":
256256-+double: 1
257257-+idouble: 1
258258-+ildouble: 1
259259-+ldouble: 1
260260-+Test "cos_downward (0x1.200146p+32)":
261261-+ildouble: 1
262262-+ldouble: 1
263263- Test "cos_downward (0x1.921fb4p+0)":
264264- ildouble: 1
265265- ldouble: 1
266266-@@ -11126,6 +11134,9 @@ idouble: 1
267267- Test "cos_towardzero (0x1.0c152382d7365p+0)":
268268- double: 1
269269- idouble: 1
270270-+Test "cos_towardzero (0x1.200146p+32)":
271271-+double: 1
272272-+idouble: 1
273273- Test "cos_towardzero (0x1.921fb4p+0)":
274274- ildouble: 1
275275- ldouble: 1
276276-@@ -11258,6 +11269,17 @@ idouble: 1
277277- Test "cos_upward (0x1.0c1524p+0)":
278278- double: 1
279279- idouble: 1
280280-+Test "cos_upward (0x1.200144p+32)":
281281-+double: 1
282282-+idouble: 1
283283-+Test "cos_upward (0x1.200145a975ce6p+32)":
284284-+ildouble: 1
285285-+ldouble: 1
286286-+Test "cos_upward (0x1.200146p+32)":
287287-+double: 1
288288-+idouble: 1
289289-+ildouble: 1
290290-+ldouble: 1
291291- Test "cos_upward (0x1.921fb4p+0)":
292292- double: 1
293293- idouble: 1
294294-@@ -15155,6 +15177,19 @@ double: 1
295295- idouble: 1
296296- ildouble: 1
297297- ldouble: 1
298298-+Test "sin_downward (0x1.2001469775ce6p+32)":
299299-+double: 1
300300-+idouble: 1
301301-+ildouble: 1
302302-+ldouble: 1
303303-+Test "sin_downward (0x1.200146p+32)":
304304-+double: 1
305305-+idouble: 1
306306-+Test "sin_downward (0x1.200148p+32)":
307307-+double: 1
308308-+idouble: 1
309309-+ildouble: 1
310310-+ldouble: 1
311311- Test "sin_downward (0x1.921fb54442d18468p+0)":
312312- ildouble: 1
313313- ldouble: 1
314314-@@ -15383,6 +15418,9 @@ double: 1
315315- idouble: 1
316316- ildouble: 1
317317- ldouble: 1
318318-+Test "sin_towardzero (0x1.200146p+32)":
319319-+double: 1
320320-+idouble: 1
321321- Test "sin_towardzero (0x1.921fb54442d18468p+0)":
322322- ildouble: 1
323323- ldouble: 1
324324-@@ -15532,6 +15570,12 @@ ldouble: 1
325325- Test "sin_upward (-0x8.60a92p-4)":
326326- ildouble: 1
327327- ldouble: 1
328328-+Test "sin_upward (0x1.2001469775ce6p+32)":
329329-+ildouble: 1
330330-+ldouble: 1
331331-+Test "sin_upward (0x1.200148p+32)":
332332-+ildouble: 1
333333-+ldouble: 1
334334- Test "sin_upward (0x1.921fb4p+0)":
335335- double: 1
336336- idouble: 1