Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_hotspot
提交
f8d4bcb8
D
dragonwell8_hotspot
项目概览
openanolis
/
dragonwell8_hotspot
通知
2
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_hotspot
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
f8d4bcb8
编写于
7月 31, 2014
作者:
R
roland
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8054054: 8040121 is broken
Summary: C++ code pattern from 8040121 is incorrect Reviewed-by: kvn
上级
02c05fb8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
14 addition
and
7 deletion
+14
-7
src/share/vm/opto/output.cpp
src/share/vm/opto/output.cpp
+4
-2
src/share/vm/runtime/sharedRuntimeMath.hpp
src/share/vm/runtime/sharedRuntimeMath.hpp
+10
-5
未找到文件。
src/share/vm/opto/output.cpp
浏览文件 @
f8d4bcb8
...
@@ -783,7 +783,8 @@ void Compile::FillLocArray( int idx, MachSafePointNode* sfpt, Node *local,
...
@@ -783,7 +783,8 @@ void Compile::FillLocArray( int idx, MachSafePointNode* sfpt, Node *local,
// grow downwards in all implementations.
// grow downwards in all implementations.
// (If, on some machine, the interpreter's Java locals or stack
// (If, on some machine, the interpreter's Java locals or stack
// were to grow upwards, the embedded doubles would be word-swapped.)
// were to grow upwards, the embedded doubles would be word-swapped.)
jlong_accessor
acc
=
{
jlong_cast
(
d
)
};
jlong_accessor
acc
;
acc
.
long_value
=
jlong_cast
(
d
);
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
1
]));
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
1
]));
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
0
]));
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
0
]));
#endif
#endif
...
@@ -802,7 +803,8 @@ void Compile::FillLocArray( int idx, MachSafePointNode* sfpt, Node *local,
...
@@ -802,7 +803,8 @@ void Compile::FillLocArray( int idx, MachSafePointNode* sfpt, Node *local,
// grow downwards in all implementations.
// grow downwards in all implementations.
// (If, on some machine, the interpreter's Java locals or stack
// (If, on some machine, the interpreter's Java locals or stack
// were to grow upwards, the embedded doubles would be word-swapped.)
// were to grow upwards, the embedded doubles would be word-swapped.)
jlong_accessor
acc
=
{
d
};
jlong_accessor
acc
;
acc
.
long_value
=
d
;
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
1
]));
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
1
]));
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
0
]));
array
->
append
(
new
ConstantIntValue
(
acc
.
words
[
0
]));
#endif
#endif
...
...
src/share/vm/runtime/sharedRuntimeMath.hpp
浏览文件 @
f8d4bcb8
...
@@ -42,29 +42,34 @@ typedef union {
...
@@ -42,29 +42,34 @@ typedef union {
}
DoubleIntConv
;
}
DoubleIntConv
;
static
inline
int
high
(
double
d
)
{
static
inline
int
high
(
double
d
)
{
DoubleIntConv
x
=
{
d
};
DoubleIntConv
x
;
x
.
d
=
d
;
return
x
.
split
.
hi
;
return
x
.
split
.
hi
;
}
}
static
inline
int
low
(
double
d
)
{
static
inline
int
low
(
double
d
)
{
DoubleIntConv
x
=
{
d
};
DoubleIntConv
x
;
x
.
d
=
d
;
return
x
.
split
.
lo
;
return
x
.
split
.
lo
;
}
}
static
inline
void
set_high
(
double
*
d
,
int
high
)
{
static
inline
void
set_high
(
double
*
d
,
int
high
)
{
DoubleIntConv
conv
=
{
*
d
};
DoubleIntConv
conv
;
conv
.
d
=
*
d
;
conv
.
split
.
hi
=
high
;
conv
.
split
.
hi
=
high
;
*
d
=
conv
.
d
;
*
d
=
conv
.
d
;
}
}
static
inline
void
set_low
(
double
*
d
,
int
low
)
{
static
inline
void
set_low
(
double
*
d
,
int
low
)
{
DoubleIntConv
conv
=
{
*
d
};
DoubleIntConv
conv
;
conv
.
d
=
*
d
;
conv
.
split
.
lo
=
low
;
conv
.
split
.
lo
=
low
;
*
d
=
conv
.
d
;
*
d
=
conv
.
d
;
}
}
static
double
copysignA
(
double
x
,
double
y
)
{
static
double
copysignA
(
double
x
,
double
y
)
{
DoubleIntConv
convX
=
{
x
};
DoubleIntConv
convX
;
convX
.
d
=
x
;
convX
.
split
.
hi
=
(
convX
.
split
.
hi
&
0x7fffffff
)
|
(
high
(
y
)
&
0x80000000
);
convX
.
split
.
hi
=
(
convX
.
split
.
hi
&
0x7fffffff
)
|
(
high
(
y
)
&
0x80000000
);
return
convX
.
d
;
return
convX
.
d
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录