< prev index next >
src/hotspot/cpu/x86/interp_masm_x86.cpp
Print this page
rev 58099 : 8239492: [x86] Turn MacroAssembler::verify_oop into macro recording file and line
*** 49,59 ****
}
void InterpreterMacroAssembler::profile_obj_type(Register obj, const Address& mdo_addr) {
Label update, next, none;
! verify_oop(obj);
testptr(obj, obj);
jccb(Assembler::notZero, update);
orptr(mdo_addr, TypeEntries::null_seen);
jmpb(next);
--- 49,59 ----
}
void InterpreterMacroAssembler::profile_obj_type(Register obj, const Address& mdo_addr) {
Label update, next, none;
! interp_verify_oop(obj, atos, __FILE__, __LINE__);
testptr(obj, obj);
jccb(Assembler::notZero, update);
orptr(mdo_addr, TypeEntries::null_seen);
jmpb(next);
*** 347,357 ****
const Address val_addr(rcx, JvmtiThreadState::earlyret_value_offset());
#ifdef _LP64
switch (state) {
case atos: movptr(rax, oop_addr);
movptr(oop_addr, (int32_t)NULL_WORD);
! verify_oop(rax, state); break;
case ltos: movptr(rax, val_addr); break;
case btos: // fall through
case ztos: // fall through
case ctos: // fall through
case stos: // fall through
--- 347,357 ----
const Address val_addr(rcx, JvmtiThreadState::earlyret_value_offset());
#ifdef _LP64
switch (state) {
case atos: movptr(rax, oop_addr);
movptr(oop_addr, (int32_t)NULL_WORD);
! interp_verify_oop(rax, state, __FILE__, __LINE__); break;
case ltos: movptr(rax, val_addr); break;
case btos: // fall through
case ztos: // fall through
case ctos: // fall through
case stos: // fall through
*** 368,378 ****
const Address val_addr1(rcx, JvmtiThreadState::earlyret_value_offset()
+ in_ByteSize(wordSize));
switch (state) {
case atos: movptr(rax, oop_addr);
movptr(oop_addr, NULL_WORD);
! verify_oop(rax, state); break;
case ltos:
movl(rdx, val_addr1); // fall through
case btos: // fall through
case ztos: // fall through
case ctos: // fall through
--- 368,378 ----
const Address val_addr1(rcx, JvmtiThreadState::earlyret_value_offset()
+ in_ByteSize(wordSize));
switch (state) {
case atos: movptr(rax, oop_addr);
movptr(oop_addr, NULL_WORD);
! interp_verify_oop(rax, state, __FILE__, __LINE__); break;
case ltos:
movl(rdx, val_addr1); // fall through
case btos: // fall through
case ztos: // fall through
case ctos: // fall through
*** 654,668 ****
case ftos: pop_f(xmm0); break;
case dtos: pop_d(xmm0); break;
case vtos: /* nothing to do */ break;
default: ShouldNotReachHere();
}
! verify_oop(rax, state);
}
void InterpreterMacroAssembler::push(TosState state) {
! verify_oop(rax, state);
switch (state) {
case atos: push_ptr(); break;
case btos:
case ztos:
case ctos:
--- 654,668 ----
case ftos: pop_f(xmm0); break;
case dtos: pop_d(xmm0); break;
case vtos: /* nothing to do */ break;
default: ShouldNotReachHere();
}
! interp_verify_oop(rax, state, __FILE__, __LINE__);
}
void InterpreterMacroAssembler::push(TosState state) {
! interp_verify_oop(rax, state, __FILE__, __LINE__);
switch (state) {
case atos: push_ptr(); break;
case btos:
case ztos:
case ctos:
*** 720,730 ****
}
break;
case vtos: /* nothing to do */ break;
default : ShouldNotReachHere();
}
! verify_oop(rax, state);
}
void InterpreterMacroAssembler::push_l(Register lo, Register hi) {
push(hi);
--- 720,730 ----
}
break;
case vtos: /* nothing to do */ break;
default : ShouldNotReachHere();
}
! interp_verify_oop(rax, state, __FILE__, __LINE__);
}
void InterpreterMacroAssembler::push_l(Register lo, Register hi) {
push(hi);
*** 743,753 ****
fstp_d(Address(rsp, 0));
}
void InterpreterMacroAssembler::push(TosState state) {
! verify_oop(rax, state);
switch (state) {
case atos: push_ptr(rax); break;
case btos: // fall through
case ztos: // fall through
case ctos: // fall through
--- 743,753 ----
fstp_d(Address(rsp, 0));
}
void InterpreterMacroAssembler::push(TosState state) {
! interp_verify_oop(rax, state, __FILE__, __LINE__);
switch (state) {
case atos: push_ptr(rax); break;
case btos: // fall through
case ztos: // fall through
case ctos: // fall through
*** 842,852 ****
jcc(Assembler::greaterEqual, L);
stop("broken stack frame");
bind(L);
}
if (verifyoop) {
! verify_oop(rax, state);
}
address* const safepoint_table = Interpreter::safept_table(state);
#ifdef _LP64
Label no_safepoint, dispatch;
--- 842,852 ----
jcc(Assembler::greaterEqual, L);
stop("broken stack frame");
bind(L);
}
if (verifyoop) {
! interp_verify_oop(rax, state, __FILE__, __LINE__);
}
address* const safepoint_table = Interpreter::safept_table(state);
#ifdef _LP64
Label no_safepoint, dispatch;
*** 1957,1969 ****
}
}
! void InterpreterMacroAssembler::verify_oop(Register reg, TosState state) {
if (state == atos) {
! MacroAssembler::verify_oop(reg);
}
}
void InterpreterMacroAssembler::verify_FPU(int stack_depth, TosState state) {
#ifndef _LP64
--- 1957,1969 ----
}
}
! void InterpreterMacroAssembler::interp_verify_oop(Register reg, TosState state, const char* file, int line) {
if (state == atos) {
! MacroAssembler::_verify_oop(reg, "broken oop", file, line);
}
}
void InterpreterMacroAssembler::verify_FPU(int stack_depth, TosState state) {
#ifndef _LP64
< prev index next >