Mercurial > hg > graal-jvmci-8
comparison src/share/vm/gc_implementation/parallelScavenge/vmStructs_parallelgc.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 | f95d63e2154a |
children |
comparison
equal
deleted
inserted
replaced
6724:36d1d483d5d6 | 6725:da91efe96a93 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
56 nonstatic_field(PSOldGen, _object_space, MutableSpace*) \ | 56 nonstatic_field(PSOldGen, _object_space, MutableSpace*) \ |
57 nonstatic_field(PSOldGen, _init_gen_size, const size_t) \ | 57 nonstatic_field(PSOldGen, _init_gen_size, const size_t) \ |
58 nonstatic_field(PSOldGen, _min_gen_size, const size_t) \ | 58 nonstatic_field(PSOldGen, _min_gen_size, const size_t) \ |
59 nonstatic_field(PSOldGen, _max_gen_size, const size_t) \ | 59 nonstatic_field(PSOldGen, _max_gen_size, const size_t) \ |
60 \ | 60 \ |
61 nonstatic_field(PSPermGen, _last_used, size_t) \ | |
62 \ | 61 \ |
63 static_field(ParallelScavengeHeap, _young_gen, PSYoungGen*) \ | 62 static_field(ParallelScavengeHeap, _young_gen, PSYoungGen*) \ |
64 static_field(ParallelScavengeHeap, _old_gen, PSOldGen*) \ | 63 static_field(ParallelScavengeHeap, _old_gen, PSOldGen*) \ |
65 static_field(ParallelScavengeHeap, _perm_gen, PSPermGen*) \ | |
66 static_field(ParallelScavengeHeap, _psh, ParallelScavengeHeap*) \ | 64 static_field(ParallelScavengeHeap, _psh, ParallelScavengeHeap*) \ |
67 \ | 65 \ |
68 | 66 |
69 #define VM_TYPES_PARALLELGC(declare_type, \ | 67 #define VM_TYPES_PARALLELGC(declare_type, \ |
70 declare_toplevel_type) \ | 68 declare_toplevel_type) \ |
79 declare_type(MutableSpace, ImmutableSpace) \ | 77 declare_type(MutableSpace, ImmutableSpace) \ |
80 declare_toplevel_type(PSYoungGen) \ | 78 declare_toplevel_type(PSYoungGen) \ |
81 declare_type(ASPSYoungGen, PSYoungGen) \ | 79 declare_type(ASPSYoungGen, PSYoungGen) \ |
82 declare_toplevel_type(PSOldGen) \ | 80 declare_toplevel_type(PSOldGen) \ |
83 declare_type(ASPSOldGen, PSOldGen) \ | 81 declare_type(ASPSOldGen, PSOldGen) \ |
84 declare_type(PSPermGen, PSOldGen) \ | |
85 \ | 82 \ |
86 /*****************************/ \ | 83 /*****************************/ \ |
87 /* Parallel GC pointer types */ \ | 84 /* Parallel GC pointer types */ \ |
88 /*****************************/ \ | 85 /*****************************/ \ |
89 \ | 86 \ |
92 declare_toplevel_type(MutableSpace*) \ | 89 declare_toplevel_type(MutableSpace*) \ |
93 declare_toplevel_type(PSYoungGen*) \ | 90 declare_toplevel_type(PSYoungGen*) \ |
94 declare_toplevel_type(ASPSYoungGen*) \ | 91 declare_toplevel_type(ASPSYoungGen*) \ |
95 declare_toplevel_type(PSOldGen*) \ | 92 declare_toplevel_type(PSOldGen*) \ |
96 declare_toplevel_type(ASPSOldGen*) \ | 93 declare_toplevel_type(ASPSOldGen*) \ |
97 declare_toplevel_type(PSPermGen*) \ | |
98 declare_toplevel_type(ParallelScavengeHeap*) | 94 declare_toplevel_type(ParallelScavengeHeap*) |
99 | 95 |
100 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_VMSTRUCTS_PARALLELGC_HPP | 96 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_VMSTRUCTS_PARALLELGC_HPP |