Mercurial > hg > truffle
comparison src/share/vm/runtime/safepoint.cpp @ 20192:581e70386ec9
8039147: Cleanup SuspendibleThreadSet
Reviewed-by: brutisso, tschatzl, mgerdin
author | pliden |
---|---|
date | Fri, 11 Apr 2014 12:29:24 +0200 |
parents | 78bbf4d43a14 |
children | ce8f6bb717c9 |
comparison
equal
deleted
inserted
replaced
20191:fd81a5764900 | 20192:581e70386ec9 |
---|---|
73 # include "nativeInst_ppc.hpp" | 73 # include "nativeInst_ppc.hpp" |
74 # include "vmreg_ppc.inline.hpp" | 74 # include "vmreg_ppc.inline.hpp" |
75 #endif | 75 #endif |
76 #if INCLUDE_ALL_GCS | 76 #if INCLUDE_ALL_GCS |
77 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" | 77 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" |
78 #include "gc_implementation/shared/concurrentGCThread.hpp" | 78 #include "gc_implementation/shared/suspendibleThreadSet.hpp" |
79 #endif // INCLUDE_ALL_GCS | 79 #endif // INCLUDE_ALL_GCS |
80 #ifdef COMPILER1 | 80 #ifdef COMPILER1 |
81 #include "c1/c1_globals.hpp" | 81 #include "c1/c1_globals.hpp" |
82 #endif | 82 #endif |
83 | 83 |
110 if (UseConcMarkSweepGC) { | 110 if (UseConcMarkSweepGC) { |
111 // In the future we should investigate whether CMS can use the | 111 // In the future we should investigate whether CMS can use the |
112 // more-general mechanism below. DLD (01/05). | 112 // more-general mechanism below. DLD (01/05). |
113 ConcurrentMarkSweepThread::synchronize(false); | 113 ConcurrentMarkSweepThread::synchronize(false); |
114 } else if (UseG1GC) { | 114 } else if (UseG1GC) { |
115 ConcurrentGCThread::safepoint_synchronize(); | 115 SuspendibleThreadSet::synchronize(); |
116 } | 116 } |
117 #endif // INCLUDE_ALL_GCS | 117 #endif // INCLUDE_ALL_GCS |
118 | 118 |
119 // By getting the Threads_lock, we assure that no threads are about to start or | 119 // By getting the Threads_lock, we assure that no threads are about to start or |
120 // exit. It is released again in SafepointSynchronize::end(). | 120 // exit. It is released again in SafepointSynchronize::end(). |
486 #if INCLUDE_ALL_GCS | 486 #if INCLUDE_ALL_GCS |
487 // If there are any concurrent GC threads resume them. | 487 // If there are any concurrent GC threads resume them. |
488 if (UseConcMarkSweepGC) { | 488 if (UseConcMarkSweepGC) { |
489 ConcurrentMarkSweepThread::desynchronize(false); | 489 ConcurrentMarkSweepThread::desynchronize(false); |
490 } else if (UseG1GC) { | 490 } else if (UseG1GC) { |
491 ConcurrentGCThread::safepoint_desynchronize(); | 491 SuspendibleThreadSet::desynchronize(); |
492 } | 492 } |
493 #endif // INCLUDE_ALL_GCS | 493 #endif // INCLUDE_ALL_GCS |
494 // record this time so VMThread can keep track how much time has elasped | 494 // record this time so VMThread can keep track how much time has elasped |
495 // since last safepoint. | 495 // since last safepoint. |
496 _end_of_last_safepoint = os::javaTimeMillis(); | 496 _end_of_last_safepoint = os::javaTimeMillis(); |