8202978: Incorrect tmp register passed to MacroAssembler::load_mirror()
Reviewed-by: kvn, coleenp
This commit is contained in:
parent
01b0f9ea7d
commit
81494ca92d
@ -6276,6 +6276,8 @@ void MacroAssembler::restore_cpu_control_state_after_jni() {
|
||||
|
||||
// ((OopHandle)result).resolve();
|
||||
void MacroAssembler::resolve_oop_handle(Register result, Register tmp) {
|
||||
assert_different_registers(result, tmp);
|
||||
|
||||
// Only 64 bit platforms support GCs that require a tmp register
|
||||
// Only IN_HEAP loads require a thread_tmp register
|
||||
// OopHandle::resolve is an indirection like jobject.
|
||||
|
@ -973,7 +973,7 @@ address TemplateInterpreterGenerator::generate_native_entry(bool synchronized) {
|
||||
__ testl(t, JVM_ACC_STATIC);
|
||||
__ jcc(Assembler::zero, L);
|
||||
// get mirror
|
||||
__ load_mirror(t, method);
|
||||
__ load_mirror(t, method, rax);
|
||||
// copy mirror into activation frame
|
||||
__ movptr(Address(rbp, frame::interpreter_frame_oop_temp_offset * wordSize),
|
||||
t);
|
||||
|
Loading…
Reference in New Issue
Block a user