--- a/hotspot/src/share/vm/jvmci/jvmciEnv.cpp Thu Nov 26 19:16:37 2015 +0100
+++ b/hotspot/src/share/vm/jvmci/jvmciEnv.cpp Fri Nov 27 18:35:43 2015 +0100
@@ -282,11 +282,12 @@
instanceKlassHandle h_holder,
Symbol* name,
Symbol* sig,
- Bytecodes::Code bc) {
+ Bytecodes::Code bc,
+ constantTag tag) {
JVMCI_EXCEPTION_CONTEXT;
LinkResolver::check_klass_accessability(h_accessor, h_holder, KILL_COMPILE_ON_FATAL_(NULL));
methodHandle dest_method;
- LinkInfo link_info(h_holder, name, sig, h_accessor, /*check_access*/true);
+ LinkInfo link_info(h_holder, name, sig, h_accessor, LinkInfo::needs_access_check, tag);
switch (bc) {
case Bytecodes::_invokestatic:
dest_method =
@@ -359,7 +360,8 @@
if (holder_is_accessible) { // Our declared holder is loaded.
instanceKlassHandle lookup = get_instance_klass_for_declared_method_holder(holder);
- methodHandle m = lookup_method(accessor, lookup, name_sym, sig_sym, bc);
+ constantTag tag = cpool->tag_ref_at(index);
+ methodHandle m = lookup_method(accessor, lookup, name_sym, sig_sym, bc, tag);
if (!m.is_null() &&
(bc == Bytecodes::_invokestatic
? InstanceKlass::cast(m->method_holder())->is_not_initialized()