Mercurial > hg > truffle
comparison src/share/vm/ci/ciEnv.cpp @ 2273:2ab52cda08e5
Merge with OpenJDK.
author | Thomas Wuerthinger <thomas.wuerthinger@gmail.com> |
---|---|
date | Thu, 03 Mar 2011 19:25:53 +0100 |
parents | d25d4ca69222 5841dc1964f0 |
children | 0654ee04b214 |
comparison
equal
deleted
inserted
replaced
2219:0a14ff0a8cc4 | 2273:2ab52cda08e5 |
---|---|
411 fail_type = _unloaded_ciobjarrayklass; | 411 fail_type = _unloaded_ciobjarrayklass; |
412 } else { | 412 } else { |
413 fail_type = _unloaded_ciinstance_klass; | 413 fail_type = _unloaded_ciinstance_klass; |
414 } | 414 } |
415 KlassHandle found_klass; | 415 KlassHandle found_klass; |
416 if (!require_local) { | 416 { |
417 klassOop kls = SystemDictionary::find_constrained_instance_or_array_klass( | 417 ttyUnlocker ttyul; // release tty lock to avoid ordering problems |
418 sym, loader, KILL_COMPILE_ON_FATAL_(fail_type)); | 418 MutexLocker ml(Compile_lock); |
419 found_klass = KlassHandle(THREAD, kls); | 419 klassOop kls; |
420 } else { | 420 if (!require_local) { |
421 klassOop kls = SystemDictionary::find_instance_or_array_klass( | 421 kls = SystemDictionary::find_constrained_instance_or_array_klass(sym, loader, |
422 sym, loader, domain, KILL_COMPILE_ON_FATAL_(fail_type)); | 422 KILL_COMPILE_ON_FATAL_(fail_type)); |
423 } else { | |
424 kls = SystemDictionary::find_instance_or_array_klass(sym, loader, domain, | |
425 KILL_COMPILE_ON_FATAL_(fail_type)); | |
426 } | |
423 found_klass = KlassHandle(THREAD, kls); | 427 found_klass = KlassHandle(THREAD, kls); |
424 } | 428 } |
425 | 429 |
426 // If we fail to find an array klass, look again for its element type. | 430 // If we fail to find an array klass, look again for its element type. |
427 // The element type may be available either locally or via constraints. | 431 // The element type may be available either locally or via constraints. |