< prev index next >

src/hotspot/share/runtime/continuationJavaClasses.hpp

Print this page
@@ -69,14 +69,16 @@
    static inline void set_preempted(oop continuation, bool value);
  };
  
  // Interface to jdk.internal.vm.StackChunk objects
  #define STACKCHUNK_INJECTED_FIELDS(macro)                                          \
-   macro(jdk_internal_vm_StackChunk, cont,           continuation_signature, false) \
-   macro(jdk_internal_vm_StackChunk, flags,          byte_signature,         false) \
-   macro(jdk_internal_vm_StackChunk, pc,             intptr_signature,       false) \
-   macro(jdk_internal_vm_StackChunk, maxThawingSize, int_signature,          false) \
+   macro(jdk_internal_vm_StackChunk, cont,            continuation_signature, false) \
+   macro(jdk_internal_vm_StackChunk, flags,           byte_signature,         false) \
+   macro(jdk_internal_vm_StackChunk, pc,              intptr_signature,       false) \
+   macro(jdk_internal_vm_StackChunk, maxThawingSize,  int_signature,          false) \
+   macro(jdk_internal_vm_StackChunk, lockStackSize,   byte_signature,         false) \
+   macro(jdk_internal_vm_StackChunk, objectMonitor,   intptr_signature,       false) \
  
  class jdk_internal_vm_StackChunk: AllStatic {
    friend class JavaClasses;
   private:
    static int _parent_offset;

@@ -84,10 +86,12 @@
    static int _sp_offset;
    static int _pc_offset;
    static int _argsize_offset;
    static int _flags_offset;
    static int _maxThawingSize_offset;
+   static int _lockStackSize_offset;
+   static int _objectMonitor_offset;
    static int _cont_offset;
  
  
    static void compute_offsets();
   public:

@@ -121,10 +125,16 @@
    static inline bool try_set_flags(oop chunk, uint8_t expected_value, uint8_t new_value);
  
    static inline int maxThawingSize(oop chunk);
    static inline void set_maxThawingSize(oop chunk, int value);
  
+   static inline uint8_t lockStackSize(oop chunk);
+   static inline void set_lockStackSize(oop chunk, uint8_t value);
+ 
+   static inline address objectMonitor(oop chunk);
+   static inline void set_objectMonitor(oop chunk, address mon);
+ 
    // cont oop's processing is essential for the chunk's GC protocol
    static inline oop cont(oop chunk);
    template<typename P>
    static inline oop cont_raw(oop chunk);
    static inline void set_cont(oop chunk, oop value);
< prev index next >