Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Musl
提交
b03255af
T
Third Party Musl
项目概览
OpenHarmony
/
Third Party Musl
接近 2 年 前同步成功
通知
37
Star
125
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Musl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
b03255af
编写于
3月 19, 2012
作者:
N
nsz
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix remainder*.c: remove useless long double cast
上级
4caa17b2
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
6 addition
and
15 deletion
+6
-15
src/math/remainder.c
src/math/remainder.c
+4
-8
src/math/remainderf.c
src/math/remainderf.c
+2
-7
未找到文件。
src/math/remainder.c
浏览文件 @
b03255af
...
...
@@ -20,8 +20,6 @@
#include "libm.h"
static
const
double
zero
=
0
.
0
;
double
remainder
(
double
x
,
double
p
)
{
int32_t
hx
,
hp
;
...
...
@@ -35,17 +33,15 @@ double remainder(double x, double p)
hx
&=
0x7fffffff
;
/* purge off exception values */
if
((
hp
|
lp
)
==
0
)
/* p = 0 */
return
(
x
*
p
)
/
(
x
*
p
);
if
(
hx
>=
0x7ff00000
||
/* x not finite */
if
((
hp
|
lp
)
==
0
||
/* p = 0 */
hx
>=
0x7ff00000
||
/* x not finite */
(
hp
>=
0x7ff00000
&&
(
hp
-
0x7ff00000
|
lp
)
!=
0
))
/* p is NaN */
// FIXME: why long double?
return
((
long
double
)
x
*
p
)
/
((
long
double
)
x
*
p
);
return
(
x
*
p
)
/
(
x
*
p
);
if
(
hp
<=
0x7fdfffff
)
x
=
fmod
(
x
,
p
+
p
);
/* now x < 2p */
if
(((
hx
-
hp
)
|
(
lx
-
lp
))
==
0
)
return
zero
*
x
;
return
0
.
0
*
x
;
x
=
fabs
(
x
);
p
=
fabs
(
p
);
if
(
hp
<
0x00200000
)
{
...
...
src/math/remainderf.c
浏览文件 @
b03255af
...
...
@@ -15,8 +15,6 @@
#include "libm.h"
static
const
float
zero
=
0
.
0
;
float
remainderf
(
float
x
,
float
p
)
{
int32_t
hx
,
hp
;
...
...
@@ -30,16 +28,13 @@ float remainderf(float x, float p)
hx
&=
0x7fffffff
;
/* purge off exception values */
if
(
hp
==
0
)
/* p = 0
*/
if
(
hp
==
0
||
hx
>=
0x7f800000
||
hp
>
0x7f800000
)
/* p = 0, x not finite, p is NaN
*/
return
(
x
*
p
)
/
(
x
*
p
);
if
(
hx
>=
0x7f800000
||
hp
>
0x7f800000
)
/* x not finite, p is NaN */
// FIXME: why long double?
return
((
long
double
)
x
*
p
)
/
((
long
double
)
x
*
p
);
if
(
hp
<=
0x7effffff
)
x
=
fmodf
(
x
,
p
+
p
);
/* now x < 2p */
if
(
hx
-
hp
==
0
)
return
zero
*
x
;
return
0
.
0
f
*
x
;
x
=
fabsf
(
x
);
p
=
fabsf
(
p
);
if
(
hp
<
0x01000000
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录