comparison src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.inline.hpp @ 6725:da91efe96a93

6964458: Reimplement class meta-data storage to use native memory Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author coleenp
date Sat, 01 Sep 2012 13:25:18 -0400
parents 23c0eb012d6f
children 78bbf4d43a14
comparison
equal deleted inserted replaced
6724:36d1d483d5d6 6725:da91efe96a93
45 inline void ParallelScavengeHeap::invoke_scavenge() 45 inline void ParallelScavengeHeap::invoke_scavenge()
46 { 46 {
47 PSScavenge::invoke(); 47 PSScavenge::invoke();
48 } 48 }
49 49
50 inline void ParallelScavengeHeap::invoke_full_gc(bool maximum_compaction)
51 {
52 if (UseParallelOldGC) {
53 PSParallelCompact::invoke(maximum_compaction);
54 } else {
55 PSMarkSweep::invoke(maximum_compaction);
56 }
57 }
58
59 inline bool ParallelScavengeHeap::is_in_young(oop p) { 50 inline bool ParallelScavengeHeap::is_in_young(oop p) {
60 // Assumes the the old gen address range is lower than that of the young gen. 51 // Assumes the the old gen address range is lower than that of the young gen.
61 const void* loc = (void*) p; 52 const void* loc = (void*) p;
62 bool result = ((HeapWord*)p) >= young_gen()->reserved().start(); 53 bool result = ((HeapWord*)p) >= young_gen()->reserved().start();
63 assert(result == young_gen()->is_in_reserved(p), 54 assert(result == young_gen()->is_in_reserved(p),
64 err_msg("incorrect test - result=%d, p=" PTR_FORMAT, result, (void*)p)); 55 err_msg("incorrect test - result=%d, p=" PTR_FORMAT, result, (void*)p));
65 return result; 56 return result;
66 } 57 }
67
68 inline bool ParallelScavengeHeap::is_in_old_or_perm(oop p) {
69 return old_gen()->is_in_reserved(p) || perm_gen()->is_in_reserved(p);
70 }
71
72 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_INLINE_HPP 58 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_INLINE_HPP