< prev index next >

src/share/vm/runtime/sharedRuntime.cpp

Print this page
rev 8961 : [mq]: diff-shenandoah.patch

*** 209,218 **** --- 209,223 ---- thread->dirty_card_queue().enqueue(card_addr); JRT_END #endif // INCLUDE_ALL_GCS + // G1 write-barrier pre: executed before a pointer store. + JRT_LEAF(void, SharedRuntime::shenandoah_clone_barrier(oopDesc* obj)) + oopDesc::bs()->write_region(MemRegion((HeapWord*) obj, obj->size())); + JRT_END + JRT_LEAF(jlong, SharedRuntime::lmul(jlong y, jlong x)) return x * y; JRT_END
*** 1793,1802 **** --- 1798,1808 ---- JRT_END // Handles the uncommon case in locking, i.e., contention or an inflated lock. JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread)) + _obj = oopDesc::bs()->resolve_and_maybe_copy_oop(_obj); // Disable ObjectSynchronizer::quick_enter() in default config // until JDK-8077392 is resolved. if ((SyncFlags & 256) != 0 && !SafepointSynchronize::is_synchronizing()) { // Only try quick_enter() if we're not trying to reach a safepoint // so that the calling thread reaches the safepoint more quickly.
*** 1822,1831 **** --- 1828,1838 ---- JRT_BLOCK_END JRT_END // Handles the uncommon cases of monitor unlocking in compiled code JRT_LEAF(void, SharedRuntime::complete_monitor_unlocking_C(oopDesc* _obj, BasicLock* lock, JavaThread * THREAD)) + _obj = oopDesc::bs()->resolve_and_maybe_copy_oop(_obj); oop obj(_obj); assert(JavaThread::current() == THREAD, "invariant"); // I'm not convinced we need the code contained by MIGHT_HAVE_PENDING anymore // testing was unable to ever fire the assert that guarded it so I have removed it. assert(!HAS_PENDING_EXCEPTION, "Do we need code below anymore?");
< prev index next >