Universe Class Reference

#include <universe.hpp>

Inheritance diagram for Universe:

Inheritance graph
[legend]
Collaboration diagram for Universe:

Collaboration graph
[legend]
List of all members.

Static Public Member Functions

static klassOop smiKlassObj ()
static klassOop contextKlassObj ()
static klassOop doubleKlassObj ()
static klassOop memOopKlassObj ()
static klassOop objArrayKlassObj ()
static klassOop byteArrayKlassObj ()
static klassOop symbolKlassObj ()
static klassOop associationKlassObj ()
static klassOop zeroArgumentBlockKlassObj ()
static klassOop oneArgumentBlockKlassObj ()
static klassOop twoArgumentBlockKlassObj ()
static klassOop threeArgumentBlockKlassObj ()
static klassOop fourArgumentBlockKlassObj ()
static klassOop fiveArgumentBlockKlassObj ()
static klassOop sixArgumentBlockKlassObj ()
static klassOop sevenArgumentBlockKlassObj ()
static klassOop eightArgumentBlockKlassObj ()
static klassOop nineArgumentBlockKlassObj ()
static klassOop methodKlassObj ()
static klassOop characterKlassObj ()
static klassOop doubleValueArrayKlassObj ()
static klassOop vframeKlassObj ()
static oop nilObj ()
static oop trueObj ()
static oop falseObj ()
static objArrayOop asciiCharacters ()
static objArrayOop systemDictionaryObj ()
static objArrayOop pic_free_list ()
static oop callBack_receiver ()
static symbolOop callBack_selector ()
static void set_callBack (oop receiver, symbolOop selector)
static oop dll_lookup_receiver ()
static symbolOop dll_lookup_selector ()
static void set_dll_lookup (oop receiver, symbolOop selector)
static methodOop sweeper_method ()
static void set_sweeper_method (methodOop method)
static objArrayOop objectIDTable ()
static void set_objectIDTable (objArrayOop array)
static int major_version ()
static int minor_version ()
static char * beta_version ()
static int snapshot_version ()
static void check_root (oop *p)
static void roots_do (void f(oop *))
static void oops_do (void f(oop *))
static void classes_do (klassOopClosure *iterator)
static void methods_do (void f(methodOop method))
static bool is_heap (oop *p)
static oopobject_start (oop *p)
static memOop relocate (memOop p)
static bool verify_oop (memOop p)
static bool really_contains (void *p)
static spacespaceFor (void *p)
static generationgeneration_containing (oop p)
static oopallocate (int size, memOop *p=NULL)
static oopallocate_without_scavenge (int size)
static oopallocate_tenured (int size)
static bool needs_garbage_collection ()
static bool can_scavenge ()
static oopscavenge_and_allocate (int size, oop *p)
static void scavenge (oop *p=NULL)
static oop tenure (oop p=NULL)
static void default_low_space_handler (oop p=NULL)
static void need_scavenge ()
static bool needs_scavenge ()
static bool should_scavenge (memOop p)
static oopallocate_in_survivor_space (memOop p, int size, bool &is_new)
static int free ()
static void genesis ()
static void store (oop *p, smiOop contents)
static void store (oop *p, oop contents, bool cs=true)
static void cleanup_after_bootstrap ()
static void switch_pointers (oop from, oop to)
static void verify (bool postScavenge=false)
static void print ()
static void print_layout ()
static void decode_methods ()
static void objectSizeHistogram (int maxSize)
static void object_iterate (ObjectClosure *blk)
static void root_iterate (OopClosure *blk)
static void add_global (oop value)
static void remove_global_at (int index)
static void printRegion (char *&caddr, int count=16)
static void print_klass_name (klassOop k)
static char * klass_name (klassOop k)
static klassOop method_holder_of (methodOop m)
static symbolOop find_global_key_for (oop value, bool *meta)
static oop find_global (char *name, bool must_be_constant=false)
static associationOop find_global_association (char *name)
static void scavenge_oop (oop *p)
static void flush_inline_caches_in_methods ()
static void cleanup_all_inline_caches ()
static bool on_page_boundary (void *addr)
static int page_size ()

Static Public Attributes

static newGeneration new_gen
static oldGeneration old_gen
static symbolTablesymbol_table
static rSetremembered_set
static ageTableage_table
static int tenuring_threshold
static int scavengeCount
static spaceSizes current_sizes
static char * printAddr

Static Private Member Functions

static void classes_for_do (klassOop klass, klassOopClosure *iterator)
static void methods_in_array_do (objArrayOop array, void f(methodOop method))
static void methods_for_do (klassOop klass, void f(methodOop method))
static void get_space_sizes ()
static char * check_eden_size (spaceSizes &snap_sizes)
static char * check_surv_size (spaceSizes &snap_sizes)
static char * check_old_size (spaceSizes &snap_sizes)
static void methodOops_do (void f(methodOop))
static void flush_inline_caches_in_method (methodOop method)

Static Private Attributes

static klassOop _memOopKlassObj = klassOop(badOop)
static klassOop _objArrayKlassObj = klassOop(badOop)
static klassOop _byteArrayKlassObj = klassOop(badOop)
static klassOop _associationKlassObj = klassOop(badOop)
static klassOop _doubleKlassObj
static klassOop _methodKlassObj = klassOop(badOop)
static klassOop _characterKlassObj = klassOop(badOop)
static klassOop _vframeKlassObj = klassOop(badOop)
static objArrayOop _asciiCharacters = objArrayOop(badOop)
static objArrayOop _systemDictionaryObj = objArrayOop(badOop)
static objArrayOop _objectIDTable = objArrayOop(badOop)
static objArrayOop _pic_free_list = objArrayOop(badOop)
static oop _callBack_receiver = oop(badOop)
static symbolOop _callBack_selector = symbolOop(badOop)
static oop _dll_lookup_receiver = oop(badOop)
static symbolOop _dll_lookup_selector = symbolOop(badOop)
static methodOop _sweeper_method = NULL

Friends

class bootstrap
class MethodsClosure

Detailed Description

Definition at line 61 of file universe.hpp.


Member Function Documentation

void Universe::add_global ( oop  value  )  [static]

Definition at line 595 of file universe.cpp.

References _systemDictionaryObj, and objArrayOopDesc::copy_add().

Referenced by PRIM_DECL_2(), and PRIM_DECL_5().

Here is the call graph for this function:

static oop* Universe::allocate ( int  size,
memOop p = NULL 
) [inline, static]

Definition at line 208 of file universe.hpp.

References newGeneration::allocate(), new_gen, and scavenge_and_allocate().

Referenced by allocateBlock(), vframeKlass::allocateObject(), proxyKlass::allocateObject(), processKlass::allocateObject(), mixinKlass::allocateObject(), memOopKlass::allocateObject(), doubleKlass::allocateObject(), blockClosureKlass::allocateObject(), objArrayKlass::allocateObjectSize(), doubleValueArrayKlass::allocateObjectSize(), doubleByteArrayKlass::allocateObjectSize(), byteArrayKlass::allocateObjectSize(), contextKlass::allocateObjectSize(), oopFactory::new_double(), new_double(), memOopKlass::oop_shallow_copy(), PRIM_DECL_2(), and PRIM_DECL_4().

Here is the call graph for this function:

oop * Universe::allocate_in_survivor_space ( memOop  p,
int  size,
bool is_new 
) [inline, static]

Definition at line 25 of file universe.inline.hpp.

References markOopDesc::age(), oldGeneration::allocate(), newGeneration::allocate_in_survivor_space(), memOopDesc::mark(), new_gen, old_gen, tenuring_threshold, and newGeneration::would_fit().

Referenced by memOopDesc::copy_to_survivor_space().

Here is the call graph for this function:

static oop* Universe::allocate_tenured ( int  size  )  [inline, static]

Definition at line 218 of file universe.hpp.

References oldGeneration::allocate(), and old_gen.

Referenced by objArrayKlass::allocate_tenured_pic(), allocate_without_scavenge(), klassKlass::allocateObject(), associationKlass::allocateObject(), symbolKlass::allocateSymbol(), allocateTenuredBlock(), oopFactory::clone_double_to_oldspace(), methodKlass::constructMethod(), bootstrap::get_object(), memOopKlass::oop_shallow_copy(), and scavenge_and_allocate().

Here is the call graph for this function:

static oop* Universe::allocate_without_scavenge ( int  size  )  [inline, static]

Definition at line 213 of file universe.hpp.

References newGeneration::allocate(), allocate_tenured(), and new_gen.

Referenced by scavenge_and_allocate().

Here is the call graph for this function:

static objArrayOop Universe::asciiCharacters (  )  [inline, static]

Definition at line 117 of file universe.hpp.

References _asciiCharacters.

Referenced by PRIM_DECL_1(), and PRIM_DECL_2().

static klassOop Universe::associationKlassObj (  )  [inline, static]

Definition at line 97 of file universe.hpp.

References _associationKlassObj.

Referenced by oopFactory::new_association().

static char* Universe::beta_version (  )  [inline, static]

Definition at line 150 of file universe.hpp.

static klassOop Universe::byteArrayKlassObj (  )  [inline, static]

Definition at line 95 of file universe.hpp.

References _byteArrayKlassObj.

Referenced by oopFactory::new_byteArray().

static oop Universe::callBack_receiver (  )  [inline, static]

Definition at line 122 of file universe.hpp.

References _callBack_receiver.

Referenced by handleCallBack().

static symbolOop Universe::callBack_selector (  )  [inline, static]

Definition at line 123 of file universe.hpp.

References _callBack_selector.

Referenced by handleCallBack().

bool Universe::can_scavenge (  )  [static]

Definition at line 39 of file universe_more.cpp.

References DeltaProcess::active(), BlockScavenge::is_blocked(), and processSemaphore.

Referenced by scavenge_and_allocate().

Here is the call graph for this function:

static klassOop Universe::characterKlassObj (  )  [inline, static]

Definition at line 109 of file universe.hpp.

References _characterKlassObj.

static char* Universe::check_eden_size ( spaceSizes snap_sizes  )  [static, private]

static char* Universe::check_old_size ( spaceSizes snap_sizes  )  [static, private]

void Universe::check_root ( oop p  )  [static]

Definition at line 110 of file universe.cpp.

References badOop, and fatal.

Referenced by cleanup_after_bootstrap().

static char* Universe::check_surv_size ( spaceSizes snap_sizes  )  [static, private]

void Universe::classes_do ( klassOopClosure iterator  )  [static]

Definition at line 421 of file universe.cpp.

References assert, classes_for_do(), objArrayOopDesc::length(), objArrayOopDesc::obj_at(), and systemDictionaryObj().

Referenced by methods_do().

Here is the call graph for this function:

void Universe::classes_for_do ( klassOop  klass,
klassOopClosure iterator 
) [static, private]

Definition at line 411 of file universe.cpp.

References klassOopClosure::do_klass(), Klass::has_superKlass(), Klass::is_named_class(), klassOopDesc::klass_part(), and Klass::superKlass().

Referenced by classes_do().

Here is the call graph for this function:

void Universe::cleanup_after_bootstrap (  )  [static]

Definition at line 93 of file universe.cpp.

References _callBack_receiver, _callBack_selector, _characterKlassObj, _dll_lookup_receiver, _dll_lookup_selector, _pic_free_list, objArrayKlass::allocate_tenured_pic(), check_root(), objectIDTable::cleanup_after_bootstrap(), find_global(), nilObj(), number_of_interpreterPIC_sizes, and roots_do().

Referenced by bootstrap::bootstrap().

Here is the call graph for this function:

void Universe::cleanup_all_inline_caches (  )  [static]

Definition at line 471 of file universe.cpp.

References cleanup_method(), DeltaCallCache::clearAll(), and methodOops_do().

Here is the call graph for this function:

static klassOop Universe::contextKlassObj (  )  [inline, static]

Definition at line 91 of file universe.hpp.

References contextKlassObj.

Referenced by roots_do().

void Universe::decode_methods (  )  [static]

Definition at line 219 of file universe.cpp.

References decode_klass(), objArrayOopDesc::length(), and systemDictionaryObj().

Referenced by PRIM_DECL_0().

Here is the call graph for this function:

static void Universe::default_low_space_handler ( oop  p = NULL  )  [static]

static oop Universe::dll_lookup_receiver (  )  [inline, static]

Definition at line 129 of file universe.hpp.

References _dll_lookup_receiver.

Referenced by DLLs::lookup_fail().

static symbolOop Universe::dll_lookup_selector (  )  [inline, static]

Definition at line 130 of file universe.hpp.

References _dll_lookup_selector.

Referenced by DLLs::lookup_fail().

static klassOop Universe::doubleKlassObj (  )  [inline, static]

Definition at line 92 of file universe.hpp.

References doubleKlassObj.

Referenced by roots_do().

static klassOop Universe::doubleValueArrayKlassObj (  )  [inline, static]

Definition at line 110 of file universe.hpp.

References doubleValueArrayKlassObj.

static klassOop Universe::eightArgumentBlockKlassObj (  )  [inline, static]

Definition at line 106 of file universe.hpp.

References eightArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

static oop Universe::falseObj (  )  [inline, static]

Definition at line 116 of file universe.hpp.

References falseObj.

Referenced by find_global(), MacroAssembler::print_reg(), and roots_do().

oop Universe::find_global ( char *  name,
bool  must_be_constant = false 
) [static]

Definition at line 340 of file universe.cpp.

References falseObj(), objArrayOopDesc::length(), oopFactory::new_symbol(), nilObj(), systemDictionaryObj(), trueObj(), and associationOopDesc::value().

Referenced by VMProcess::activate_system(), cleanup_after_bootstrap(), InterpretedIC::does_not_understand(), TokenStream::is_name(), print_codes(), and scan_key().

Here is the call graph for this function:

associationOop Universe::find_global_association ( char *  name  )  [static]

Definition at line 362 of file universe.cpp.

References objArrayOopDesc::length(), oopFactory::new_symbol(), and systemDictionaryObj().

Referenced by VMProcess::activate_system().

Here is the call graph for this function:

symbolOop Universe::find_global_key_for ( oop  value,
bool meta 
) [static]

Definition at line 319 of file universe.cpp.

References associationOopDesc::key(), objArrayOopDesc::length(), and systemDictionaryObj().

Referenced by Klass::print_name_on().

Here is the call graph for this function:

static klassOop Universe::fiveArgumentBlockKlassObj (  )  [inline, static]

Definition at line 103 of file universe.hpp.

References fiveArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

void Universe::flush_inline_caches_in_method ( methodOop  method  )  [static, private]

Definition at line 433 of file universe.cpp.

References methodOopDesc::clear_inline_caches().

Here is the call graph for this function:

void Universe::flush_inline_caches_in_methods (  )  [static]

Definition at line 444 of file universe.cpp.

References object_iterate().

Referenced by Reflection::apply_change(), ErrorHandler::genesis(), and PRIM_DECL_0().

Here is the call graph for this function:

static klassOop Universe::fourArgumentBlockKlassObj (  )  [inline, static]

Definition at line 102 of file universe.hpp.

References fourArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

static int Universe::free (  )  [inline, static]

Definition at line 248 of file universe.hpp.

References oldGeneration::free(), and old_gen.

Here is the call graph for this function:

static generation* Universe::generation_containing ( oop  p  )  [inline, static]

Definition at line 204 of file universe.hpp.

References newGeneration::contains(), new_gen, and old_gen.

Referenced by oopDesc::my_generation().

Here is the call graph for this function:

void Universe::genesis (  )  [static]

Definition at line 34 of file universe.cpp.

References age_table, assert, spaceSizes::code_size, outputStream::cr(), current_sizes, spaceSizes::eden_size, fatal, ReservedSpace::first_part(), lookupCache::flush(), generation::high_boundary, oldGeneration::initialize(), newGeneration::initialize(), spaceSizes::initialize(), Disclaimer::is_debug(), Interpreter::is_optimized(), ReservedSpace::is_reserved(), ReservedSpace::last_part(), generation::low_boundary, major_version(), minor_version(), new_gen, old_gen, spaceSizes::old_size, ReservedSpace::page_align_size(), Interpreter::print_code_status(), outputStream::print_cr(), Disclaimer::print_disclaimer(), remembered_set, spaceSizes::reserved_object_size, scavengeCount, std, spaceSizes::surv_size, symbol_table, ageTable::table_size, and tenuring_threshold.

Referenced by universe_init().

Here is the call graph for this function:

static void Universe::get_space_sizes (  )  [static, private]

static bool Universe::is_heap ( oop p  )  [inline, static]

Definition at line 192 of file universe.hpp.

References oldGeneration::contains(), newGeneration::contains(), new_gen, and old_gen.

Referenced by MethodPrinterClosure::normal_send(), pp(), MacroAssembler::print_reg(), and verifyPIC().

Here is the call graph for this function:

char * Universe::klass_name ( klassOop  k  )  [static]

Definition at line 268 of file universe.cpp.

References klassOopDesc::klass_part(), objArrayOopDesc::length(), NEW_RESOURCE_ARRAY, nilObj(), Klass::superKlass(), and systemDictionaryObj().

Here is the call graph for this function:

static int Universe::major_version (  )  [inline, static]

Definition at line 147 of file universe.hpp.

Referenced by genesis(), SnapshotDesc::read_revision(), and SnapshotDesc::write_revision().

static klassOop Universe::memOopKlassObj (  )  [inline, static]

Definition at line 93 of file universe.hpp.

References _memOopKlassObj.

klassOop Universe::method_holder_of ( methodOop  m  )  [static]

Definition at line 297 of file universe.cpp.

References methodOopDesc::home(), oopDesc::klass(), klassOopDesc::klass_part(), objArrayOopDesc::length(), Klass::lookup_method_holder_for(), systemDictionaryObj(), warning(), and WizardMode.

Referenced by methodKlass::oop_print_on(), and methodKlass::oop_print_value_on().

Here is the call graph for this function:

static klassOop Universe::methodKlassObj (  )  [inline, static]

Definition at line 108 of file universe.hpp.

References _methodKlassObj.

Referenced by PRIM_DECL_6().

static void Universe::methodOops_do ( void   f(methodOop)  )  [static, private]

Referenced by cleanup_all_inline_caches().

void Universe::methods_do ( void   f(methodOop method)  )  [static]

Definition at line 406 of file universe.cpp.

References classes_do().

Here is the call graph for this function:

void Universe::methods_for_do ( klassOop  klass,
void   f(methodOop method) 
) [static, private]

Definition at line 384 of file universe.cpp.

References Klass::is_named_class(), oopDesc::klass(), klassOopDesc::klass_part(), mixinOopDesc::methods(), Klass::methods(), methods_in_array_do(), and Klass::mixin().

Referenced by MethodsClosure::do_klass().

Here is the call graph for this function:

void Universe::methods_in_array_do ( objArrayOop  array,
void   f(methodOop method) 
) [static, private]

Definition at line 375 of file universe.cpp.

References assert, objArrayOopDesc::length(), and objArrayOopDesc::obj_at().

Referenced by methods_for_do().

Here is the call graph for this function:

static int Universe::minor_version (  )  [inline, static]

Definition at line 148 of file universe.hpp.

Referenced by genesis().

static void Universe::need_scavenge (  )  [inline, static]

Definition at line 235 of file universe.hpp.

References NeedScavenge.

bool Universe::needs_garbage_collection (  )  [static]

Definition at line 70 of file universe_more.cpp.

References space::capacity(), oldGeneration::free(), new_gen, old_gen, and newGeneration::to().

Here is the call graph for this function:

static bool Universe::needs_scavenge (  )  [inline, static]

Definition at line 241 of file universe.hpp.

References NeedScavenge.

static oop Universe::nilObj (  )  [inline, static]

Definition at line 114 of file universe.hpp.

References nilObj.

Referenced by cleanup_after_bootstrap(), find_global(), klass_name(), MacroAssembler::print_reg(), and roots_do().

static klassOop Universe::nineArgumentBlockKlassObj (  )  [inline, static]

Definition at line 107 of file universe.hpp.

References nineArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

static klassOop Universe::objArrayKlassObj (  )  [inline, static]

Definition at line 94 of file universe.hpp.

References _objArrayKlassObj.

Referenced by objArrayKlass::allocate_tenured_pic(), and oopFactory::new_objArray().

void Universe::object_iterate ( ObjectClosure blk  )  [static]

Definition at line 230 of file universe.cpp.

References new_gen, oldGeneration::object_iterate(), newGeneration::object_iterate(), and old_gen.

Referenced by flush_inline_caches_in_methods(), PRIM_DECL_0(), PRIM_DECL_1(), PRIM_DECL_2(), and print_layout().

Here is the call graph for this function:

oop * Universe::object_start ( oop p  )  [static]

Definition at line 170 of file universe.cpp.

References newGeneration::contains(), new_gen, oldGeneration::object_start(), newGeneration::object_start(), and old_gen.

Referenced by frame::convert_hcode_pointer(), TokenStream::is_object_search(), interpretedVFrame::method(), frame::method(), pp(), and oldSpace::verify().

Here is the call graph for this function:

static objArrayOop Universe::objectIDTable (  )  [inline, static]

Definition at line 139 of file universe.hpp.

References _objectIDTable.

Referenced by objectIDTable::array(), objectIDTable::find_index(), and objectIDTable::is_index_ok().

static void Universe::objectSizeHistogram ( int  maxSize  )  [static]

bool Universe::on_page_boundary ( void *  addr  )  [static]

Definition at line 603 of file universe.cpp.

References page_size().

Referenced by space::initialize().

Here is the call graph for this function:

static klassOop Universe::oneArgumentBlockKlassObj (  )  [inline, static]

Definition at line 99 of file universe.hpp.

References oneArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

void Universe::oops_do ( void   f(oop *)  )  [static]

Definition at line 583 of file universe.cpp.

References InliningDatabase::oops_do(), Handles::oops_do(), and roots_do().

Referenced by MarkSweep::mark_sweep_phase1(), and root_iterate().

Here is the call graph for this function:

int Universe::page_size (  )  [static]

Definition at line 607 of file universe.cpp.

References os::vm_page_size().

Referenced by AllocatePageAligned(), on_page_boundary(), and scale_and_adjust().

Here is the call graph for this function:

static objArrayOop Universe::pic_free_list (  )  [inline, static]

Definition at line 119 of file universe.hpp.

References _pic_free_list.

Referenced by Interpreter_PICs::free_list().

void Universe::print (  )  [static]

Definition at line 160 of file universe.cpp.

References new_gen, old_gen, oldGeneration::print(), newGeneration::print(), outputStream::print_cr(), std, tenuring_threshold, and WizardMode.

Referenced by PRIM_DECL_0().

Here is the call graph for this function:

void Universe::print_klass_name ( klassOop  k  )  [static]

Definition at line 251 of file universe.cpp.

References objArrayOopDesc::length(), lprintf(), and systemDictionaryObj().

Here is the call graph for this function:

void Universe::print_layout (  )  [static]

Definition at line 185 of file universe.cpp.

References object_iterate().

Referenced by PRIM_DECL_0().

Here is the call graph for this function:

static void Universe::printRegion ( char *&  caddr,
int  count = 16 
) [static]

static bool Universe::really_contains ( void *  p  )  [static]

memOop Universe::relocate ( memOop  p  )  [static]

Definition at line 128 of file universe.cpp.

References ShouldNotReachHere.

void Universe::remove_global_at ( int  index  )  [static]

Definition at line 599 of file universe.cpp.

References _systemDictionaryObj, and objArrayOopDesc::copy_remove().

Referenced by PRIM_DECL_1().

Here is the call graph for this function:

void Universe::root_iterate ( OopClosure blk  )  [static]

Definition at line 242 of file universe.cpp.

References oops_do(), the_blk, and the_func().

Referenced by SnapshotDesc::read_roots(), and SnapshotDesc::write_roots().

Here is the call graph for this function:

void Universe::roots_do ( void   f(oop *)  )  [static]

Definition at line 536 of file universe.cpp.

References _asciiCharacters, _associationKlassObj, _byteArrayKlassObj, _callBack_receiver, _callBack_selector, _characterKlassObj, _dll_lookup_receiver, _dll_lookup_selector, _memOopKlassObj, _methodKlassObj, _objArrayKlassObj, _objectIDTable, _pic_free_list, _sweeper_method, _systemDictionaryObj, _vframeKlassObj, contextKlassObj(), doubleKlassObj(), eightArgumentBlockKlassObj(), falseObj(), fiveArgumentBlockKlassObj(), fourArgumentBlockKlassObj(), nilObj(), nineArgumentBlockKlassObj(), oneArgumentBlockKlassObj(), sevenArgumentBlockKlassObj(), sixArgumentBlockKlassObj(), smiKlassObj(), symbolKlassObj(), threeArgumentBlockKlassObj(), trueObj(), twoArgumentBlockKlassObj(), and zeroArgumentBlockKlassObj().

Referenced by Reflection::apply_change(), cleanup_after_bootstrap(), oops_do(), and scavenge().

Here is the call graph for this function:

void Universe::scavenge ( oop p = NULL  )  [static]

Definition at line 74 of file universe_more.cpp.

References age_table, assert, WeakArrayRegister::begin_scavenge(), space::capacity(), WeakArrayRegister::check_and_scavenge_contents(), space::clear(), ageTable::clear(), FOR_EACH_OLD_SPACE, GCInProgress, NeedScavenge, new_gen, old_gen, NotificationQueue::oops_do(), Handles::oops_do(), oopSize, outputStream::print(), processSemaphore, roots_do(), Processes::scavenge_contents(), survivorSpace::scavenge_contents_from(), oldGeneration::scavenge_contents_from(), scavenge_oop(), SCAVENGE_TEMPLATE, scavengeCount, std, newGeneration::swap_spaces(), ageTable::tenuring_threshold(), tenuring_threshold, newGeneration::to(), newGeneration::to_space, oldGeneration::top_mark(), newSpace::top_mark(), verify(), and WizardMode.

Referenced by VM_Scavenge::doit(), and tenure().

Here is the call graph for this function:

oop * Universe::scavenge_and_allocate ( int  size,
oop p 
) [static]

Definition at line 55 of file universe_more.cpp.

References DeltaProcess::active(), allocate_tenured(), allocate_without_scavenge(), assert, can_scavenge(), VMProcess::execute(), last_Delta_fp, and last_Delta_sp.

Referenced by allocate(), and scavenge_and_allocate().

Here is the call graph for this function:

void Universe::scavenge_oop ( oop p  )  [static]

Definition at line 68 of file universe_more.cpp.

References oopDesc::scavenge().

Referenced by scavenge().

Here is the call graph for this function:

static void Universe::set_callBack ( oop  receiver,
symbolOop  selector 
) [inline, static]

Definition at line 124 of file universe.hpp.

References _callBack_receiver, and _callBack_selector.

Referenced by callBack::initialize().

static void Universe::set_dll_lookup ( oop  receiver,
symbolOop  selector 
) [inline, static]

Definition at line 131 of file universe.hpp.

References _dll_lookup_receiver, and _dll_lookup_selector.

Referenced by PRIM_DECL_2().

static void Universe::set_objectIDTable ( objArrayOop  array  )  [inline, static]

Definition at line 140 of file universe.hpp.

References _objectIDTable.

Referenced by objectIDTable::cleanup_after_bootstrap().

static void Universe::set_sweeper_method ( methodOop  method  )  [inline, static]

Definition at line 137 of file universe.hpp.

References _sweeper_method.

Referenced by MethodSweeper::set_excluded_method().

static klassOop Universe::sevenArgumentBlockKlassObj (  )  [inline, static]

Definition at line 105 of file universe.hpp.

References sevenArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

static bool Universe::should_scavenge ( memOop  p  )  [inline, static]

Definition at line 243 of file universe.hpp.

References survivorSpace::contains(), new_gen, old_gen, and newGeneration::to().

Referenced by memOopDesc::copy_to_survivor_space(), and memOopDesc::scavenge().

Here is the call graph for this function:

static klassOop Universe::sixArgumentBlockKlassObj (  )  [inline, static]

Definition at line 104 of file universe.hpp.

References sixArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

static klassOop Universe::smiKlassObj (  )  [inline, static]

Definition at line 90 of file universe.hpp.

References smiKlassObj.

Referenced by roots_do().

static int Universe::snapshot_version (  )  [inline, static]

Definition at line 151 of file universe.hpp.

Referenced by SnapshotDesc::read_revision(), and SnapshotDesc::write_revision().

space * Universe::spaceFor ( void *  p  )  [static]

Definition at line 137 of file universe_more.cpp.

References edenSpace::contains(), survivorSpace::contains(), newGeneration::eden(), FOR_EACH_OLD_SPACE, newGeneration::from(), new_gen, and ShouldNotReachHere.

Here is the call graph for this function:

void Universe::store ( oop p,
oop  contents,
bool  cs = true 
) [inline, static]

Definition at line 25 of file universe.store.hpp.

References rSet::record_store(), and remembered_set.

Here is the call graph for this function:

static void Universe::store ( oop p,
smiOop  contents 
) [inline, static]

Definition at line 263 of file universe.hpp.

Referenced by Reflection::convert(), CodeIterator::customize_class_var_code(), CodeIterator::customize_inst_var_code(), memOopDesc::initialize_body(), memOopDesc::raw_at_put(), CodeIterator::recustomize_class_var_code(), CodeIterator::recustomize_inst_var_code(), InterpretedIC::set(), CodeIterator::uncustomize_class_var_code(), and CodeIterator::uncustomize_inst_var_code().

static methodOop Universe::sweeper_method (  )  [inline, static]

Definition at line 136 of file universe.hpp.

References _sweeper_method.

Referenced by MethodSweeper::excluded_method().

void Universe::switch_pointers ( oop  from,
oop  to 
) [static]

Definition at line 115 of file universe.cpp.

References assert, oopDesc::is_mem(), new_gen, old_gen, symbolTable::switch_pointers(), oldGeneration::switch_pointers(), newGeneration::switch_pointers(), and symbol_table.

Here is the call graph for this function:

static klassOop Universe::symbolKlassObj (  )  [inline, static]

Definition at line 96 of file universe.hpp.

References symbolKlassObj.

Referenced by symbolKlass::allocateSymbol(), symbolTable::basic_add(), and roots_do().

static objArrayOop Universe::systemDictionaryObj (  )  [inline, static]

Definition at line 118 of file universe.hpp.

References _systemDictionaryObj.

Referenced by classes_do(), decode_methods(), find_global(), find_global_association(), find_global_key_for(), klass_name(), method_holder_of(), PRIM_DECL_0(), PRIM_DECL_1(), print_klass_name(), and MethodSweeper::task().

oop Universe::tenure ( oop  p = NULL  )  [static]

Definition at line 30 of file universe_more.cpp.

References APPLY_TO_YOUNG_SPACES, checkIt, scavenge(), and tenuring_threshold.

Here is the call graph for this function:

static klassOop Universe::threeArgumentBlockKlassObj (  )  [inline, static]

Definition at line 101 of file universe.hpp.

References threeArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

static oop Universe::trueObj (  )  [inline, static]

Definition at line 115 of file universe.hpp.

References trueObj.

Referenced by find_global(), MacroAssembler::print_reg(), and roots_do().

static klassOop Universe::twoArgumentBlockKlassObj (  )  [inline, static]

Definition at line 100 of file universe.hpp.

References twoArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), and roots_do().

void Universe::verify ( bool  postScavenge = false  )  [static]

Definition at line 148 of file universe.cpp.

References lprintf(), new_gen, old_gen, remembered_set, symbol_table, Processes::verify(), symbolTable::verify(), rSet::verify(), oldGeneration::verify(), and newGeneration::verify().

Referenced by Reflection::apply_change(), MarkSweep::collect(), PRIM_DECL_0(), and scavenge().

Here is the call graph for this function:

bool Universe::verify_oop ( memOop  p  )  [static]

Definition at line 135 of file universe.cpp.

References oldGeneration::contains(), survivorSpace::contains(), edenSpace::contains(), newGeneration::eden(), error(), newGeneration::from(), new_gen, old_gen, and newGeneration::to().

Referenced by memOopKlass::oop_verify().

Here is the call graph for this function:

static klassOop Universe::vframeKlassObj (  )  [inline, static]

Definition at line 111 of file universe.hpp.

References _vframeKlassObj.

Referenced by oopFactory::new_vframe().

static klassOop Universe::zeroArgumentBlockKlassObj (  )  [inline, static]

Definition at line 98 of file universe.hpp.

References zeroArgumentBlockKlassObj.

Referenced by blockClosureKlass::blockKlassFor(), blockClosureKlass::number_of_arguments(), PRIM_DECL_2(), and roots_do().


Friends And Related Function Documentation

friend class bootstrap [friend]

Definition at line 87 of file universe.hpp.

friend class MethodsClosure [friend]

Definition at line 172 of file universe.hpp.


Member Data Documentation

objArrayOop Universe::_asciiCharacters = objArrayOop(badOop) [static, private]

Definition at line 74 of file universe.hpp.

Referenced by asciiCharacters(), bootstrap::parse_file(), and roots_do().

klassOop Universe::_associationKlassObj = klassOop(badOop) [static, private]

Definition at line 67 of file universe.hpp.

Referenced by associationKlassObj(), bootstrap::parse_file(), and roots_do().

klassOop Universe::_byteArrayKlassObj = klassOop(badOop) [static, private]

Definition at line 66 of file universe.hpp.

Referenced by byteArrayKlassObj(), bootstrap::parse_file(), and roots_do().

oop Universe::_callBack_receiver = oop(badOop) [static, private]

Definition at line 79 of file universe.hpp.

Referenced by callBack_receiver(), cleanup_after_bootstrap(), roots_do(), and set_callBack().

symbolOop Universe::_callBack_selector = symbolOop(badOop) [static, private]

Definition at line 80 of file universe.hpp.

Referenced by callBack_selector(), cleanup_after_bootstrap(), roots_do(), and set_callBack().

klassOop Universe::_characterKlassObj = klassOop(badOop) [static, private]

Definition at line 70 of file universe.hpp.

Referenced by characterKlassObj(), cleanup_after_bootstrap(), and roots_do().

oop Universe::_dll_lookup_receiver = oop(badOop) [static, private]

Definition at line 82 of file universe.hpp.

Referenced by cleanup_after_bootstrap(), dll_lookup_receiver(), roots_do(), and set_dll_lookup().

symbolOop Universe::_dll_lookup_selector = symbolOop(badOop) [static, private]

Definition at line 83 of file universe.hpp.

Referenced by cleanup_after_bootstrap(), dll_lookup_selector(), roots_do(), and set_dll_lookup().

klassOop Universe::_doubleKlassObj [static, private]

Definition at line 68 of file universe.hpp.

klassOop Universe::_memOopKlassObj = klassOop(badOop) [static, private]

Definition at line 64 of file universe.hpp.

Referenced by memOopKlassObj(), bootstrap::parse_file(), and roots_do().

klassOop Universe::_methodKlassObj = klassOop(badOop) [static, private]

Definition at line 69 of file universe.hpp.

Referenced by methodKlassObj(), bootstrap::parse_file(), and roots_do().

klassOop Universe::_objArrayKlassObj = klassOop(badOop) [static, private]

Definition at line 65 of file universe.hpp.

Referenced by objArrayKlassObj(), bootstrap::parse_file(), and roots_do().

objArrayOop Universe::_objectIDTable = objArrayOop(badOop) [static, private]

Definition at line 76 of file universe.hpp.

Referenced by objectIDTable(), roots_do(), and set_objectIDTable().

objArrayOop Universe::_pic_free_list = objArrayOop(badOop) [static, private]

Definition at line 77 of file universe.hpp.

Referenced by cleanup_after_bootstrap(), pic_free_list(), and roots_do().

methodOop Universe::_sweeper_method = NULL [static, private]

Definition at line 85 of file universe.hpp.

Referenced by roots_do(), set_sweeper_method(), and sweeper_method().

objArrayOop Universe::_systemDictionaryObj = objArrayOop(badOop) [static, private]

Definition at line 75 of file universe.hpp.

Referenced by add_global(), bootstrap::parse_file(), remove_global_at(), roots_do(), and systemDictionaryObj().

klassOop Universe::_vframeKlassObj = klassOop(badOop) [static, private]

Definition at line 71 of file universe.hpp.

Referenced by bootstrap::parse_file(), roots_do(), and vframeKlassObj().

ageTable * Universe::age_table [static]

Definition at line 181 of file universe.hpp.

Referenced by memOopDesc::copy_to_survivor_space(), genesis(), and scavenge().

spaceSizes Universe::current_sizes [static]

Definition at line 259 of file universe.hpp.

Referenced by oldGeneration::allocate_in_next_space(), oldGeneration::expand(), and genesis().

newGeneration Universe::new_gen [static]

Definition at line 176 of file universe.hpp.

Referenced by allocate(), oldGeneration::allocate_in_next_space(), allocate_in_survivor_space(), allocate_without_scavenge(), Reflection::apply_change(), oldGeneration::expand(), generation_containing(), genesis(), is_heap(), memOopDesc::is_new(), MarkSweep::mark_sweep_phase2(), MarkSweep::mark_sweep_phase3(), needs_garbage_collection(), object_iterate(), object_start(), rSet::operator new(), print(), rSet::rSet(), scavenge(), memOopDesc::scavenge(), should_scavenge(), spaceFor(), switch_pointers(), verify(), verify_oop(), VerifyNoAllocation::VerifyNoAllocation(), and VerifyNoAllocation::~VerifyNoAllocation().

oldGeneration Universe::old_gen [static]

Definition at line 177 of file universe.hpp.

Referenced by HeapSweeper::activate(), allocate_in_survivor_space(), allocate_tenured(), Reflection::apply_change(), rSet::byte_map_end(), MarkSweep::collect(), oldSpace::expand_and_allocate(), free(), generation_containing(), genesis(), is_heap(), memOopDesc::is_old(), MarkSweep::mark_sweep_phase2(), MarkSweep::mark_sweep_phase3(), frame::method(), needs_garbage_collection(), object_iterate(), object_start(), oldSpace::oldSpace(), rSet::operator new(), print(), rSet::rSet(), scavenge(), memOopDesc::scavenge(), should_scavenge(), switch_pointers(), verify(), and verify_oop().

char* Universe::printAddr [static]

Definition at line 287 of file universe.hpp.

rSet * Universe::remembered_set [static]

Definition at line 180 of file universe.hpp.

Referenced by oldGeneration::allocate_in_next_space(), MarkSweep::collect(), VerifyOldOopClosure::do_oop(), oldGeneration::expand(), rSet::fixup(), memOopDesc::gc_retrieve_size(), memOopDesc::gc_store_size(), genesis(), oldGeneration::number_of_dirty_pages(), oldGeneration::number_of_pages_with_dirty_objects(), memOopKlass::oop_shallow_copy(), pr(), oldGeneration::print_remembered_set(), oldSpace::scavenge_recorded_stores(), scavenge_tenured_oop(), store(), and verify().

int Universe::scavengeCount [static]

Definition at line 189 of file universe.hpp.

Referenced by genesis(), NoGCVerifier::NoGCVerifier(), scavenge(), VerifyNoScavenge::VerifyNoScavenge(), NoGCVerifier::~NoGCVerifier(), and VerifyNoScavenge::~VerifyNoScavenge().

symbolTable * Universe::symbol_table [static]

Definition at line 179 of file universe.hpp.

Referenced by symbolTable::basic_add(), symbolTableEntry::deallocate(), genesis(), bootstrap::insert_symbol(), MarkSweep::mark_sweep_phase1(), oopFactory::new_symbol(), PRIM_DECL_1(), switch_pointers(), verify(), and symbolOopDesc::verify().

int Universe::tenuring_threshold [static]

Definition at line 188 of file universe.hpp.

Referenced by allocate_in_survivor_space(), genesis(), print(), scavenge(), and tenure().


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