LookupKey Class Reference

#include <key.hpp>

Inheritance diagram for LookupKey:

Inheritance graph
[legend]
Collaboration diagram for LookupKey:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LookupKey ()
 LookupKey (klassOop klass, oop selector_or_method)
 LookupKey (LookupKey *key)
klassOop klass () const
oop selector_or_method () const
symbolOop selector () const
methodOop method () const
bool is_super_type () const
bool is_normal_type () const
bool is_block_type () const
bool equal (LookupKey *p) const
void initialize (klassOop klass, oop selector_or_method)
void clear ()
int hash () const
void switch_pointers (oop from, oop to)
void relocate ()
bool verify () const
void oops_do (void f(oop *))
void print () const
char * print_string () const
void print_on (outputStream *st) const
void print_inlining_database_on (outputStream *st) const

Static Public Member Functions

static LookupKeyallocate (klassOop klass, oop selector_or_method)

Protected Attributes

klassOop _klass
oop _selector_or_method

Detailed Description

Definition at line 39 of file key.hpp.


Constructor & Destructor Documentation

LookupKey::LookupKey (  )  [inline]

Definition at line 44 of file key.hpp.

References clear().

Here is the call graph for this function:

LookupKey::LookupKey ( klassOop  klass,
oop  selector_or_method 
) [inline]

Definition at line 47 of file key.hpp.

References _klass, _selector_or_method, klass(), and selector_or_method().

Here is the call graph for this function:

LookupKey::LookupKey ( LookupKey key  )  [inline]

Definition at line 51 of file key.hpp.

References _klass, _selector_or_method, klass(), and selector_or_method().

Here is the call graph for this function:


Member Function Documentation

LookupKey * LookupKey::allocate ( klassOop  klass,
oop  selector_or_method 
) [static]

Definition at line 102 of file key.cpp.

References initialize(), klass(), NEW_RESOURCE_OBJ, and selector_or_method().

Here is the call graph for this function:

void LookupKey::clear (  )  [inline]

Definition at line 81 of file key.hpp.

References _klass, and _selector_or_method.

Referenced by DeltaCallCache::clear(), and LookupKey().

bool LookupKey::equal ( LookupKey p  )  const [inline]

Definition at line 71 of file key.hpp.

References klass(), and selector_or_method().

Referenced by InliningDatabaseKey::equal(), lookupCache::flush(), lookupCache::lookup(), and lookupCache::lookup_probe().

Here is the call graph for this function:

int LookupKey::hash (  )  const

Definition at line 27 of file key.cpp.

References oopDesc::identity_hash(), memOopDesc::identity_hash(), klass(), and selector_or_method().

Here is the call graph for this function:

void LookupKey::initialize ( klassOop  klass,
oop  selector_or_method 
) [inline]

Definition at line 76 of file key.hpp.

References _klass, _selector_or_method, klass(), and selector_or_method().

Referenced by allocate(), cacheElement::clear(), InliningDatabaseKey::clear(), DeltaCallCache::lookup(), scan_key(), and InliningDatabaseKey::set_deleted().

Here is the call graph for this function:

bool LookupKey::is_block_type (  )  const [inline]

Definition at line 69 of file key.hpp.

References methodOopDesc::is_blockMethod(), oopDesc::is_method(), and selector_or_method().

Referenced by InliningDatabase::load_index_file(), and print_inlining_database_on().

Here is the call graph for this function:

bool LookupKey::is_normal_type (  )  const [inline]

Definition at line 68 of file key.hpp.

References oopDesc::is_method(), and selector_or_method().

Referenced by lookupCache::cache_miss_lookup(), print_inlining_database_on(), and selector().

Here is the call graph for this function:

bool LookupKey::is_super_type (  )  const [inline]

Definition at line 67 of file key.hpp.

References methodOopDesc::is_blockMethod(), oopDesc::is_method(), and selector_or_method().

Referenced by print_inlining_database_on().

Here is the call graph for this function:

klassOop LookupKey::klass (  )  const [inline]

Definition at line 56 of file key.hpp.

References _klass.

Referenced by allocate(), lookupCache::cache_miss_lookup(), InliningDatabase::compute_file_name(), equal(), hash(), lookupCache::hash_value(), InliningDatabase::index_for(), initialize(), InliningDatabaseKey::is_filled(), lookupCache::lookup(), LookupKey(), DeltaCallCache::match(), lookupCache::method_lookup(), print_inlining_database_on(), cacheElement::verify(), and verify().

methodOop LookupKey::method (  )  const [inline]

Definition at line 61 of file key.hpp.

References assert, and selector_or_method().

Referenced by lookupCache::cache_miss_lookup(), InliningDatabase::compute_file_name(), print_inlining_database_on(), and selector().

Here is the call graph for this function:

void LookupKey::oops_do ( void   f(oop *)  ) 

Definition at line 63 of file key.cpp.

References _klass, and _selector_or_method.

Referenced by InliningDatabaseKey::oops_do().

void LookupKey::print (  )  const

Definition at line 92 of file key.cpp.

References print_on(), and std.

Referenced by InliningDatabase::add_lookup_entry(), lookupCache::cache_miss_lookup(), and InliningDatabase::file_in().

Here is the call graph for this function:

void LookupKey::print_inlining_database_on ( outputStream st  )  const

Definition at line 72 of file key.cpp.

References is_block_type(), is_normal_type(), is_super_type(), klass(), klassOopDesc::klass_part(), method(), outputStream::print(), methodOopDesc::print_inlining_database_on(), Klass::print_name_on(), symbolOopDesc::print_symbol_on(), methodOopDesc::selector(), selector(), and ShouldNotReachHere.

Referenced by InliningDatabase::file_out_all(), and print_on().

Here is the call graph for this function:

void LookupKey::print_on ( outputStream st  )  const

Definition at line 68 of file key.cpp.

References print_inlining_database_on().

Referenced by print(), and print_string().

Here is the call graph for this function:

char * LookupKey::print_string (  )  const

Definition at line 96 of file key.cpp.

References stringStream::as_string(), and print_on().

Referenced by cacheElement::verify().

Here is the call graph for this function:

void LookupKey::relocate (  ) 

Definition at line 31 of file key.cpp.

References _klass, _selector_or_method, and RELOCATE_TEMPLATE.

symbolOop LookupKey::selector (  )  const

Definition at line 36 of file key.cpp.

References is_normal_type(), method(), methodOopDesc::selector(), and selector_or_method().

Referenced by lookupCache::cache_miss_lookup(), InliningDatabase::compute_file_name(), InliningDatabase::index_for(), lookupCache::method_lookup(), and print_inlining_database_on().

Here is the call graph for this function:

oop LookupKey::selector_or_method (  )  const [inline]

Definition at line 57 of file key.hpp.

References _selector_or_method.

Referenced by allocate(), equal(), hash(), lookupCache::hash_value(), initialize(), is_block_type(), InliningDatabaseKey::is_deleted(), InliningDatabaseKey::is_empty(), InliningDatabaseKey::is_inner(), is_normal_type(), is_super_type(), lookupCache::lookup(), LookupKey(), DeltaCallCache::match(), method(), selector(), cacheElement::verify(), and verify().

void LookupKey::switch_pointers ( oop  from,
oop  to 
)

Definition at line 58 of file key.cpp.

References _klass, _selector_or_method, and SWITCH_POINTERS_TEMPLATE.

bool LookupKey::verify (  )  const

Definition at line 44 of file key.cpp.

References error(), klass(), lprintf(), and selector_or_method().

Referenced by lookupCache::lookup(), and lookupCache::lookup_probe().

Here is the call graph for this function:


Member Data Documentation

klassOop LookupKey::_klass [protected]

Definition at line 41 of file key.hpp.

Referenced by clear(), initialize(), klass(), LookupKey(), oops_do(), relocate(), and switch_pointers().

oop LookupKey::_selector_or_method [protected]

Definition at line 42 of file key.hpp.

Referenced by clear(), initialize(), LookupKey(), oops_do(), relocate(), selector_or_method(), and switch_pointers().


The documentation for this class was generated from the following files:
Generated on Mon Oct 9 14:06:00 2006 for Strongtalk VM by  doxygen 1.4.7