< prev index next >

src/hotspot/share/interpreter/linkResolver.hpp

Print this page

264   static void resolve_invokespecial  (CallInfo& result, Handle recv,
265                                       const constantPoolHandle& pool, int index, TRAPS);
266   static void resolve_invokevirtual  (CallInfo& result, Handle recv,
267                                       const constantPoolHandle& pool, int index, TRAPS);
268   static void resolve_invokeinterface(CallInfo& result, Handle recv,
269                                       const constantPoolHandle& pool, int index, TRAPS);
270   static void resolve_invokedynamic  (CallInfo& result,
271                                       const constantPoolHandle& pool, int index, TRAPS);
272   static void resolve_invokehandle   (CallInfo& result,
273                                       const constantPoolHandle& pool, int index, TRAPS);
274  public:
275   // constant pool resolving
276   static void check_klass_accessibility(Klass* ref_klass, Klass* sel_klass, TRAPS);
277 
278   // static resolving calls (will not run any Java code);
279   // used only from Bytecode_invoke::static_target
280   static Method* resolve_method_statically(Bytecodes::Code code,
281                                            const constantPoolHandle& pool,
282                                            int index, TRAPS);
283 


284   static void resolve_field_access(fieldDescriptor& result,
285                                    const constantPoolHandle& pool,
286                                    int index,
287                                    const methodHandle& method,
288                                    Bytecodes::Code byte, TRAPS);
289   static void resolve_field(fieldDescriptor& result, const LinkInfo& link_info,
290                             Bytecodes::Code access_kind,
291                             bool initialize_class, TRAPS);
292 
293   static void resolve_static_call   (CallInfo& result,
294                                      const LinkInfo& link_info,
295                                      bool initialize_klass, TRAPS);
296   static void resolve_special_call  (CallInfo& result,
297                                      Handle recv,
298                                      const LinkInfo& link_info,
299                                      TRAPS);
300   static void resolve_virtual_call  (CallInfo& result, Handle recv, Klass* recv_klass,
301                                      const LinkInfo& link_info,
302                                      bool check_null_and_abstract, TRAPS);
303   static void resolve_interface_call(CallInfo& result, Handle recv, Klass* recv_klass,

264   static void resolve_invokespecial  (CallInfo& result, Handle recv,
265                                       const constantPoolHandle& pool, int index, TRAPS);
266   static void resolve_invokevirtual  (CallInfo& result, Handle recv,
267                                       const constantPoolHandle& pool, int index, TRAPS);
268   static void resolve_invokeinterface(CallInfo& result, Handle recv,
269                                       const constantPoolHandle& pool, int index, TRAPS);
270   static void resolve_invokedynamic  (CallInfo& result,
271                                       const constantPoolHandle& pool, int index, TRAPS);
272   static void resolve_invokehandle   (CallInfo& result,
273                                       const constantPoolHandle& pool, int index, TRAPS);
274  public:
275   // constant pool resolving
276   static void check_klass_accessibility(Klass* ref_klass, Klass* sel_klass, TRAPS);
277 
278   // static resolving calls (will not run any Java code);
279   // used only from Bytecode_invoke::static_target
280   static Method* resolve_method_statically(Bytecodes::Code code,
281                                            const constantPoolHandle& pool,
282                                            int index, TRAPS);
283 
284   static void resolve_continuation_enter(CallInfo& callinfo, TRAPS);
285 
286   static void resolve_field_access(fieldDescriptor& result,
287                                    const constantPoolHandle& pool,
288                                    int index,
289                                    const methodHandle& method,
290                                    Bytecodes::Code byte, TRAPS);
291   static void resolve_field(fieldDescriptor& result, const LinkInfo& link_info,
292                             Bytecodes::Code access_kind,
293                             bool initialize_class, TRAPS);
294 
295   static void resolve_static_call   (CallInfo& result,
296                                      const LinkInfo& link_info,
297                                      bool initialize_klass, TRAPS);
298   static void resolve_special_call  (CallInfo& result,
299                                      Handle recv,
300                                      const LinkInfo& link_info,
301                                      TRAPS);
302   static void resolve_virtual_call  (CallInfo& result, Handle recv, Klass* recv_klass,
303                                      const LinkInfo& link_info,
304                                      bool check_null_and_abstract, TRAPS);
305   static void resolve_interface_call(CallInfo& result, Handle recv, Klass* recv_klass,
< prev index next >