提交 b3b77fee 编写于 作者: C coleenp

7122939: TraceBytecodes broken with UseCompressedOops

Summary: Disable verify_heapbase on sparc if TraceBytecodes because the latter uses r12 as a temp register
Reviewed-by: coleenp, phh
Contributed-by: NVolker Simonis <volker.simonis@gmail.com>
上级 66650f6f
......@@ -5968,7 +5968,9 @@ void MacroAssembler::call_VM_base(Register oop_result,
assert(number_of_arguments >= 0 , "cannot have negative number of arguments");
LP64_ONLY(assert(java_thread == r15_thread, "unexpected register"));
#ifdef ASSERT
LP64_ONLY(if (UseCompressedOops) verify_heapbase("call_VM_base");)
// TraceBytecodes does not use r12 but saves it over the call, so don't verify
// r12 is the heapbase.
LP64_ONLY(if (UseCompressedOops && !TraceBytecodes) verify_heapbase("call_VM_base");)
#endif // ASSERT
assert(java_thread != oop_result , "cannot use the same register for java_thread & oop_result");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册