*** 40,10 *** --- 40,12 --- Thread* volatile _owner; shenandoah_padding(2); template<bool ALLOW_BLOCK> void contended_lock_internal(JavaThread* java_thread); + static void yield_or_sleep(int &yields); + public: ShenandoahLock() : _state(unlocked), _owner(nullptr) {}; void lock(bool allow_block_for_safepoint) { assert(Atomic::load(&_owner) != Thread::current(), "reentrant locking attempt, would deadlock");