< prev index next >

src/hotspot/share/runtime/objectMonitor.hpp

Print this page
rev 56775 : imported patch 8230876.patch
rev 56776 : v2.00 -> v2.07 (CR7/v2.07/10-for-jdk14) patches combined into one; merge with 8230876.patch (2019.10.17) and jdk-14+21.
rev 56777 : See CR7-to-CR8-changes.

@@ -272,14 +272,16 @@
   void*     owner() const;  // Returns NULL if DEFLATER_MARKER is observed.
   // Returns true if owner field == DEFLATER_MARKER and false otherwise.
   bool      owner_is_DEFLATER_MARKER();
   // Set _owner field to new_value; current value must match old_value.
   void      set_owner_from(void* new_value, void* old_value);
-  // Set _owner field to new_value; current value must match old_value1 or old_value2.
-  void      set_owner_from(void* new_value, void* old_value1, void* old_value2);
-  // Set _owner field to self; current value must match basic_lock_p.
-  void      set_owner_from_BasicLock(Thread* self, void* basic_lock_p);
+  // Simply set _owner field to new_value; current value must match old_value.
+  void      simply_set_owner_from(void* new_value, void* old_value);
+  // Simply set _owner field to new_value; current value must match old_value1 or old_value2.
+  void      simply_set_owner_from(void* new_value, void* old_value1, void* old_value2);
+  // Simply set _owner field to self; current value must match basic_lock_p.
+  void      simply_set_owner_from_BasicLock(Thread* self, void* basic_lock_p);
   // Try to set _owner field to new_value if the current value matches
   // old_value. Otherwise, does not change the _owner field.
   void*     try_set_owner_from(void* new_value, void* old_value);
 
   jint      waiters() const;

@@ -325,11 +327,10 @@
   void*     object_addr();
   void      set_object(void* obj);
   void      set_allocation_state(AllocationState s);
   AllocationState allocation_state() const;
   bool      is_free() const;
-  bool      is_active() const;
   bool      is_old() const;
   bool      is_new() const;
   void      dec_ref_count();
   void      inc_ref_count();
   jint      ref_count() const;

@@ -381,13 +382,15 @@
 
   ObjectMonitor* om_ptr() const { return _om_ptr; }
   // Save the ObjectMonitor* associated with the specified markWord and
   // increment the ref_count.
   bool save_om_ptr(oop object, markWord mark);
+  // Save the specified ObjectMonitor* if safe and increment the ref_count.
+  bool set_om_ptr_if_safe(ObjectMonitor* om_ptr);
+  // Unset the _om_ptr field and decrement the ref_count.
+  void unset_om_ptr();
 
-  // For internal used by ObjectSynchronizer::monitors_iterate().
-  ObjectMonitorHandle(ObjectMonitor* _om_ptr);
   // For internal use by ObjectSynchronizer::inflate().
   void set_om_ptr(ObjectMonitor* om_ptr);
 };
 
 // Macro to use guarantee() for more strict AsyncDeflateIdleMonitors
< prev index next >