--- a/hotspot/src/share/vm/oops/cpCache.hpp Fri Sep 07 16:42:25 2012 -0400
+++ b/hotspot/src/share/vm/oops/cpCache.hpp Mon Sep 10 16:37:22 2012 -0700
@@ -221,12 +221,14 @@
);
void set_method_handle(
+ constantPoolHandle cpool, // holding constant pool (required for locking)
methodHandle method, // adapter for invokeExact, etc.
Handle appendix, // stored in refs[f2]; could be a java.lang.invoke.MethodType
objArrayHandle resolved_references
);
void set_dynamic_call(
+ constantPoolHandle cpool, // holding constant pool (required for locking)
methodHandle method, // adapter for this call site
Handle appendix, // stored in refs[f2]; could be a java.lang.invoke.CallSite
objArrayHandle resolved_references
@@ -248,6 +250,7 @@
// resolution logic needs to make slightly different assessments about the
// number and types of arguments.
void set_method_handle_common(
+ constantPoolHandle cpool, // holding constant pool (required for locking)
Bytecodes::Code invoke_code, // _invokehandle or _invokedynamic
methodHandle adapter, // invoker method (f1)
Handle appendix, // appendix such as CallSite, MethodType, etc. (refs[f2])