#include <generation.hpp>
Inheritance diagram for newGeneration:
Public Member Functions | |
edenSpace * | eden () |
survivorSpace * | from () |
survivorSpace * | to () |
int | capacity () |
int | used () |
int | free () |
void | print () |
void | object_iterate (ObjectClosure *blk) |
void | verify () |
bool | would_fit (int size) |
void | swap_spaces () |
bool | contains (void *p) |
oop * | object_start (oop *p) |
oop * | allocate (int size) |
oop * | allocate_in_survivor_space (int size) |
char * | boundary () |
Protected Member Functions | |
bool | is_new (memOop p, char *boundary) |
bool | is_new (oop p, char *boundary) |
Private Member Functions | |
void | initialize (ReservedSpace rs, int eden_size, int surv_size) |
void | prepare_for_compaction (OldWaterMark *mark) |
void | compact (OldWaterMark *mark) |
void | switch_pointers (oop from, oop to) |
Private Attributes | |
edenSpace | eden_space |
survivorSpace * | from_space |
survivorSpace * | to_space |
Friends | |
class | rSet |
class | Universe |
class | MarkSweep |
class | OopNCode |
Definition at line 51 of file generation.hpp.
oop* newGeneration::allocate | ( | int | size | ) | [inline] |
Definition at line 86 of file generation.hpp.
References edenSpace::allocate(), and eden().
Referenced by Universe::allocate(), and Universe::allocate_without_scavenge().
Here is the call graph for this function:
oop* newGeneration::allocate_in_survivor_space | ( | int | size | ) | [inline] |
Definition at line 87 of file generation.hpp.
References survivorSpace::allocate(), and to_space.
Referenced by Universe::allocate_in_survivor_space().
Here is the call graph for this function:
char* newGeneration::boundary | ( | ) | [inline] |
int newGeneration::capacity | ( | ) | [virtual] |
Implements generation.
Definition at line 93 of file generation.cpp.
References space::capacity(), eden(), from(), and to().
Here is the call graph for this function:
void newGeneration::compact | ( | OldWaterMark * | mark | ) | [private] |
Definition at line 80 of file generation.cpp.
References space::clear(), space::compact(), eden(), and from().
Referenced by MarkSweep::mark_sweep_phase3().
Here is the call graph for this function:
bool newGeneration::contains | ( | void * | p | ) | [inline] |
Definition at line 81 of file generation.hpp.
References generation::high_boundary, and generation::low_boundary.
Referenced by Universe::generation_containing(), Universe::is_heap(), Universe::object_start(), and object_start().
edenSpace* newGeneration::eden | ( | ) | [inline] |
Definition at line 63 of file generation.hpp.
References eden_space.
Referenced by allocate(), Reflection::apply_change(), capacity(), compact(), free(), initialize(), object_iterate(), object_start(), prepare_for_compaction(), print(), Universe::spaceFor(), swap_spaces(), switch_pointers(), used(), verify(), Universe::verify_oop(), and VerifyNoAllocation::VerifyNoAllocation().
int newGeneration::free | ( | ) | [virtual] |
Implements generation.
Definition at line 105 of file generation.cpp.
References eden(), space::free(), from(), and to().
Here is the call graph for this function:
survivorSpace* newGeneration::from | ( | ) | [inline] |
Definition at line 64 of file generation.hpp.
References from_space.
Referenced by capacity(), compact(), free(), initialize(), object_iterate(), object_start(), prepare_for_compaction(), print(), Universe::spaceFor(), swap_spaces(), switch_pointers(), used(), verify(), and Universe::verify_oop().
void newGeneration::initialize | ( | ReservedSpace | rs, | |
int | eden_size, | |||
int | surv_size | |||
) | [private] |
Definition at line 49 of file generation.cpp.
References eden(), from(), from_space, VirtualSpace::high_boundary(), generation::high_boundary, space::initialize(), VirtualSpace::initialize(), VirtualSpace::low(), VirtualSpace::low_boundary(), generation::low_boundary, newSpace::next_space, ReservedSpace::size(), to(), to_space, and generation::virtual_space.
Referenced by Universe::genesis().
Here is the call graph for this function:
Definition at line 27 of file generation.inline.hpp.
References oopDesc::is_mem(), and is_new().
Here is the call graph for this function:
void newGeneration::object_iterate | ( | ObjectClosure * | blk | ) |
Definition at line 129 of file generation.cpp.
References eden(), from(), and space::object_iterate().
Referenced by Reflection::apply_change(), and Universe::object_iterate().
Here is the call graph for this function:
Definition at line 88 of file generation.cpp.
References contains(), eden(), from(), and newSpace::object_start().
Referenced by Universe::object_start().
Here is the call graph for this function:
void newGeneration::prepare_for_compaction | ( | OldWaterMark * | mark | ) | [private] |
Definition at line 74 of file generation.cpp.
References eden(), from(), and space::prepare_for_compaction().
Referenced by MarkSweep::mark_sweep_phase2().
Here is the call graph for this function:
void newGeneration::print | ( | ) |
Reimplemented from generation.
Definition at line 117 of file generation.cpp.
References eden(), from(), space::print(), generation::print(), outputStream::print_cr(), std, to(), and WizardMode.
Referenced by Universe::print().
Here is the call graph for this function:
void newGeneration::swap_spaces | ( | ) |
Definition at line 32 of file generation.cpp.
References space::clear(), eden(), from(), from_space, newSpace::next_space, space::set_name(), to(), and to_space.
Referenced by Universe::scavenge().
Here is the call graph for this function:
Definition at line 111 of file generation.cpp.
References eden(), from(), space::switch_pointers(), and to().
Referenced by Universe::switch_pointers().
Here is the call graph for this function:
survivorSpace* newGeneration::to | ( | ) | [inline] |
Definition at line 65 of file generation.hpp.
References to_space.
Referenced by capacity(), free(), initialize(), Universe::needs_garbage_collection(), print(), Universe::scavenge(), Universe::should_scavenge(), swap_spaces(), switch_pointers(), used(), verify(), and Universe::verify_oop().
int newGeneration::used | ( | ) | [virtual] |
Implements generation.
Definition at line 99 of file generation.cpp.
References eden(), from(), to(), and space::used().
Here is the call graph for this function:
void newGeneration::verify | ( | ) |
Definition at line 134 of file generation.cpp.
References eden(), error(), from(), from_space, to(), to_space, and newSpace::verify().
Referenced by Universe::verify().
Here is the call graph for this function:
bool newGeneration::would_fit | ( | int | size | ) | [inline] |
Definition at line 77 of file generation.hpp.
References to_space, and survivorSpace::would_fit().
Referenced by Universe::allocate_in_survivor_space().
Here is the call graph for this function:
friend class MarkSweep [friend] |
friend class OopNCode [friend] |
Definition at line 55 of file generation.hpp.
friend class rSet [friend] |
friend class Universe [friend] |
edenSpace newGeneration::eden_space [private] |
survivorSpace* newGeneration::from_space [private] |
Definition at line 59 of file generation.hpp.
Referenced by from(), initialize(), swap_spaces(), and verify().
survivorSpace* newGeneration::to_space [private] |
Definition at line 60 of file generation.hpp.
Referenced by allocate_in_survivor_space(), initialize(), Universe::scavenge(), swap_spaces(), to(), verify(), and would_fit().