Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_hotspot
提交
37eb65df
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看板
提交
37eb65df
编写于
2月 27, 2018
作者:
A
asaha
浏览文件
操作
浏览文件
下载
差异文件
Merge
上级
b089fcdb
b9db1a21
变更
4
显示空白变更内容
内联
并排
Showing
4 changed file
with
38 addition
and
3 deletion
+38
-3
.hgtags
.hgtags
+1
-0
src/cpu/zero/vm/methodHandles_zero.cpp
src/cpu/zero/vm/methodHandles_zero.cpp
+6
-0
src/share/vm/interpreter/bytecodeInterpreter.cpp
src/share/vm/interpreter/bytecodeInterpreter.cpp
+26
-3
test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java
test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java
+5
-0
未找到文件。
.hgtags
浏览文件 @
37eb65df
...
@@ -1139,6 +1139,7 @@ ebfd57cc21e6b7f0c22b17c666b6b28c9340e207 jdk8u171-b01
...
@@ -1139,6 +1139,7 @@ ebfd57cc21e6b7f0c22b17c666b6b28c9340e207 jdk8u171-b01
08326a76b14888908523cf2bb1105de63b43544d jdk8u171-b05
08326a76b14888908523cf2bb1105de63b43544d jdk8u171-b05
4e1445535b6d9c25ed34aba2768139da283847d0 jdk8u171-b06
4e1445535b6d9c25ed34aba2768139da283847d0 jdk8u171-b06
fd0e42431b94c889b3fea8d8aad048f51d559761 jdk8u171-b07
fd0e42431b94c889b3fea8d8aad048f51d559761 jdk8u171-b07
56123fdca84a3b253b8ea6f72be85bd2ebf39fd0 jdk8u171-b08
f299cf0b7baea1ae85f139f97adb9ab5499f402a jdk8u172-b00
f299cf0b7baea1ae85f139f97adb9ab5499f402a jdk8u172-b00
d10254debf7c1342416062bf1ba5258f16a8ce00 jdk8u172-b01
d10254debf7c1342416062bf1ba5258f16a8ce00 jdk8u172-b01
653d9e0cd3f4023675c9eece7f0d563287f1d34f jdk8u172-b02
653d9e0cd3f4023675c9eece7f0d563287f1d34f jdk8u172-b02
...
...
src/cpu/zero/vm/methodHandles_zero.cpp
浏览文件 @
37eb65df
...
@@ -180,3 +180,9 @@ address MethodHandles::generate_method_handle_interpreter_entry(MacroAssembler*
...
@@ -180,3 +180,9 @@ address MethodHandles::generate_method_handle_interpreter_entry(MacroAssembler*
return
NULL
;
return
NULL
;
}
}
}
}
#ifndef PRODUCT
void
MethodHandles
::
trace_method_handle
(
MacroAssembler
*
_masm
,
const
char
*
adaptername
)
{
// This is just a stub.
}
#endif //PRODUCT
src/share/vm/interpreter/bytecodeInterpreter.cpp
浏览文件 @
37eb65df
...
@@ -2569,13 +2569,35 @@ run:
...
@@ -2569,13 +2569,35 @@ run:
// this could definitely be cleaned up QQQ
// this could definitely be cleaned up QQQ
Method
*
callee
;
Method
*
callee
;
Klass
*
iclass
=
cache
->
f1_as_klass
();
Method
*
interface_method
=
cache
->
f2_as_interface_method
();
// InstanceKlass* interface = (InstanceKlass*) iclass;
InstanceKlass
*
iclass
=
interface_method
->
method_holder
();
// get receiver
// get receiver
int
parms
=
cache
->
parameter_size
();
int
parms
=
cache
->
parameter_size
();
oop
rcvr
=
STACK_OBJECT
(
-
parms
);
oop
rcvr
=
STACK_OBJECT
(
-
parms
);
CHECK_NULL
(
rcvr
);
CHECK_NULL
(
rcvr
);
InstanceKlass
*
int2
=
(
InstanceKlass
*
)
rcvr
->
klass
();
InstanceKlass
*
int2
=
(
InstanceKlass
*
)
rcvr
->
klass
();
// Receiver subtype check against resolved interface klass (REFC).
{
Klass
*
refc
=
cache
->
f1_as_klass
();
itableOffsetEntry
*
scan
;
for
(
scan
=
(
itableOffsetEntry
*
)
int2
->
start_of_itable
();
scan
->
interface_klass
()
!=
NULL
;
scan
++
)
{
if
(
scan
->
interface_klass
()
==
refc
)
{
break
;
}
}
// Check that the entry is non-null. A null entry means
// that the receiver class doesn't implement the
// interface, and wasn't the same as when the caller was
// compiled.
if
(
scan
->
interface_klass
()
==
NULL
)
{
VM_JAVA_ERROR
(
vmSymbols
::
java_lang_IncompatibleClassChangeError
(),
""
,
note_no_trap
);
}
}
itableOffsetEntry
*
ki
=
(
itableOffsetEntry
*
)
int2
->
start_of_itable
();
itableOffsetEntry
*
ki
=
(
itableOffsetEntry
*
)
int2
->
start_of_itable
();
int
i
;
int
i
;
for
(
i
=
0
;
i
<
int2
->
itable_length
()
;
i
++
,
ki
++
)
{
for
(
i
=
0
;
i
<
int2
->
itable_length
()
;
i
++
,
ki
++
)
{
...
@@ -2587,7 +2609,8 @@ run:
...
@@ -2587,7 +2609,8 @@ run:
if
(
i
==
int2
->
itable_length
())
{
if
(
i
==
int2
->
itable_length
())
{
VM_JAVA_ERROR
(
vmSymbols
::
java_lang_IncompatibleClassChangeError
(),
""
,
note_no_trap
);
VM_JAVA_ERROR
(
vmSymbols
::
java_lang_IncompatibleClassChangeError
(),
""
,
note_no_trap
);
}
}
int
mindex
=
cache
->
f2_as_index
();
int
mindex
=
interface_method
->
itable_index
();
itableMethodEntry
*
im
=
ki
->
first_method_entry
(
rcvr
->
klass
());
itableMethodEntry
*
im
=
ki
->
first_method_entry
(
rcvr
->
klass
());
callee
=
im
[
mindex
].
method
();
callee
=
im
[
mindex
].
method
();
if
(
callee
==
NULL
)
{
if
(
callee
==
NULL
)
{
...
...
test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java
浏览文件 @
37eb65df
...
@@ -37,6 +37,11 @@ import java.util.List;
...
@@ -37,6 +37,11 @@ import java.util.List;
public
class
CompressedClassSpaceSizeInJmapHeap
{
public
class
CompressedClassSpaceSizeInJmapHeap
{
public
static
void
main
(
String
[]
args
)
throws
Exception
{
public
static
void
main
(
String
[]
args
)
throws
Exception
{
if
(!
Platform
.
shouldSAAttach
())
{
System
.
out
.
println
(
"SA attach not expected to work - test skipped."
);
return
;
}
String
pid
=
Integer
.
toString
(
ProcessTools
.
getProcessId
());
String
pid
=
Integer
.
toString
(
ProcessTools
.
getProcessId
());
JDKToolLauncher
jmap
=
JDKToolLauncher
.
create
(
"jmap"
)
JDKToolLauncher
jmap
=
JDKToolLauncher
.
create
(
"jmap"
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录