equal
deleted
inserted
replaced
277 ClassLoaderData* next() const { return _next; } |
277 ClassLoaderData* next() const { return _next; } |
278 |
278 |
279 ClassLoaderData(Handle h_class_loader, bool is_anonymous, Dependencies dependencies); |
279 ClassLoaderData(Handle h_class_loader, bool is_anonymous, Dependencies dependencies); |
280 ~ClassLoaderData(); |
280 ~ClassLoaderData(); |
281 |
281 |
282 // GC interface. |
|
283 void clear_claimed() { _claimed = 0; } |
|
284 bool claimed() const { return _claimed == 1; } |
|
285 bool claim(); |
|
286 |
|
287 // The CLD are not placed in the Heap, so the Card Table or |
282 // The CLD are not placed in the Heap, so the Card Table or |
288 // the Mod Union Table can't be used to mark when CLD have modified oops. |
283 // the Mod Union Table can't be used to mark when CLD have modified oops. |
289 // The CT and MUT bits saves this information for the whole class loader data. |
284 // The CT and MUT bits saves this information for the whole class loader data. |
290 void clear_modified_oops() { _modified_oops = false; } |
285 void clear_modified_oops() { _modified_oops = false; } |
291 public: |
286 public: |
313 // Allocate out of this class loader data |
308 // Allocate out of this class loader data |
314 MetaWord* allocate(size_t size); |
309 MetaWord* allocate(size_t size); |
315 |
310 |
316 Dictionary* create_dictionary(); |
311 Dictionary* create_dictionary(); |
317 public: |
312 public: |
|
313 // GC interface. |
|
314 void clear_claimed() { _claimed = 0; } |
|
315 bool claimed() const { return _claimed == 1; } |
|
316 bool claim(); |
318 |
317 |
319 bool is_alive(BoolObjectClosure* is_alive_closure) const; |
318 bool is_alive(BoolObjectClosure* is_alive_closure) const; |
320 |
319 |
321 // Accessors |
320 // Accessors |
322 Metaspace* metaspace_or_null() const { return _metaspace; } |
321 Metaspace* metaspace_or_null() const { return _metaspace; } |