< prev index next >

src/hotspot/share/classfile/javaClasses.hpp

Print this page

        

*** 917,926 **** --- 917,977 ---- // Accessors for statics static jlong clock(); static void set_clock(jlong value); }; + // Interface to java.lang.Continuation objects + + class java_lang_Continuation: AllStatic { + friend class JavaClasses; + + private: + static void compute_offsets(); + static Method* get_stack_method(); + public: + enum { + hc_lastFP_offset = 0, + hc_lastSP_offset = 11, + hc_parentSP_offset = 1, + hc_parentFP_offset = 3, + hc_target_offset = 13, + hc_parent_offset = 14, + hc_stack_offset = 15, + + hc_reg0_offset = 5, + hc_reg1_offset = 7, + hc_reg2_offset = 9, + }; + + static int target_offset; + static int parent_offset; + static int parentSP_offset; + static int parentFP_offset; + static int stack_offset; + static int lastFP_offset; + static int lastSP_offset; + + static int reg0_offset; + static int reg1_offset; + static int reg2_offset; + + static Method* stack_method; + + // Accessors + static inline oop target(oop ref); + static inline oop parent(oop ref); + static inline arrayOop stack(oop ref); + static inline jint lastFP(oop ref); + static inline jint lastSP(oop ref); + static inline jlong parentFP(oop ref); + static inline jlong parentSP(oop ref); + + static inline int stack_size(oop ref); + static inline void* stack_base(oop ref); + static bool on_local_stack(oop ref, address adr); + }; + // Interface to java.lang.invoke.MethodHandle objects class MethodHandleEntry; class java_lang_invoke_MethodHandle: AllStatic {
< prev index next >