comparison src/share/vm/interpreter/linkResolver.hpp @ 1508:2ffde6cfe049

6939196: method handle signatures off the boot class path get linkage errors Summary: Adjust MethodType lookup logic to search off the BCP, but not to cache those results Reviewed-by: twisti
author jrose
date Sat, 01 May 2010 21:57:35 -0700
parents e66fd840cb6b
children c18cbe5936b8
comparison
equal deleted inserted replaced
1507:cd5dbf694d45 1508:2ffde6cfe049
101 class LinkResolver: AllStatic { 101 class LinkResolver: AllStatic {
102 private: 102 private:
103 static void lookup_method_in_klasses (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS); 103 static void lookup_method_in_klasses (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS);
104 static void lookup_instance_method_in_klasses (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS); 104 static void lookup_instance_method_in_klasses (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS);
105 static void lookup_method_in_interfaces (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS); 105 static void lookup_method_in_interfaces (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS);
106 static void lookup_implicit_method (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS); 106 static void lookup_implicit_method (methodHandle& result, KlassHandle klass, symbolHandle name, symbolHandle signature,
107 KlassHandle current_klass, TRAPS);
107 108
108 static int vtable_index_of_miranda_method(KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS); 109 static int vtable_index_of_miranda_method(KlassHandle klass, symbolHandle name, symbolHandle signature, TRAPS);
109 110
110 static void resolve_klass (KlassHandle& result, constantPoolHandle pool, int index, TRAPS); 111 static void resolve_klass (KlassHandle& result, constantPoolHandle pool, int index, TRAPS);
111 static void resolve_klass_no_update (KlassHandle& result, constantPoolHandle pool, int index, TRAPS); // no update of constantPool entry 112 static void resolve_klass_no_update (KlassHandle& result, constantPoolHandle pool, int index, TRAPS); // no update of constantPool entry