Mercurial > hg > graal-compiler
comparison src/share/vm/classfile/systemDictionary.cpp @ 1410:b30a2cd5e3a2
Added methods to c1x_VMExits.cpp
Some memos:
- the result is not stored in a jobject, but in an oop! => (oop)get_as_jobject()
- we get problems with locks hold by the user program when disabling background compilation => currently this makes an assert, we need a better solution
author | Thomas Wuerthinger <thomas.wuerthinger@gmail.com> |
---|---|
date | Wed, 12 May 2010 16:29:41 +0200 |
parents | 09e7826ecf01 |
children | 2d26b0046e0d |
comparison
equal
deleted
inserted
replaced
1407:09e7826ecf01 | 1410:b30a2cd5e3a2 |
---|---|
2356 unsigned int hash = invoke_method_table()->compute_hash(signature); | 2356 unsigned int hash = invoke_method_table()->compute_hash(signature); |
2357 int index = invoke_method_table()->hash_to_index(hash); | 2357 int index = invoke_method_table()->hash_to_index(hash); |
2358 SymbolPropertyEntry* spe = invoke_method_table()->find_entry(index, hash, signature); | 2358 SymbolPropertyEntry* spe = invoke_method_table()->find_entry(index, hash, signature); |
2359 if (spe == NULL || spe->property_oop() == NULL) { | 2359 if (spe == NULL || spe->property_oop() == NULL) { |
2360 // Must create lots of stuff here, but outside of the SystemDictionary lock. | 2360 // Must create lots of stuff here, but outside of the SystemDictionary lock. |
2361 if (THREAD->is_Compiler_thread()) | 2361 // (tw) May we do this? |
2362 return NULL; // do not attempt from within compiler | 2362 //if (THREAD->is_Compiler_thread()) |
2363 // return NULL; // do not attempt from within compiler | |
2363 Handle mt = compute_method_handle_type(signature(), | 2364 Handle mt = compute_method_handle_type(signature(), |
2364 class_loader, protection_domain, | 2365 class_loader, protection_domain, |
2365 CHECK_NULL); | 2366 CHECK_NULL); |
2366 KlassHandle mh_klass = SystemDictionaryHandles::MethodHandle_klass(); | 2367 KlassHandle mh_klass = SystemDictionaryHandles::MethodHandle_klass(); |
2367 methodHandle m = methodOopDesc::make_invoke_method(mh_klass, signature, | 2368 methodHandle m = methodOopDesc::make_invoke_method(mh_klass, signature, |