mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-14 01:00:07 +00:00
Backport fix for broken trig functions
This commit is contained in:
parent
0428bae673
commit
f495bb0484
@ -527,3 +527,11 @@ include/features.h
|
||||
types, this is irrelevant in Google's depot, but leads to different type
|
||||
signatures for functions that are problematic with C++ modules.
|
||||
(klimek, google-local)
|
||||
|
||||
math/auto-libm-test-in
|
||||
math/auto-libm-test-out
|
||||
sysdeps/ieee754/dbl-64/s_sin.c
|
||||
sysdeps/x86_64/fpu/libm-test-ulps
|
||||
For b/25873705, backport fix for broken trig functions (PR16623)
|
||||
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1cadc85813d736f7682fa2eeadae639ab6b66c65
|
||||
(stanshebs, backport)
|
||||
|
@ -474,6 +474,7 @@ cos 0x1.0000010b239a9p0
|
||||
cos 0x1.00000162a932bp0
|
||||
cos 0x1.000002d452a10p0
|
||||
cos 0x1.000005bc7d86dp0
|
||||
cos 0x1.200145a975ce6p32
|
||||
cos 1
|
||||
cos 2
|
||||
cos 3
|
||||
@ -1373,6 +1374,7 @@ sin 7
|
||||
sin 8
|
||||
sin 9
|
||||
sin 10
|
||||
sin 0x1.2001469775ce6p32
|
||||
|
||||
sincos 0
|
||||
sincos -0
|
||||
|
@ -47298,6 +47298,75 @@ cos 0x1.000005bc7d86dp0
|
||||
= cos tonearest ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
|
||||
= cos towardzero ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
|
||||
= cos upward ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92358p-4L : inexact-ok
|
||||
cos 0x1.200145a975ce6p32
|
||||
= cos downward flt-32 0x1.200146p+32f : -0xf.74fbep-4f : inexact-ok
|
||||
= cos tonearest flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok
|
||||
= cos towardzero flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok
|
||||
= cos upward flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok
|
||||
= cos downward dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe5p-4 : inexact-ok
|
||||
= cos tonearest dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe5p-4 : inexact-ok
|
||||
= cos towardzero dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe48p-4 : inexact-ok
|
||||
= cos upward dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe48p-4 : inexact-ok
|
||||
= cos downward ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0dp-4L : inexact-ok
|
||||
= cos tonearest ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
|
||||
= cos towardzero ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
|
||||
= cos upward ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
|
||||
= cos downward ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0dp-4L : inexact-ok
|
||||
= cos tonearest ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
|
||||
= cos towardzero ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
|
||||
= cos upward ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok
|
||||
= cos downward ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59e8p-4L : inexact-ok
|
||||
= cos tonearest ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59e8p-4L : inexact-ok
|
||||
= cos towardzero ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59ep-4L : inexact-ok
|
||||
= cos upward ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59ep-4L : inexact-ok
|
||||
= cos downward ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef5cp-4L : inexact-ok
|
||||
= cos tonearest ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok
|
||||
= cos towardzero ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok
|
||||
= cos upward ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok
|
||||
= cos downward flt-32 0x1.200144p+32f : 0xf.bc96cp-4f : inexact-ok
|
||||
= cos tonearest flt-32 0x1.200144p+32f : 0xf.bc96dp-4f : inexact-ok
|
||||
= cos towardzero flt-32 0x1.200144p+32f : 0xf.bc96cp-4f : inexact-ok
|
||||
= cos upward flt-32 0x1.200144p+32f : 0xf.bc96dp-4f : inexact-ok
|
||||
= cos downward dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok
|
||||
= cos tonearest dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok
|
||||
= cos towardzero dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok
|
||||
= cos upward dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658bp-4 : inexact-ok
|
||||
= cos downward ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
|
||||
= cos tonearest ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
|
||||
= cos towardzero ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
|
||||
= cos upward ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
|
||||
= cos downward ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
|
||||
= cos tonearest ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
|
||||
= cos towardzero ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok
|
||||
= cos upward ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok
|
||||
= cos downward ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok
|
||||
= cos tonearest ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok
|
||||
= cos towardzero ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok
|
||||
= cos upward ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fb8p-4L : inexact-ok
|
||||
= cos downward ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8cp-4L : inexact-ok
|
||||
= cos tonearest ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a9p-4L : inexact-ok
|
||||
= cos towardzero ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8cp-4L : inexact-ok
|
||||
= cos upward ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a9p-4L : inexact-ok
|
||||
= cos downward dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffdp-4 : inexact-ok
|
||||
= cos tonearest dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok
|
||||
= cos towardzero dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok
|
||||
= cos upward dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok
|
||||
= cos downward ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe8p-4L : inexact-ok
|
||||
= cos tonearest ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
|
||||
= cos towardzero ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
|
||||
= cos upward ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
|
||||
= cos downward ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe8p-4L : inexact-ok
|
||||
= cos tonearest ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
|
||||
= cos towardzero ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
|
||||
= cos upward ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok
|
||||
= cos downward ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e8p-4L : inexact-ok
|
||||
= cos tonearest ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok
|
||||
= cos towardzero ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok
|
||||
= cos upward ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok
|
||||
= cos downward ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726842p-4L : inexact-ok
|
||||
= cos tonearest ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok
|
||||
= cos towardzero ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok
|
||||
= cos upward ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok
|
||||
cos 1
|
||||
= cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
|
||||
= cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
|
||||
@ -115514,6 +115583,75 @@ sin 10
|
||||
= sin tonearest ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be025p-4L : inexact-ok
|
||||
= sin towardzero ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok
|
||||
= sin upward ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok
|
||||
sin 0x1.2001469775ce6p32
|
||||
= sin downward flt-32 0x1.200148p+32f : -0x5.595d8p-4f : inexact-ok
|
||||
= sin tonearest flt-32 0x1.200148p+32f : -0x5.595d8p-4f : inexact-ok
|
||||
= sin towardzero flt-32 0x1.200148p+32f : -0x5.595d78p-4f : inexact-ok
|
||||
= sin upward flt-32 0x1.200148p+32f : -0x5.595d78p-4f : inexact-ok
|
||||
= sin downward dbl-64 0x1.200148p+32 : -0x5.595d7e536fe38p-4 : inexact-ok
|
||||
= sin tonearest dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok
|
||||
= sin towardzero dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok
|
||||
= sin upward dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok
|
||||
= sin downward ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35eep-4L : inexact-ok
|
||||
= sin tonearest ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
|
||||
= sin towardzero ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
|
||||
= sin upward ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
|
||||
= sin downward ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35eep-4L : inexact-ok
|
||||
= sin tonearest ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
|
||||
= sin towardzero ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
|
||||
= sin upward ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok
|
||||
= sin downward ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d944p-4L : inexact-ok
|
||||
= sin tonearest ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok
|
||||
= sin towardzero ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok
|
||||
= sin upward ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok
|
||||
= sin downward ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9dap-4L : inexact-ok
|
||||
= sin tonearest ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9dap-4L : inexact-ok
|
||||
= sin towardzero ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d8p-4L : inexact-ok
|
||||
= sin upward ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d8p-4L : inexact-ok
|
||||
= sin downward flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok
|
||||
= sin tonearest flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok
|
||||
= sin towardzero flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok
|
||||
= sin upward flt-32 0x1.200146p+32f : 0x4.220ff8p-4f : inexact-ok
|
||||
= sin downward dbl-64 0x1.200146p+32 : 0x4.220ff25f5cfp-4 : inexact-ok
|
||||
= sin tonearest dbl-64 0x1.200146p+32 : 0x4.220ff25f5cf04p-4 : inexact-ok
|
||||
= sin towardzero dbl-64 0x1.200146p+32 : 0x4.220ff25f5cfp-4 : inexact-ok
|
||||
= sin upward dbl-64 0x1.200146p+32 : 0x4.220ff25f5cf04p-4 : inexact-ok
|
||||
= sin downward ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
|
||||
= sin tonearest ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
|
||||
= sin towardzero ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
|
||||
= sin upward ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
|
||||
= sin downward ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
|
||||
= sin tonearest ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
|
||||
= sin towardzero ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok
|
||||
= sin upward ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok
|
||||
= sin downward ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok
|
||||
= sin tonearest ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok
|
||||
= sin towardzero ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok
|
||||
= sin upward ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cc4p-4L : inexact-ok
|
||||
= sin downward ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok
|
||||
= sin tonearest ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok
|
||||
= sin towardzero ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok
|
||||
= sin upward ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ep-4L : inexact-ok
|
||||
= sin downward dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019fcp-4 : inexact-ok
|
||||
= sin tonearest dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok
|
||||
= sin towardzero dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok
|
||||
= sin upward dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok
|
||||
= sin downward ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f6p-4L : inexact-ok
|
||||
= sin tonearest ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
|
||||
= sin towardzero ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
|
||||
= sin upward ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
|
||||
= sin downward ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f6p-4L : inexact-ok
|
||||
= sin tonearest ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
|
||||
= sin towardzero ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
|
||||
= sin upward ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok
|
||||
= sin downward ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca70604p-4L : inexact-ok
|
||||
= sin tonearest ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
|
||||
= sin towardzero ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
|
||||
= sin upward ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
|
||||
= sin downward ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca708p-4L : inexact-ok
|
||||
= sin tonearest ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
|
||||
= sin towardzero ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
|
||||
= sin upward ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok
|
||||
sincos 0
|
||||
= sincos downward flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
|
||||
= sincos tonearest flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
|
||||
|
@ -447,19 +447,21 @@ __sin (double x)
|
||||
}
|
||||
else
|
||||
{
|
||||
double t;
|
||||
if (a > 0)
|
||||
{
|
||||
m = 1;
|
||||
t = a;
|
||||
db = da;
|
||||
}
|
||||
else
|
||||
{
|
||||
m = 0;
|
||||
a = -a;
|
||||
t = -a;
|
||||
db = -da;
|
||||
}
|
||||
u.x = big + a;
|
||||
y = a - (u.x - big);
|
||||
u.x = big + t;
|
||||
y = t - (u.x - big);
|
||||
res = do_sin (u, y, db, &cor);
|
||||
cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
|
||||
retval = ((res == res + cor) ? ((m) ? res : -res)
|
||||
@ -671,19 +673,21 @@ __cos (double x)
|
||||
}
|
||||
else
|
||||
{
|
||||
double t;
|
||||
if (a > 0)
|
||||
{
|
||||
m = 1;
|
||||
t = a;
|
||||
db = da;
|
||||
}
|
||||
else
|
||||
{
|
||||
m = 0;
|
||||
a = -a;
|
||||
t = -a;
|
||||
db = -da;
|
||||
}
|
||||
u.x = big + a;
|
||||
y = a - (u.x - big);
|
||||
u.x = big + t;
|
||||
y = t - (u.x - big);
|
||||
res = do_sin (u, y, db, &cor);
|
||||
cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
|
||||
retval = ((res == res + cor) ? ((m) ? res : -res)
|
||||
|
@ -7356,6 +7356,14 @@ idouble: 1
|
||||
Test "cos_downward (0x1.0c152382d7365p+0)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "cos_downward (0x1.200145a975ce6p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "cos_downward (0x1.200146p+32)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "cos_downward (0x1.921fb4p+0)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
@ -7582,6 +7590,9 @@ idouble: 1
|
||||
Test "cos_towardzero (0x1.0c152382d7365p+0)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "cos_towardzero (0x1.200146p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "cos_towardzero (0x1.921fb4p+0)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
@ -7714,6 +7725,17 @@ idouble: 1
|
||||
Test "cos_upward (0x1.0c1524p+0)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "cos_upward (0x1.200144p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "cos_upward (0x1.200145a975ce6p+32)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "cos_upward (0x1.200146p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "cos_upward (0x1.921fb4p+0)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
@ -11556,6 +11578,19 @@ double: 1
|
||||
idouble: 1
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_downward (0x1.2001469775ce6p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_downward (0x1.200146p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "sin_downward (0x1.200148p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_downward (0x1.921fb54442d18468p+0)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
@ -11784,6 +11819,9 @@ double: 1
|
||||
idouble: 1
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_towardzero (0x1.200146p+32)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
Test "sin_towardzero (0x1.921fb54442d18468p+0)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
@ -11933,6 +11971,12 @@ ldouble: 1
|
||||
Test "sin_upward (-0x8.60a92p-4)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_upward (0x1.2001469775ce6p+32)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_upward (0x1.200148p+32)":
|
||||
ildouble: 1
|
||||
ldouble: 1
|
||||
Test "sin_upward (0x1.921fb4p+0)":
|
||||
double: 1
|
||||
idouble: 1
|
||||
|
Loading…
Reference in New Issue
Block a user