Mercurial > hg > truffle
comparison src/share/vm/classfile/javaClasses.cpp @ 3461:81d815b05abb
7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path
Reviewed-by: never
author | jrose |
---|---|
date | Thu, 23 Jun 2011 17:14:06 -0700 |
parents | 167b70ff3abc |
children | b16582d6c7db |
comparison
equal
deleted
inserted
replaced
3460:e9b51b4bdcc7 | 3461:81d815b05abb |
---|---|
2570 name = SymbolTable::probe(sigstr, siglen); | 2570 name = SymbolTable::probe(sigstr, siglen); |
2571 } else { | 2571 } else { |
2572 name = SymbolTable::new_symbol(sigstr, siglen, THREAD); | 2572 name = SymbolTable::new_symbol(sigstr, siglen, THREAD); |
2573 } | 2573 } |
2574 return name; | 2574 return name; |
2575 } | |
2576 | |
2577 bool java_lang_invoke_MethodType::equals(oop mt1, oop mt2) { | |
2578 if (rtype(mt1) != rtype(mt2)) | |
2579 return false; | |
2580 if (ptype_count(mt1) != ptype_count(mt2)) | |
2581 return false; | |
2582 for (int i = ptype_count(mt1) - 1; i >= 0; i--) { | |
2583 if (ptype(mt1, i) != ptype(mt2, i)) | |
2584 return false; | |
2585 } | |
2586 return true; | |
2575 } | 2587 } |
2576 | 2588 |
2577 oop java_lang_invoke_MethodType::rtype(oop mt) { | 2589 oop java_lang_invoke_MethodType::rtype(oop mt) { |
2578 assert(is_instance(mt), "must be a MethodType"); | 2590 assert(is_instance(mt), "must be a MethodType"); |
2579 return mt->obj_field(_rtype_offset); | 2591 return mt->obj_field(_rtype_offset); |