comparison src/share/vm/interpreter/linkResolver.cpp @ 12356:359f7e70ae7f

Reduce HotSpot diff and fix previous merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Fri, 11 Oct 2013 15:41:33 +0200
parents 36b97be47bde
children 096c224171c4
comparison
equal deleted inserted replaced
12355:cefad50507d8 12356:359f7e70ae7f
654 return; 654 return;
655 } 655 }
656 } 656 }
657 657
658 void LinkResolver::resolve_field_access(fieldDescriptor& result, constantPoolHandle pool, int index, Bytecodes::Code byte, TRAPS) { 658 void LinkResolver::resolve_field_access(fieldDescriptor& result, constantPoolHandle pool, int index, Bytecodes::Code byte, TRAPS) {
659 resolve_field_access(result, pool, index, byte, true, true, THREAD);
660 }
661
662 void LinkResolver::resolve_field_access(fieldDescriptor& result, constantPoolHandle pool, int index, Bytecodes::Code byte, bool check_access, bool initialize_class, TRAPS) {
659 // Load these early in case the resolve of the containing klass fails 663 // Load these early in case the resolve of the containing klass fails
660 Symbol* field = pool->name_ref_at(index); 664 Symbol* field = pool->name_ref_at(index);
661 Symbol* sig = pool->signature_ref_at(index); 665 Symbol* sig = pool->signature_ref_at(index);
662 666
663 // resolve specified klass 667 // resolve specified klass
664 KlassHandle resolved_klass; 668 KlassHandle resolved_klass;
665 resolve_klass(resolved_klass, pool, index, CHECK); 669 resolve_klass(resolved_klass, pool, index, CHECK);
666 670
667 KlassHandle current_klass(THREAD, pool->pool_holder()); 671 KlassHandle current_klass(THREAD, pool->pool_holder());
668 resolve_field(result, resolved_klass, field, sig, current_klass, byte, true, true, CHECK); 672 resolve_field(result, resolved_klass, field, sig, current_klass, byte, check_access, initialize_class, CHECK);
669 } 673 }
670 674
671 void LinkResolver::resolve_field(fieldDescriptor& fd, KlassHandle resolved_klass, Symbol* field, Symbol* sig, 675 void LinkResolver::resolve_field(fieldDescriptor& fd, KlassHandle resolved_klass, Symbol* field, Symbol* sig,
672 KlassHandle current_klass, Bytecodes::Code byte, bool check_access, bool initialize_class, 676 KlassHandle current_klass, Bytecodes::Code byte, bool check_access, bool initialize_class,
673 TRAPS) { 677 TRAPS) {