Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_hotspot
提交
bdd30115
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,发现更多精彩内容 >>
提交
bdd30115
编写于
7月 03, 2013
作者:
G
goetz
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8019517: PPC64 (part 102): cppInterpreter: implement G1 support
Reviewed-by: kvn
上级
5b2b8517
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
1 addition
and
16 deletion
+1
-16
src/share/vm/interpreter/bytecodeInterpreter.cpp
src/share/vm/interpreter/bytecodeInterpreter.cpp
+1
-16
未找到文件。
src/share/vm/interpreter/bytecodeInterpreter.cpp
浏览文件 @
bdd30115
...
...
@@ -30,7 +30,6 @@
#include "interpreter/bytecodeInterpreter.inline.hpp"
#include "interpreter/interpreter.hpp"
#include "interpreter/interpreterRuntime.hpp"
#include "memory/cardTableModRefBS.hpp"
#include "memory/resourceArea.hpp"
#include "oops/methodCounters.hpp"
#include "oops/objArrayKlass.hpp"
...
...
@@ -503,8 +502,6 @@ BytecodeInterpreter::run(interpreterState istate) {
interpreterState
orig
=
istate
;
#endif
static
volatile
jbyte
*
_byte_map_base
;
// adjusted card table base for oop store barrier
register
intptr_t
*
topOfStack
=
(
intptr_t
*
)
istate
->
stack
();
/* access with STACK macros */
register
address
pc
=
istate
->
bcp
();
register
jubyte
opcode
;
...
...
@@ -512,12 +509,9 @@ BytecodeInterpreter::run(interpreterState istate) {
register
ConstantPoolCache
*
cp
=
istate
->
constants
();
// method()->constants()->cache()
#ifdef LOTS_OF_REGS
register
JavaThread
*
THREAD
=
istate
->
thread
();
register
volatile
jbyte
*
BYTE_MAP_BASE
=
_byte_map_base
;
#else
#undef THREAD
#define THREAD istate->thread()
#undef BYTE_MAP_BASE
#define BYTE_MAP_BASE _byte_map_base
#endif
#ifdef USELABELS
...
...
@@ -630,9 +624,6 @@ BytecodeInterpreter::run(interpreterState istate) {
#ifdef VM_JVMTI
_jvmti_interp_events
=
JvmtiExport
::
can_post_interpreter_events
();
#endif
BarrierSet
*
bs
=
Universe
::
heap
()
->
barrier_set
();
assert
(
bs
->
kind
()
==
BarrierSet
::
CardTableModRef
,
"Wrong barrier set kind"
);
_byte_map_base
=
(
volatile
jbyte
*
)(((
CardTableModRefBS
*
)
bs
)
->
byte_map_base
);
return
;
}
break
;
...
...
@@ -1708,11 +1699,7 @@ run:
VM_JAVA_ERROR
(
vmSymbols
::
java_lang_ArrayStoreException
(),
""
);
}
}
oop
*
elem_loc
=
(
oop
*
)(((
address
)
arrObj
->
base
(
T_OBJECT
))
+
index
*
sizeof
(
oop
));
// *(oop*)(((address) arrObj->base(T_OBJECT)) + index * sizeof(oop)) = rhsObject;
*
elem_loc
=
rhsObject
;
// Mark the card
OrderAccess
::
release_store
(
&
BYTE_MAP_BASE
[(
uintptr_t
)
elem_loc
>>
CardTableModRefBS
::
card_shift
],
0
);
((
objArrayOopDesc
*
)
arrObj
)
->
obj_at_put
(
index
,
rhsObject
);
UPDATE_PC_AND_TOS_AND_CONTINUE
(
1
,
-
3
);
}
CASE
(
_bastore
)
:
...
...
@@ -2052,7 +2039,6 @@ run:
}
else
if
(
tos_type
==
atos
)
{
VERIFY_OOP
(
STACK_OBJECT
(
-
1
));
obj
->
release_obj_field_put
(
field_offset
,
STACK_OBJECT
(
-
1
));
OrderAccess
::
release_store
(
&
BYTE_MAP_BASE
[(
uintptr_t
)
obj
>>
CardTableModRefBS
::
card_shift
],
0
);
}
else
if
(
tos_type
==
btos
)
{
obj
->
release_byte_field_put
(
field_offset
,
STACK_INT
(
-
1
));
}
else
if
(
tos_type
==
ltos
)
{
...
...
@@ -2073,7 +2059,6 @@ run:
}
else
if
(
tos_type
==
atos
)
{
VERIFY_OOP
(
STACK_OBJECT
(
-
1
));
obj
->
obj_field_put
(
field_offset
,
STACK_OBJECT
(
-
1
));
OrderAccess
::
release_store
(
&
BYTE_MAP_BASE
[(
uintptr_t
)
obj
>>
CardTableModRefBS
::
card_shift
],
0
);
}
else
if
(
tos_type
==
btos
)
{
obj
->
byte_field_put
(
field_offset
,
STACK_INT
(
-
1
));
}
else
if
(
tos_type
==
ltos
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录