--- old/src/hotspot/share/runtime/objectMonitor.hpp 2020-01-28 14:36:32.000000000 -0500 +++ new/src/hotspot/share/runtime/objectMonitor.hpp 2020-01-28 14:36:32.000000000 -0500 @@ -232,7 +232,17 @@ intptr_t is_entered(Thread* current) const; void* owner() const; - void set_owner(void* owner); + // Clear _owner field; current value must match old_value. + void release_clear_owner(void* old_value); + // Simply set _owner field to new_value; current value must match old_value. + void set_owner_from(void* old_value, void* new_value); + // Simply set _owner field to self; current value must match basic_lock_p. + void set_owner_from_BasicLock(void* basic_lock_p, Thread* self); + // Try to set _owner field to new_value if the current value matches + // old_value. Otherwise, does not change the _owner field. Returns + // the prior value of the _owner field. try_set_owner_from() provides: + // compare-and-exchange + void* try_set_owner_from(void* old_value, void* new_value); jint waiters() const;