< prev index next >
src/hotspot/share/jvmci/jvmciRuntime.cpp
Print this page
@@ -392,21 +392,11 @@
if (PrintBiasedLockingStatistics) {
Atomic::inc(BiasedLocking::slow_path_entry_count_addr());
}
Handle h_obj(thread, obj);
assert(oopDesc::is_oop(h_obj()), "must be NULL or an object");
- if (UseBiasedLocking) {
- // Retry fast entry if bias is revoked to avoid unnecessary inflation
- ObjectSynchronizer::fast_enter(h_obj, lock, true, CHECK);
- } else {
- if (JVMCIUseFastLocking) {
- // When using fast locking, the compiled code has already tried the fast case
- ObjectSynchronizer::slow_enter(h_obj, lock, THREAD);
- } else {
- ObjectSynchronizer::fast_enter(h_obj, lock, false, THREAD);
- }
- }
+ ObjectSynchronizer::enter(h_obj, lock, THREAD);
TRACE_jvmci_3("%s: exiting locking slow with obj=" INTPTR_FORMAT, thread->name(), p2i(obj));
JRT_END
JRT_LEAF(void, JVMCIRuntime::monitorexit(JavaThread* thread, oopDesc* obj, BasicLock* lock))
assert(thread == JavaThread::current(), "threads must correspond");
@@ -424,16 +414,11 @@
thread->print_stack_on(tty);
assert(false, "invalid lock object pointer dected");
}
#endif
- if (JVMCIUseFastLocking) {
- // When using fast locking, the compiled code has already tried the fast case
- ObjectSynchronizer::slow_exit(obj, lock, THREAD);
- } else {
- ObjectSynchronizer::fast_exit(obj, lock, THREAD);
- }
+ ObjectSynchronizer::exit(obj, lock, THREAD);
IF_TRACE_jvmci_3 {
char type[O_BUFLEN];
obj->klass()->name()->as_C_string(type, O_BUFLEN);
TRACE_jvmci_3("%s: exited locking slow case with obj=" INTPTR_FORMAT ", type=%s, mark=" INTPTR_FORMAT ", lock=" INTPTR_FORMAT, thread->name(), p2i(obj), type, obj->mark().value(), p2i(lock));
tty->flush();
< prev index next >