Mercurial > hg > truffle
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); |