equal
deleted
inserted
replaced
62 for (ClassLoaderData* cld = OrderAccess::load_acquire(&_head); cld != NULL; cld = cld->next()) { |
62 for (ClassLoaderData* cld = OrderAccess::load_acquire(&_head); cld != NULL; cld = cld->next()) { |
63 cld->clear_claim(); |
63 cld->clear_claim(); |
64 } |
64 } |
65 } |
65 } |
66 |
66 |
|
67 void ClassLoaderDataGraph::clear_claimed_marks(int claim) { |
|
68 for (ClassLoaderData* cld = OrderAccess::load_acquire(&_head); cld != NULL; cld = cld->next()) { |
|
69 cld->clear_claim(claim); |
|
70 } |
|
71 } |
67 // Class iterator used by the compiler. It gets some number of classes at |
72 // Class iterator used by the compiler. It gets some number of classes at |
68 // a safepoint to decay invocation counters on the methods. |
73 // a safepoint to decay invocation counters on the methods. |
69 class ClassLoaderDataGraphKlassIteratorStatic { |
74 class ClassLoaderDataGraphKlassIteratorStatic { |
70 ClassLoaderData* _current_loader_data; |
75 ClassLoaderData* _current_loader_data; |
71 Klass* _current_class_entry; |
76 Klass* _current_class_entry; |
469 GrowableArray<ClassLoaderData*>* array = new GrowableArray<ClassLoaderData*>(); |
474 GrowableArray<ClassLoaderData*>* array = new GrowableArray<ClassLoaderData*>(); |
470 |
475 |
471 // The CLDs in [_head, _saved_head] were all added during last call to remember_new_clds(true); |
476 // The CLDs in [_head, _saved_head] were all added during last call to remember_new_clds(true); |
472 ClassLoaderData* curr = _head; |
477 ClassLoaderData* curr = _head; |
473 while (curr != _saved_head) { |
478 while (curr != _saved_head) { |
474 if (!curr->claimed()) { |
479 if (!curr->claimed(ClassLoaderData::_claim_strong)) { |
475 array->push(curr); |
480 array->push(curr); |
476 LogTarget(Debug, class, loader, data) lt; |
481 LogTarget(Debug, class, loader, data) lt; |
477 if (lt.is_enabled()) { |
482 if (lt.is_enabled()) { |
478 LogStream ls(lt); |
483 LogStream ls(lt); |
479 ls.print("found new CLD: "); |
484 ls.print("found new CLD: "); |