8146983: C1: assert(appendix.not_null()) failed for invokehandle bytecode
Reviewed-by: roland
--- a/hotspot/src/share/vm/c1/c1_Runtime1.cpp Fri Jan 15 21:56:42 2016 +0300
+++ b/hotspot/src/share/vm/c1/c1_Runtime1.cpp Fri Jan 15 21:56:43 2016 +0300
@@ -964,7 +964,7 @@
assert(cache_index >= 0 && cache_index < pool->cache()->length(), "unexpected cache index");
ConstantPoolCacheEntry* cpce = pool->cache()->entry_at(cache_index);
cpce->set_method_handle(pool, info);
- appendix = info.resolved_appendix(); // just in case somebody already resolved the entry
+ appendix = cpce->appendix_if_resolved(pool); // just in case somebody already resolved the entry
break;
}
case Bytecodes::_invokedynamic: {
@@ -975,8 +975,6 @@
}
default: fatal("unexpected bytecode for load_appendix_patching_id");
}
- assert(appendix.not_null(), "%s @ %d (%s)",
- caller_method->name_and_sig_as_C_string(), bci, Bytecodes::name(bc));
} else {
ShouldNotReachHere();
}