comparison src/share/vm/graal/graalEnv.cpp @ 13086:096c224171c4

Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/
author Doug Simon <doug.simon@oracle.com>
date Wed, 20 Nov 2013 00:10:38 +0100
parents f1a55428a8d7
children 5a9afbf72714
comparison
equal deleted inserted replaced
12782:92b7ec34ddfa 13086:096c224171c4
170 // The klass has not been inserted into the constant pool. 170 // The klass has not been inserted into the constant pool.
171 // Try to look it up by name. 171 // Try to look it up by name.
172 { 172 {
173 // We have to lock the cpool to keep the oop from being resolved 173 // We have to lock the cpool to keep the oop from being resolved
174 // while we are accessing it. 174 // while we are accessing it.
175 oop cplock = cpool->lock(); 175 MonitorLockerEx ml(cpool->lock());
176 ObjectLocker ol(cplock, THREAD, cplock != NULL);
177 176
178 constantTag tag = cpool->tag_at(index); 177 constantTag tag = cpool->tag_at(index);
179 if (tag.is_klass()) { 178 if (tag.is_klass()) {
180 // The klass has been inserted into the constant pool 179 // The klass has been inserted into the constant pool
181 // very recently. 180 // very recently.
500 handler_table, &implicit_tbl, 499 handler_table, &implicit_tbl,
501 compiler, comp_level, leaf_graph_ids, installed_code, triggered_deoptimizations); 500 compiler, comp_level, leaf_graph_ids, installed_code, triggered_deoptimizations);
502 501
503 // Free codeBlobs 502 // Free codeBlobs
504 //code_buffer->free_blob(); 503 //code_buffer->free_blob();
505
506 // stress test 6243940 by immediately making the method
507 // non-entrant behind the system's back. This has serious
508 // side effects on the code cache and is not meant for
509 // general stress testing
510 if (nm != NULL && StressNonEntrant) {
511 MutexLockerEx pl(Patching_lock, Mutex::_no_safepoint_check_flag);
512 NativeJump::patch_verified_entry(nm->entry_point(), nm->verified_entry_point(),
513 SharedRuntime::get_handle_wrong_method_stub());
514 }
515 504
516 if (nm == NULL) { 505 if (nm == NULL) {
517 // The CodeCache is full. Print out warning and disable compilation. 506 // The CodeCache is full. Print out warning and disable compilation.
518 { 507 {
519 MutexUnlocker ml(Compile_lock); 508 MutexUnlocker ml(Compile_lock);