comparison src/share/vm/oops/klassKlass.cpp @ 2891:75a99b4f1c98

Rebranded C++ part from C1X to Graal.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Wed, 08 Jun 2011 14:01:51 +0200
parents 0654ee04b214
children 18a5539bf19b
comparison
equal deleted inserted replaced
2890:c23d45daff9b 2891:75a99b4f1c98
71 for (juint i = 0; i < Klass::primary_super_limit(); i++) 71 for (juint i = 0; i < Klass::primary_super_limit(); i++)
72 MarkSweep::mark_and_push(k->adr_primary_supers()+i); 72 MarkSweep::mark_and_push(k->adr_primary_supers()+i);
73 MarkSweep::mark_and_push(k->adr_secondary_super_cache()); 73 MarkSweep::mark_and_push(k->adr_secondary_super_cache());
74 MarkSweep::mark_and_push(k->adr_secondary_supers()); 74 MarkSweep::mark_and_push(k->adr_secondary_supers());
75 MarkSweep::mark_and_push(k->adr_java_mirror()); 75 MarkSweep::mark_and_push(k->adr_java_mirror());
76 MarkSweep::mark_and_push(k->adr_c1x_mirror()); 76 MarkSweep::mark_and_push(k->adr_graal_mirror());
77 // We follow the subklass and sibling links at the end of the 77 // We follow the subklass and sibling links at the end of the
78 // marking phase, since otherwise following them will prevent 78 // marking phase, since otherwise following them will prevent
79 // class unloading (all classes are transitively linked from 79 // class unloading (all classes are transitively linked from
80 // java.lang.Object). 80 // java.lang.Object).
81 MarkSweep::revisit_weak_klass_link(k); 81 MarkSweep::revisit_weak_klass_link(k);
91 for (juint i = 0; i < Klass::primary_super_limit(); i++) 91 for (juint i = 0; i < Klass::primary_super_limit(); i++)
92 PSParallelCompact::mark_and_push(cm, k->adr_primary_supers()+i); 92 PSParallelCompact::mark_and_push(cm, k->adr_primary_supers()+i);
93 PSParallelCompact::mark_and_push(cm, k->adr_secondary_super_cache()); 93 PSParallelCompact::mark_and_push(cm, k->adr_secondary_super_cache());
94 PSParallelCompact::mark_and_push(cm, k->adr_secondary_supers()); 94 PSParallelCompact::mark_and_push(cm, k->adr_secondary_supers());
95 PSParallelCompact::mark_and_push(cm, k->adr_java_mirror()); 95 PSParallelCompact::mark_and_push(cm, k->adr_java_mirror());
96 PSParallelCompact::mark_and_push(cm, k->adr_c1x_mirror()); 96 PSParallelCompact::mark_and_push(cm, k->adr_graal_mirror());
97 // We follow the subklass and sibling links at the end of the 97 // We follow the subklass and sibling links at the end of the
98 // marking phase, since otherwise following them will prevent 98 // marking phase, since otherwise following them will prevent
99 // class unloading (all classes are transitively linked from 99 // class unloading (all classes are transitively linked from
100 // java.lang.Object). 100 // java.lang.Object).
101 PSParallelCompact::revisit_weak_klass_link(cm, k); 101 PSParallelCompact::revisit_weak_klass_link(cm, k);
111 for (juint i = 0; i < Klass::primary_super_limit(); i++) 111 for (juint i = 0; i < Klass::primary_super_limit(); i++)
112 blk->do_oop(k->adr_primary_supers()+i); 112 blk->do_oop(k->adr_primary_supers()+i);
113 blk->do_oop(k->adr_secondary_super_cache()); 113 blk->do_oop(k->adr_secondary_super_cache());
114 blk->do_oop(k->adr_secondary_supers()); 114 blk->do_oop(k->adr_secondary_supers());
115 blk->do_oop(k->adr_java_mirror()); 115 blk->do_oop(k->adr_java_mirror());
116 blk->do_oop(k->adr_c1x_mirror()); 116 blk->do_oop(k->adr_graal_mirror());
117 // The following are in the perm gen and are treated 117 // The following are in the perm gen and are treated
118 // specially in a later phase of a perm gen collection; ... 118 // specially in a later phase of a perm gen collection; ...
119 assert(oop(k)->is_perm(), "should be in perm"); 119 assert(oop(k)->is_perm(), "should be in perm");
120 assert(oop(k->subklass())->is_perm_or_null(), "should be in perm"); 120 assert(oop(k->subklass())->is_perm_or_null(), "should be in perm");
121 assert(oop(k->next_sibling())->is_perm_or_null(), "should be in perm"); 121 assert(oop(k->next_sibling())->is_perm_or_null(), "should be in perm");
145 if (mr.contains(adr)) blk->do_oop(adr); 145 if (mr.contains(adr)) blk->do_oop(adr);
146 adr = k->adr_secondary_supers(); 146 adr = k->adr_secondary_supers();
147 if (mr.contains(adr)) blk->do_oop(adr); 147 if (mr.contains(adr)) blk->do_oop(adr);
148 adr = k->adr_java_mirror(); 148 adr = k->adr_java_mirror();
149 if (mr.contains(adr)) blk->do_oop(adr); 149 if (mr.contains(adr)) blk->do_oop(adr);
150 adr = k->adr_c1x_mirror(); 150 adr = k->adr_graal_mirror();
151 if (mr.contains(adr)) blk->do_oop(adr); 151 if (mr.contains(adr)) blk->do_oop(adr);
152 // The following are "weak links" in the perm gen and are 152 // The following are "weak links" in the perm gen and are
153 // treated specially in a later phase of a perm gen collection. 153 // treated specially in a later phase of a perm gen collection.
154 assert(oop(k)->is_perm(), "should be in perm"); 154 assert(oop(k)->is_perm(), "should be in perm");
155 assert(oop(k->adr_subklass())->is_perm(), "should be in perm"); 155 assert(oop(k->adr_subklass())->is_perm(), "should be in perm");
175 for (juint i = 0; i < Klass::primary_super_limit(); i++) 175 for (juint i = 0; i < Klass::primary_super_limit(); i++)
176 MarkSweep::adjust_pointer(k->adr_primary_supers()+i); 176 MarkSweep::adjust_pointer(k->adr_primary_supers()+i);
177 MarkSweep::adjust_pointer(k->adr_secondary_super_cache()); 177 MarkSweep::adjust_pointer(k->adr_secondary_super_cache());
178 MarkSweep::adjust_pointer(k->adr_secondary_supers()); 178 MarkSweep::adjust_pointer(k->adr_secondary_supers());
179 MarkSweep::adjust_pointer(k->adr_java_mirror()); 179 MarkSweep::adjust_pointer(k->adr_java_mirror());
180 MarkSweep::adjust_pointer(k->adr_c1x_mirror()); 180 MarkSweep::adjust_pointer(k->adr_graal_mirror());
181 MarkSweep::adjust_pointer(k->adr_subklass()); 181 MarkSweep::adjust_pointer(k->adr_subklass());
182 MarkSweep::adjust_pointer(k->adr_next_sibling()); 182 MarkSweep::adjust_pointer(k->adr_next_sibling());
183 return size; 183 return size;
184 } 184 }
185 185