comparison src/share/vm/compiler/compileBroker.cpp @ 7482:989155e2d07a

Merge with hs25-b15.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Wed, 16 Jan 2013 01:34:24 +0100
parents 291ffc492eb6 30866cd626b0
children 140d4d4ab3b9
comparison
equal deleted inserted replaced
7381:6761a8f854a4 7482:989155e2d07a
273 methodHandle hot_method, 273 methodHandle hot_method,
274 int hot_count, 274 int hot_count,
275 const char* comment, 275 const char* comment,
276 bool is_blocking) { 276 bool is_blocking) {
277 assert(!_lock->is_locked(), "bad locking"); 277 assert(!_lock->is_locked(), "bad locking");
278 InstanceKlass* holder = method->method_holder();
279 278
280 _compile_id = compile_id; 279 _compile_id = compile_id;
281 _method = method(); 280 _method = method();
282 _method_holder = JNIHandles::make_global( 281 _method_holder = JNIHandles::make_global(method->method_holder()->klass_holder());
283 holder->is_anonymous() ? holder->java_mirror(): holder->class_loader());
284 _osr_bci = osr_bci; 282 _osr_bci = osr_bci;
285 _is_blocking = is_blocking; 283 _is_blocking = is_blocking;
286 _comp_level = comp_level; 284 _comp_level = comp_level;
287 _num_inlined_bytecodes = 0; 285 _num_inlined_bytecodes = 0;
288 286
302 if (hot_method == method) { 300 if (hot_method == method) {
303 _hot_method = _method; 301 _hot_method = _method;
304 } else { 302 } else {
305 _hot_method = hot_method(); 303 _hot_method = hot_method();
306 // only add loader or mirror if different from _method_holder 304 // only add loader or mirror if different from _method_holder
307 InstanceKlass* hot_holder = hot_method->method_holder(); 305 _hot_method_holder = JNIHandles::make_global(hot_method->method_holder()->klass_holder());
308 _hot_method_holder = JNIHandles::make_global(
309 hot_holder->is_anonymous() ? hot_holder->java_mirror() :
310 hot_holder->class_loader());
311 } 306 }
312 } 307 }
313 } 308 }
314 309
315 _next = NULL; 310 _next = NULL;