diff -r b91b558a9076 -r ef5d5d343e2a src/hotspot/share/runtime/handles.inline.hpp --- a/src/hotspot/share/runtime/handles.inline.hpp Fri Mar 16 08:26:53 2018 -0400 +++ b/src/hotspot/share/runtime/handles.inline.hpp Fri Mar 16 09:12:13 2018 -0400 @@ -104,4 +104,13 @@ debug_only(area->_handle_mark_nesting--); } +inline HandleMarkCleaner::HandleMarkCleaner(Thread* thread) { + _thread = thread; + _thread->last_handle_mark()->push(); +} + +inline HandleMarkCleaner::~HandleMarkCleaner() { + _thread->last_handle_mark()->pop_and_restore(); +} + #endif // SHARE_VM_RUNTIME_HANDLES_INLINE_HPP