Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_hotspot
提交
51cc59a7
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
51cc59a7
编写于
1月 13, 2009
作者:
N
never
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6791132: bad control in autobox split code
Reviewed-by: kvn
上级
02028b8e
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
4 addition
and
3 deletion
+4
-3
src/share/vm/opto/memnode.cpp
src/share/vm/opto/memnode.cpp
+4
-3
未找到文件。
src/share/vm/opto/memnode.cpp
浏览文件 @
51cc59a7
...
...
@@ -1076,13 +1076,14 @@ Node* LoadNode::eliminate_autobox(PhaseGVN* phase) {
// of the original value.
Node
*
mem_phi
=
in
(
Memory
);
Node
*
offset
=
in
(
Address
)
->
in
(
AddPNode
::
Offset
);
Node
*
region
=
base
->
in
(
0
);
Node
*
in1
=
clone
();
Node
*
in1_addr
=
in1
->
in
(
Address
)
->
clone
();
in1_addr
->
set_req
(
AddPNode
::
Base
,
base
->
in
(
allocation_index
));
in1_addr
->
set_req
(
AddPNode
::
Address
,
base
->
in
(
allocation_index
));
in1_addr
->
set_req
(
AddPNode
::
Offset
,
offset
);
in1
->
set_req
(
0
,
base
->
in
(
allocation_index
));
in1
->
set_req
(
0
,
region
->
in
(
allocation_index
));
in1
->
set_req
(
Address
,
in1_addr
);
in1
->
set_req
(
Memory
,
mem_phi
->
in
(
allocation_index
));
...
...
@@ -1091,7 +1092,7 @@ Node* LoadNode::eliminate_autobox(PhaseGVN* phase) {
in2_addr
->
set_req
(
AddPNode
::
Base
,
base
->
in
(
load_index
));
in2_addr
->
set_req
(
AddPNode
::
Address
,
base
->
in
(
load_index
));
in2_addr
->
set_req
(
AddPNode
::
Offset
,
offset
);
in2
->
set_req
(
0
,
base
->
in
(
load_index
));
in2
->
set_req
(
0
,
region
->
in
(
load_index
));
in2
->
set_req
(
Address
,
in2_addr
);
in2
->
set_req
(
Memory
,
mem_phi
->
in
(
load_index
));
...
...
@@ -1100,7 +1101,7 @@ Node* LoadNode::eliminate_autobox(PhaseGVN* phase) {
in2_addr
=
phase
->
transform
(
in2_addr
);
in2
=
phase
->
transform
(
in2
);
PhiNode
*
result
=
PhiNode
::
make_blank
(
base
->
in
(
0
)
,
this
);
PhiNode
*
result
=
PhiNode
::
make_blank
(
region
,
this
);
result
->
set_req
(
allocation_index
,
in1
);
result
->
set_req
(
load_index
,
in2
);
return
result
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录