src/hotspot/share/jfr/leakprofiler/chains/pathToGcRootsOperation.cpp
changeset 58132 caa25ab47aca
parent 58014 aba258cd7df8
child 58157 9dca61a7df19
child 58679 9c3209ff7550
equal deleted inserted replaced
58131:3054503bad7d 58132:caa25ab47aca
    41 #include "jfr/leakprofiler/sampling/objectSample.hpp"
    41 #include "jfr/leakprofiler/sampling/objectSample.hpp"
    42 #include "jfr/leakprofiler/sampling/objectSampler.hpp"
    42 #include "jfr/leakprofiler/sampling/objectSampler.hpp"
    43 #include "jfr/leakprofiler/utilities/granularTimer.hpp"
    43 #include "jfr/leakprofiler/utilities/granularTimer.hpp"
    44 #include "logging/log.hpp"
    44 #include "logging/log.hpp"
    45 #include "memory/universe.hpp"
    45 #include "memory/universe.hpp"
    46 #include "oops/markWord.hpp"
       
    47 #include "oops/oop.inline.hpp"
    46 #include "oops/oop.inline.hpp"
    48 #include "runtime/safepoint.hpp"
    47 #include "runtime/safepoint.hpp"
    49 #include "utilities/globalDefinitions.hpp"
    48 #include "utilities/globalDefinitions.hpp"
    50 
    49 
    51 PathToGcRootsOperation::PathToGcRootsOperation(ObjectSampler* sampler, EdgeStore* edge_store, int64_t cutoff, bool emit_all) :
    50 PathToGcRootsOperation::PathToGcRootsOperation(ObjectSampler* sampler, EdgeStore* edge_store, int64_t cutoff, bool emit_all) :
    99   }
    98   }
   100 
    99 
   101   // Save the original markWord for the potential leak objects,
   100   // Save the original markWord for the potential leak objects,
   102   // to be restored on function exit
   101   // to be restored on function exit
   103   ObjectSampleMarker marker;
   102   ObjectSampleMarker marker;
   104   if (ObjectSampleCheckpoint::mark(_sampler, marker, _emit_all) == 0) {
   103   if (ObjectSampleCheckpoint::save_mark_words(_sampler, marker, _emit_all) == 0) {
   105     // no valid samples to process
   104     // no valid samples to process
   106     return;
   105     return;
   107   }
   106   }
   108 
   107 
   109   // Necessary condition for attempting a root set iteration
   108   // Necessary condition for attempting a root set iteration