< prev index next >

src/hotspot/share/oops/cpCache.hpp

Print this page




 213     _f2 = ref_index;
 214   }
 215 
 216   void set_field(                                // sets entry to resolved field state
 217     Bytecodes::Code get_code,                    // the bytecode used for reading the field
 218     Bytecodes::Code put_code,                    // the bytecode used for writing the field
 219     Klass*          field_holder,                // the object/klass holding the field
 220     int             orig_field_index,            // the original field index in the field holder
 221     int             field_offset,                // the field offset in words in the field holder
 222     TosState        field_type,                  // the (machine) field type
 223     bool            is_final,                    // the field is final
 224     bool            is_volatile,                 // the field is volatile
 225     Klass*          root_klass                   // needed by the GC to dirty the klass
 226   );
 227 
 228  private:
 229   void set_direct_or_vtable_call(
 230     Bytecodes::Code invoke_code,                 // the bytecode used for invoking the method
 231     const methodHandle& method,                  // the method/prototype if any (NULL, otherwise)
 232     int             vtable_index,                // the vtable index if any, else negative
 233     bool            sender_is_interface,         // 'logical' sender (may be host of VMAC)
 234     InstanceKlass*  pool_holder                  // class from which the call is made
 235   );
 236 
 237  public:
 238   void set_direct_call(                          // sets entry to exact concrete method entry
 239     Bytecodes::Code invoke_code,                 // the bytecode used for invoking the method
 240     const methodHandle& method,                  // the method to call
 241     bool            sender_is_interface,         // 'logical' sender (may be host of VMAC)
 242     InstanceKlass*  pool_holder                  // class from which the call is made
 243   );
 244 
 245   void set_vtable_call(                          // sets entry to vtable index
 246     Bytecodes::Code invoke_code,                 // the bytecode used for invoking the method
 247     const methodHandle& method,                  // resolved method which declares the vtable index
 248     int             vtable_index                 // the vtable index
 249   );
 250 
 251   void set_itable_call(
 252     Bytecodes::Code invoke_code,                 // the bytecode used; must be invokeinterface
 253     Klass* referenced_klass,                     // the referenced klass in the InterfaceMethodref
 254     const methodHandle& method,                  // the resolved interface method
 255     int itable_index                             // index into itable for the method
 256   );
 257 
 258   void set_method_handle(
 259     const constantPoolHandle& cpool,             // holding constant pool (required for locking)
 260     const CallInfo &call_info                    // Call link information
 261   );
 262 




 213     _f2 = ref_index;
 214   }
 215 
 216   void set_field(                                // sets entry to resolved field state
 217     Bytecodes::Code get_code,                    // the bytecode used for reading the field
 218     Bytecodes::Code put_code,                    // the bytecode used for writing the field
 219     Klass*          field_holder,                // the object/klass holding the field
 220     int             orig_field_index,            // the original field index in the field holder
 221     int             field_offset,                // the field offset in words in the field holder
 222     TosState        field_type,                  // the (machine) field type
 223     bool            is_final,                    // the field is final
 224     bool            is_volatile,                 // the field is volatile
 225     Klass*          root_klass                   // needed by the GC to dirty the klass
 226   );
 227 
 228  private:
 229   void set_direct_or_vtable_call(
 230     Bytecodes::Code invoke_code,                 // the bytecode used for invoking the method
 231     const methodHandle& method,                  // the method/prototype if any (NULL, otherwise)
 232     int             vtable_index,                // the vtable index if any, else negative
 233     bool            sender_is_interface

 234   );
 235 
 236  public:
 237   void set_direct_call(                          // sets entry to exact concrete method entry
 238     Bytecodes::Code invoke_code,                 // the bytecode used for invoking the method
 239     const methodHandle& method,                  // the method to call
 240     bool            sender_is_interface

 241   );
 242 
 243   void set_vtable_call(                          // sets entry to vtable index
 244     Bytecodes::Code invoke_code,                 // the bytecode used for invoking the method
 245     const methodHandle& method,                  // resolved method which declares the vtable index
 246     int             vtable_index                 // the vtable index
 247   );
 248 
 249   void set_itable_call(
 250     Bytecodes::Code invoke_code,                 // the bytecode used; must be invokeinterface
 251     Klass* referenced_klass,                     // the referenced klass in the InterfaceMethodref
 252     const methodHandle& method,                  // the resolved interface method
 253     int itable_index                             // index into itable for the method
 254   );
 255 
 256   void set_method_handle(
 257     const constantPoolHandle& cpool,             // holding constant pool (required for locking)
 258     const CallInfo &call_info                    // Call link information
 259   );
 260 


< prev index next >