src/hotspot/share/gc/z/zRootsIterator.cpp
changeset 57828 35db8fba55f9
parent 57659 d349685a98ae
child 57851 6728c41f2a08
equal deleted inserted replaced
57827:425412369353 57828:35db8fba55f9
    28 #include "code/codeCache.hpp"
    28 #include "code/codeCache.hpp"
    29 #include "compiler/oopMap.hpp"
    29 #include "compiler/oopMap.hpp"
    30 #include "gc/shared/barrierSet.hpp"
    30 #include "gc/shared/barrierSet.hpp"
    31 #include "gc/shared/barrierSetNMethod.hpp"
    31 #include "gc/shared/barrierSetNMethod.hpp"
    32 #include "gc/shared/oopStorageParState.inline.hpp"
    32 #include "gc/shared/oopStorageParState.inline.hpp"
       
    33 #include "gc/shared/oopStorageSet.hpp"
    33 #include "gc/shared/suspendibleThreadSet.hpp"
    34 #include "gc/shared/suspendibleThreadSet.hpp"
    34 #include "gc/z/zBarrierSetNMethod.hpp"
    35 #include "gc/z/zBarrierSetNMethod.hpp"
    35 #include "gc/z/zGlobals.hpp"
    36 #include "gc/z/zGlobals.hpp"
    36 #include "gc/z/zNMethod.hpp"
    37 #include "gc/z/zNMethod.hpp"
    37 #include "gc/z/zOopClosures.inline.hpp"
    38 #include "gc/z/zOopClosures.inline.hpp"
    41 #include "memory/resourceArea.hpp"
    42 #include "memory/resourceArea.hpp"
    42 #include "memory/universe.hpp"
    43 #include "memory/universe.hpp"
    43 #include "prims/jvmtiExport.hpp"
    44 #include "prims/jvmtiExport.hpp"
    44 #include "prims/resolvedMethodTable.hpp"
    45 #include "prims/resolvedMethodTable.hpp"
    45 #include "runtime/atomic.hpp"
    46 #include "runtime/atomic.hpp"
    46 #include "runtime/jniHandles.hpp"
       
    47 #include "runtime/thread.hpp"
    47 #include "runtime/thread.hpp"
    48 #include "runtime/safepoint.hpp"
    48 #include "runtime/safepoint.hpp"
    49 #include "runtime/synchronizer.hpp"
    49 #include "runtime/synchronizer.hpp"
    50 #include "services/management.hpp"
    50 #include "services/management.hpp"
    51 #include "utilities/debug.hpp"
    51 #include "utilities/debug.hpp"
   263     _jvmti_weak_export.oops_do(cl);
   263     _jvmti_weak_export.oops_do(cl);
   264   }
   264   }
   265 }
   265 }
   266 
   266 
   267 ZConcurrentRootsIterator::ZConcurrentRootsIterator(int cld_claim) :
   267 ZConcurrentRootsIterator::ZConcurrentRootsIterator(int cld_claim) :
   268     _jni_handles_iter(JNIHandles::global_handles()),
   268     _jni_handles_iter(OopStorageSet::jni_global()),
   269     _vm_handles_iter(SystemDictionary::vm_global_oop_storage()),
   269     _vm_handles_iter(OopStorageSet::vm_global()),
   270     _cld_claim(cld_claim),
   270     _cld_claim(cld_claim),
   271     _jni_handles(this),
   271     _jni_handles(this),
   272     _vm_handles(this),
   272     _vm_handles(this),
   273     _class_loader_data_graph(this) {
   273     _class_loader_data_graph(this) {
   274   ZStatTimer timer(ZSubPhaseConcurrentRootsSetup);
   274   ZStatTimer timer(ZSubPhaseConcurrentRootsSetup);
   335   AlwaysTrueClosure always_alive;
   335   AlwaysTrueClosure always_alive;
   336   weak_oops_do(&always_alive, cl);
   336   weak_oops_do(&always_alive, cl);
   337 }
   337 }
   338 
   338 
   339 ZConcurrentWeakRootsIterator::ZConcurrentWeakRootsIterator() :
   339 ZConcurrentWeakRootsIterator::ZConcurrentWeakRootsIterator() :
   340     _vm_weak_handles_iter(SystemDictionary::vm_weak_oop_storage()),
   340     _vm_weak_handles_iter(OopStorageSet::vm_weak()),
   341     _jni_weak_handles_iter(JNIHandles::weak_global_handles()),
   341     _jni_weak_handles_iter(OopStorageSet::jni_weak()),
   342     _string_table_iter(StringTable::weak_storage()),
   342     _string_table_iter(OopStorageSet::string_table_weak()),
   343     _resolved_method_table_iter(ResolvedMethodTable::weak_storage()),
   343     _resolved_method_table_iter(OopStorageSet::resolved_method_table_weak()),
   344     _vm_weak_handles(this),
   344     _vm_weak_handles(this),
   345     _jni_weak_handles(this),
   345     _jni_weak_handles(this),
   346     _string_table(this),
   346     _string_table(this),
   347     _resolved_method_table(this) {
   347     _resolved_method_table(this) {
   348   StringTable::reset_dead_counter();
   348   StringTable::reset_dead_counter();