Mercurial > hg > truffle
comparison src/share/vm/graal/graalCompilerToVM.cpp @ 4533:818757f088d3
Fixed signature lookup (unresolved arguments remained unresolved all the time).
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 09 Feb 2012 10:03:00 +0100 |
parents | 14a00ee82980 |
children | 6dda62bf5be4 |
comparison
equal
deleted
inserted
replaced
4532:82463023ef62 | 4533:818757f088d3 |
---|---|
276 protectionDomain = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(accessingClass))->klass_part()->protection_domain(); | 276 protectionDomain = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(accessingClass))->klass_part()->protection_domain(); |
277 } | 277 } |
278 if (eagerResolve) { | 278 if (eagerResolve) { |
279 resolved_type = SystemDictionary::resolve_or_null(nameSymbol, classloader, protectionDomain, THREAD); | 279 resolved_type = SystemDictionary::resolve_or_null(nameSymbol, classloader, protectionDomain, THREAD); |
280 } else { | 280 } else { |
281 resolved_type = SystemDictionary::find(nameSymbol, classloader, protectionDomain, THREAD); | 281 if (FieldType::is_obj(nameSymbol)) { |
282 ResourceMark rm(THREAD); | |
283 // Ignore wrapping L and ;. | |
284 TempNewSymbol tmp_name = SymbolTable::new_symbol(nameSymbol->as_C_string() + 1, | |
285 nameSymbol->utf8_length() - 2, CHECK_NULL); | |
286 resolved_type = SystemDictionary::find_instance_or_array_klass(tmp_name, classloader, protectionDomain, THREAD); | |
287 } else { | |
288 resolved_type = SystemDictionary::find_instance_or_array_klass(nameSymbol, classloader, protectionDomain, THREAD); | |
289 } | |
282 } | 290 } |
283 if (HAS_PENDING_EXCEPTION) { | 291 if (HAS_PENDING_EXCEPTION) { |
284 CLEAR_PENDING_EXCEPTION; | 292 CLEAR_PENDING_EXCEPTION; |
285 resolved_type = NULL; | 293 resolved_type = NULL; |
286 } | 294 } |