Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell11
提交
66f919ba
D
dragonwell11
项目概览
openanolis
/
dragonwell11
通知
7
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell11
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
66f919ba
编写于
3月 06, 2019
作者:
L
lucy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8219214: Infinite Loop in CodeSection::dump()
Reviewed-by: kvn, thartmann
上级
9a9900af
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
1 addition
and
40 deletion
+1
-40
src/hotspot/share/asm/codeBuffer.cpp
src/hotspot/share/asm/codeBuffer.cpp
+1
-37
src/hotspot/share/asm/codeBuffer.hpp
src/hotspot/share/asm/codeBuffer.hpp
+0
-3
未找到文件。
src/hotspot/share/asm/codeBuffer.cpp
浏览文件 @
66f919ba
/*
* Copyright (c) 1997, 201
8
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 201
9
, Oracle and/or its affiliates. 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
...
...
@@ -1029,26 +1029,10 @@ void CodeBuffer::log_section_sizes(const char* name) {
#ifndef PRODUCT
void
CodeSection
::
dump
()
{
address
ptr
=
start
();
for
(
csize_t
step
;
ptr
<
end
();
ptr
+=
step
)
{
step
=
end
()
-
ptr
;
if
(
step
>
jintSize
*
4
)
step
=
jintSize
*
4
;
tty
->
print
(
INTPTR_FORMAT
": "
,
p2i
(
ptr
));
while
(
step
>
0
)
{
tty
->
print
(
" "
PTR32_FORMAT
,
*
(
jint
*
)
ptr
);
ptr
+=
jintSize
;
}
tty
->
cr
();
}
}
void
CodeSection
::
decode
()
{
Disassembler
::
decode
(
start
(),
end
());
}
void
CodeBuffer
::
block_comment
(
intptr_t
offset
,
const
char
*
comment
)
{
_code_strings
.
add_comment
(
offset
,
comment
);
}
...
...
@@ -1205,26 +1189,6 @@ void CodeBuffer::decode() {
_decode_begin
=
insts_end
();
}
void
CodeBuffer
::
skip_decode
()
{
_decode_begin
=
insts_end
();
}
void
CodeBuffer
::
decode_all
()
{
ttyLocker
ttyl
;
for
(
int
n
=
0
;
n
<
(
int
)
SECT_LIMIT
;
n
++
)
{
// dump contents of each section
CodeSection
*
cs
=
code_section
(
n
);
tty
->
print_cr
(
"! %s:"
,
code_section_name
(
n
));
if
(
cs
!=
consts
())
cs
->
decode
();
else
cs
->
dump
();
}
}
void
CodeSection
::
print
(
const
char
*
name
)
{
csize_t
locs_size
=
locs_end
()
-
locs_start
();
tty
->
print_cr
(
" %7s.code = "
PTR_FORMAT
" : "
PTR_FORMAT
" : "
PTR_FORMAT
" (%d of %d)%s"
,
...
...
src/hotspot/share/asm/codeBuffer.hpp
浏览文件 @
66f919ba
...
...
@@ -240,7 +240,6 @@ class CodeSection {
#ifndef PRODUCT
void
decode
();
void
dump
();
void
print
(
const
char
*
name
);
#endif //PRODUCT
};
...
...
@@ -649,8 +648,6 @@ class CodeBuffer: public StackObj {
// Printing / Decoding
// decodes from decode_begin() to code_end() and sets decode_begin to end
void
decode
();
void
decode_all
();
// decodes all the code
void
skip_decode
();
// sets decode_begin to code_end();
void
print
();
#endif
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录