mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-20 19:14:38 +02:00
6964458: Reimplement class meta-data storage to use native memory
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com> Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com> Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com> Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
This commit is contained in:
parent
36eee7c8c8
commit
5c58d27aac
853 changed files with 26124 additions and 82956 deletions
|
@ -293,21 +293,21 @@ bool Generation::block_is_obj(const HeapWord* p) const {
|
|||
|
||||
class GenerationOopIterateClosure : public SpaceClosure {
|
||||
public:
|
||||
OopClosure* cl;
|
||||
ExtendedOopClosure* cl;
|
||||
MemRegion mr;
|
||||
virtual void do_space(Space* s) {
|
||||
s->oop_iterate(mr, cl);
|
||||
}
|
||||
GenerationOopIterateClosure(OopClosure* _cl, MemRegion _mr) :
|
||||
GenerationOopIterateClosure(ExtendedOopClosure* _cl, MemRegion _mr) :
|
||||
cl(_cl), mr(_mr) {}
|
||||
};
|
||||
|
||||
void Generation::oop_iterate(OopClosure* cl) {
|
||||
void Generation::oop_iterate(ExtendedOopClosure* cl) {
|
||||
GenerationOopIterateClosure blk(cl, _reserved);
|
||||
space_iterate(&blk);
|
||||
}
|
||||
|
||||
void Generation::oop_iterate(MemRegion mr, OopClosure* cl) {
|
||||
void Generation::oop_iterate(MemRegion mr, ExtendedOopClosure* cl) {
|
||||
GenerationOopIterateClosure blk(cl, mr);
|
||||
space_iterate(&blk);
|
||||
}
|
||||
|
@ -435,7 +435,7 @@ bool CardGeneration::expand(size_t bytes, size_t expand_bytes) {
|
|||
success = grow_to_reserved();
|
||||
}
|
||||
if (PrintGC && Verbose) {
|
||||
if (success && GC_locker::is_active()) {
|
||||
if (success && GC_locker::is_active_and_needs_gc()) {
|
||||
gclog_or_tty->print_cr("Garbage collection disabled, expanded heap instead");
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue