< prev index next >

src/hotspot/share/interpreter/interpreterRuntime.hpp

Print this page

        

*** 35,44 **** --- 35,50 ---- #include "utilities/macros.hpp" // The InterpreterRuntime is called by the interpreter for everything // that cannot/should not be dealt with in assembly and needs C support. + struct FrameInfo { + address pc; + address fp; + address sp; + }; + class InterpreterRuntime: AllStatic { friend class BytecodeClosure; // for method and bcp friend class PrintingClosure; // for method and bcp private:
*** 167,176 **** --- 173,188 ---- static bool is_breakpoint(JavaThread *thread) { return Bytecodes::code_or_bp_at(LastFrameAccessor(thread).bcp()) == Bytecodes::_breakpoint; } // Safepoints static void at_safepoint(JavaThread* thread); + // Continuation + static void freeze(JavaThread* thread, FrameInfo* fi, oop context); + static void pop_and_thaw0(JavaThread* thread, FrameInfo* fi, int num_frames, bool pop); + static void pop_and_thaw(JavaThread* thread, FrameInfo* fi, int num_frames); + static void thaw(JavaThread* thread, FrameInfo* fi, int num_frames); + // Debugger support static void post_field_access(JavaThread *thread, oopDesc* obj, ConstantPoolCacheEntry *cp_entry); static void post_field_modification(JavaThread *thread, oopDesc* obj, ConstantPoolCacheEntry *cp_entry, jvalue *value);
< prev index next >