< prev index next >
src/hotspot/cpu/x86/interp_masm_x86.cpp
Print this page
@@ -25,11 +25,10 @@
#include "precompiled.hpp"
#include "interp_masm_x86.hpp"
#include "interpreter/interpreter.hpp"
#include "interpreter/interpreterRuntime.hpp"
#include "logging/log.hpp"
-#include "memory/vtBuffer.hpp"
#include "oops/arrayOop.hpp"
#include "oops/markOop.hpp"
#include "oops/methodData.hpp"
#include "oops/method.hpp"
#include "oops/valueKlass.hpp"
@@ -1122,47 +1121,10 @@
should_not_reach_here();
bind(no_reserved_zone_enabling);
}
- if (ValueTypesBufferMaxMemory > 0) {
- // Code below is taking care of recycling TLVB memory, no safepoint should
- // occur between this point and the end of the remove_activation() method
- Label vtbuffer_slow, vtbuffer_done, no_buffered_value_returned;
- const Register thread1 = NOT_LP64(rcx) LP64_ONLY(r15_thread);
- const uintptr_t chunk_mask = VTBufferChunk::chunk_mask();
- NOT_LP64(get_thread(thread1));
- cmpptr(Address(thread1, JavaThread::return_buffered_value_offset()), (intptr_t)NULL_WORD);
- jcc(Assembler::equal, no_buffered_value_returned);
- movptr(rbx, Address(rbp, frame::interpreter_frame_vt_alloc_ptr_offset * wordSize));
- call_VM_leaf(CAST_FROM_FN_PTR(address,
- InterpreterRuntime::return_value_step2), rax, rbx);
- NOT_LP64(get_thread(thread1));
- get_vm_result(rax, thread1);
- jmp(vtbuffer_done);
- bind(no_buffered_value_returned);
- movptr(rbx, Address(rbp, frame::interpreter_frame_vt_alloc_ptr_offset * wordSize));
- NOT_LP64(get_thread(thread1));
- movptr(rcx, Address(thread1, JavaThread::vt_alloc_ptr_offset()));
- cmpptr(rbx, rcx);
- jcc(Assembler::equal, vtbuffer_done);
- andptr(rbx, chunk_mask);
- andptr(rcx, chunk_mask);
- cmpptr(rbx, rcx);
- jcc(Assembler::notEqual, vtbuffer_slow);
- movptr(rbx, Address(rbp, frame::interpreter_frame_vt_alloc_ptr_offset * wordSize));
- movptr(Address(thread1, JavaThread::vt_alloc_ptr_offset()), rbx);
- jmp(vtbuffer_done);
- bind(vtbuffer_slow);
- push(state);
- movptr(rbx, Address(rbp, frame::interpreter_frame_vt_alloc_ptr_offset * wordSize));
- call_VM_leaf(CAST_FROM_FN_PTR(address,
- InterpreterRuntime::recycle_vtbuffer), rbx);
- pop(state);
- bind(vtbuffer_done);
- }
-
// remove activation
// get sender sp
movptr(rbx,
Address(rbp, frame::interpreter_frame_sender_sp_offset * wordSize));
< prev index next >