219 methodHandle method, // Resolved method |
219 methodHandle method, // Resolved method |
220 int index // Method index into interface |
220 int index // Method index into interface |
221 ); |
221 ); |
222 |
222 |
223 void set_method_handle( |
223 void set_method_handle( |
|
224 constantPoolHandle cpool, // holding constant pool (required for locking) |
224 methodHandle method, // adapter for invokeExact, etc. |
225 methodHandle method, // adapter for invokeExact, etc. |
225 Handle appendix, // stored in refs[f2]; could be a java.lang.invoke.MethodType |
226 Handle appendix, // stored in refs[f2]; could be a java.lang.invoke.MethodType |
226 objArrayHandle resolved_references |
227 objArrayHandle resolved_references |
227 ); |
228 ); |
228 |
229 |
229 void set_dynamic_call( |
230 void set_dynamic_call( |
|
231 constantPoolHandle cpool, // holding constant pool (required for locking) |
230 methodHandle method, // adapter for this call site |
232 methodHandle method, // adapter for this call site |
231 Handle appendix, // stored in refs[f2]; could be a java.lang.invoke.CallSite |
233 Handle appendix, // stored in refs[f2]; could be a java.lang.invoke.CallSite |
232 objArrayHandle resolved_references |
234 objArrayHandle resolved_references |
233 ); |
235 ); |
234 |
236 |
246 // reference for the call site, but (if present) it *is* represented in |
248 // reference for the call site, but (if present) it *is* represented in |
247 // the Method* bound to the site. This means that static and dynamic |
249 // the Method* bound to the site. This means that static and dynamic |
248 // resolution logic needs to make slightly different assessments about the |
250 // resolution logic needs to make slightly different assessments about the |
249 // number and types of arguments. |
251 // number and types of arguments. |
250 void set_method_handle_common( |
252 void set_method_handle_common( |
|
253 constantPoolHandle cpool, // holding constant pool (required for locking) |
251 Bytecodes::Code invoke_code, // _invokehandle or _invokedynamic |
254 Bytecodes::Code invoke_code, // _invokehandle or _invokedynamic |
252 methodHandle adapter, // invoker method (f1) |
255 methodHandle adapter, // invoker method (f1) |
253 Handle appendix, // appendix such as CallSite, MethodType, etc. (refs[f2]) |
256 Handle appendix, // appendix such as CallSite, MethodType, etc. (refs[f2]) |
254 objArrayHandle resolved_references |
257 objArrayHandle resolved_references |
255 ); |
258 ); |