Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_hotspot
提交
116fbe14
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看板
提交
116fbe14
编写于
3月 09, 2017
作者:
A
asaha
浏览文件
操作
浏览文件
下载
差异文件
Merge
上级
8dad8f43
380ba9b2
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
67 addition
and
4 deletion
+67
-4
.hgtags
.hgtags
+4
-0
src/os/windows/vm/os_windows.cpp
src/os/windows/vm/os_windows.cpp
+2
-3
src/share/vm/opto/loopnode.cpp
src/share/vm/opto/loopnode.cpp
+9
-1
test/compiler/loopopts/TestCountedLoopSafepointBackedge.java
test/compiler/loopopts/TestCountedLoopSafepointBackedge.java
+52
-0
未找到文件。
.hgtags
浏览文件 @
116fbe14
...
@@ -956,5 +956,9 @@ ef90c721a4e59b01ca36f25619010a1afe9ed4d5 jdk8u131-b02
...
@@ -956,5 +956,9 @@ ef90c721a4e59b01ca36f25619010a1afe9ed4d5 jdk8u131-b02
dab1d597165207e14b6886b1823c1e990bc776a3 jdk8u131-b04
dab1d597165207e14b6886b1823c1e990bc776a3 jdk8u131-b04
c965fc1aa840a0903709ad69aa0e2100330ccd84 jdk8u131-b05
c965fc1aa840a0903709ad69aa0e2100330ccd84 jdk8u131-b05
6e4cfbc7534f83902692132efb61683528c04a59 jdk8u131-b06
6e4cfbc7534f83902692132efb61683528c04a59 jdk8u131-b06
5b3cb4fbdbc7bdeb7c78a8703c3084ce068f6691 jdk8u131-b07
db221c0a423e776bec5c3198d11d3f26827bd786 jdk8u131-b08
56e71d16083904ceddfdd1d66312582a42781646 jdk8u131-b09
1da23ae49386608550596502d90a381ee6c1dfaa jdk8u131-b10
692bc6b674dcab72453de08ee9da0856a7e41c0f jdk8u141-b00
692bc6b674dcab72453de08ee9da0856a7e41c0f jdk8u141-b00
2d5100bddeb80cf767485b787fc3051311e3d7b9 jdk8u151-b00
2d5100bddeb80cf767485b787fc3051311e3d7b9 jdk8u151-b00
src/os/windows/vm/os_windows.cpp
浏览文件 @
116fbe14
/*
/*
* Copyright (c) 1997, 201
4
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 201
6
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -1747,8 +1747,7 @@ void os::win32::print_windows_version(outputStream* st) {
...
@@ -1747,8 +1747,7 @@ void os::win32::print_windows_version(outputStream* st) {
if
(
is_workstation
)
{
if
(
is_workstation
)
{
st
->
print
(
"10"
);
st
->
print
(
"10"
);
}
else
{
}
else
{
// The server version name of Windows 10 is not known at this time
st
->
print
(
"Server 2016"
);
st
->
print
(
"%d.%d"
,
major_version
,
minor_version
);
}
}
break
;
break
;
...
...
src/share/vm/opto/loopnode.cpp
浏览文件 @
116fbe14
...
@@ -278,8 +278,16 @@ bool PhaseIdealLoop::is_counted_loop( Node *x, IdealLoopTree *loop ) {
...
@@ -278,8 +278,16 @@ bool PhaseIdealLoop::is_counted_loop( Node *x, IdealLoopTree *loop ) {
return
false
;
return
false
;
// Allow funny placement of Safepoint
// Allow funny placement of Safepoint
if
(
back_control
->
Opcode
()
==
Op_SafePoint
)
if
(
back_control
->
Opcode
()
==
Op_SafePoint
)
{
if
(
UseCountedLoopSafepoints
)
{
// Leaving the safepoint on the backedge and creating a
// CountedLoop will confuse optimizations. We can't move the
// safepoint around because its jvm state wouldn't match a new
// location. Give up on that loop.
return
false
;
}
back_control
=
back_control
->
in
(
TypeFunc
::
Control
);
back_control
=
back_control
->
in
(
TypeFunc
::
Control
);
}
// Controlling test for loop
// Controlling test for loop
Node
*
iftrue
=
back_control
;
Node
*
iftrue
=
back_control
;
...
...
test/compiler/loopopts/TestCountedLoopSafepointBackedge.java
0 → 100644
浏览文件 @
116fbe14
/*
* Copyright (c) 2016, Red Hat, Inc. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* @test
* @bug 8161147
* @summary Safepoint on backedge breaks UseCountedLoopSafepoints
* @run main/othervm -XX:-BackgroundCompilation -XX:-UseOnStackReplacement -XX:+UseCountedLoopSafepoints TestCountedLoopSafepointBackedge
*
*/
public
class
TestCountedLoopSafepointBackedge
{
static
void
test
(
int
[]
arr
,
int
inc
)
{
int
i
=
0
;
for
(;;)
{
for
(
int
j
=
0
;
j
<
10
;
j
++);
arr
[
i
]
=
i
;
i
++;
if
(
i
>=
100
)
{
break
;
}
for
(
int
j
=
0
;
j
<
10
;
j
++);
}
}
static
public
void
main
(
String
[]
args
)
{
int
[]
arr
=
new
int
[
100
];
for
(
int
i
=
0
;
i
<
20000
;
i
++)
{
test
(
arr
,
1
);
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录