Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
b46bf3ff
Commit
b46bf3ff
authored
Mar 30, 2023
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcrt: Use the __sindf() implementation from the bundled musl library.
With the changes from
ee7b5ebc
.
parent
b9b19ea2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
7 additions
and
23 deletions
+7
-23
math.c
dlls/msvcrt/math.c
+1
-19
__sindf.c
libs/musl/src/math/__sindf.c
+6
-4
No files found.
dlls/msvcrt/math.c
View file @
b46bf3ff
...
...
@@ -219,25 +219,7 @@ float CDECL _chgsignf( float num )
#endif
#ifndef __i386__
/* Copied from musl: src/math/__sindf.c */
static
float
__sindf
(
double
x
)
{
static
const
double
S1
=
-
0x1
.
5555555555555
p
-
3
,
S2
=
0x1
.
1111111111111
p
-
7
,
S3
=
-
0x1
.
a01a01a01a01ap
-
13
,
S4
=
0x1
.
71
de3a556c734p
-
19
;
double
r
,
s
,
w
,
z
;
z
=
x
*
x
;
if
(
x
>
-
7.8175831586122513e-03
&&
x
<
7.8175831586122513e-03
)
return
x
*
(
1
+
S1
*
z
);
w
=
z
*
z
;
r
=
S3
+
z
*
S4
;
s
=
z
*
x
;
return
(
x
+
s
*
(
S1
+
z
*
S2
))
+
s
*
w
*
r
;
}
extern
float
__sindf
(
double
x
);
/* Copied from musl: src/math/__cosdf.c */
static
float
__cosdf
(
double
x
)
...
...
libs/musl/src/math/__sindf.c
View file @
b46bf3ff
...
...
@@ -18,10 +18,10 @@
/* |sin(x)/x - s(x)| < 2**-37.5 (~[-4.89e-12, 4.824e-12]). */
static
const
double
S1
=
-
0x1
5555554cbac77
.
0
p
-
55
,
/* -0.166666666416265235595 */
S2
=
0x1
11110896efbb2
.
0
p
-
59
,
/* 0.0083333293858894631756 */
S3
=
-
0x1
a00f9e2cae774
.
0
p
-
65
,
/* -0.000198393348360966317347 */
S4
=
0x1
6cd878c3b46a7
.
0
p
-
71
;
/* 0.0000027183114939898219064 */
S1
=
-
0x1
.
5555555555555
p
-
3
,
S2
=
0x1
.
1111111111111
p
-
7
,
S3
=
-
0x1
.
a01a01a01a01ap
-
13
,
S4
=
0x1
.
71
de3a556c734p
-
19
;
float
__sindf
(
double
x
)
{
...
...
@@ -29,6 +29,8 @@ float __sindf(double x)
/* Try to optimize for parallel evaluation as in __tandf.c. */
z
=
x
*
x
;
if
(
x
>
-
7.8175831586122513e-03
&&
x
<
7.8175831586122513e-03
)
return
x
*
(
1
+
S1
*
z
);
w
=
z
*
z
;
r
=
S3
+
z
*
S4
;
s
=
z
*
x
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment