comparison src/share/vm/compiler/compileBroker.cpp @ 20489:966205f0e717

8058564: Tiered compilation performance drop in PIT Summary: Ensure MethodCounters are created before method is enqueued for compilation Reviewed-by: kvn, drchase, jiangli, roland
author iveresov
date Fri, 19 Sep 2014 11:53:58 -0700
parents dd89808e49ba
children b9c94af14fd0
comparison
equal deleted inserted replaced
20488:9c8439756c05 20489:966205f0e717
1171 // the pending list lock or a 3-way deadlock may occur 1171 // the pending list lock or a 3-way deadlock may occur
1172 // between the reference handler thread, a GC (instigated 1172 // between the reference handler thread, a GC (instigated
1173 // by a compiler thread), and compiled method registration. 1173 // by a compiler thread), and compiled method registration.
1174 if (InstanceRefKlass::owns_pending_list_lock(JavaThread::current())) { 1174 if (InstanceRefKlass::owns_pending_list_lock(JavaThread::current())) {
1175 return; 1175 return;
1176 }
1177
1178 if (TieredCompilation) {
1179 // Tiered policy requires MethodCounters to exist before adding a method to
1180 // the queue. Create if we don't have them yet.
1181 method->get_method_counters(thread);
1176 } 1182 }
1177 1183
1178 // Outputs from the following MutexLocker block: 1184 // Outputs from the following MutexLocker block:
1179 CompileTask* task = NULL; 1185 CompileTask* task = NULL;
1180 bool blocking = false; 1186 bool blocking = false;