src/hotspot/share/classfile/classLoaderDataGraph.cpp
changeset 55603 3868dde58ebb
parent 55268 c5fe45d1281d
child 57603 f9d9bed12d1a
equal deleted inserted replaced
55602:73395f9cad54 55603:3868dde58ebb
    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: ");