src/share/vm/runtime/safepoint.cpp

Print this page
rev 6670 : 8049325: Introduce and clean up umbrella headers for the files in the cpu subdirectories.
Reviewed-by: lfoltan, coleenp, dholmes


  39 #include "oops/symbol.hpp"
  40 #include "runtime/atomic.inline.hpp"
  41 #include "runtime/compilationPolicy.hpp"
  42 #include "runtime/deoptimization.hpp"
  43 #include "runtime/frame.inline.hpp"
  44 #include "runtime/interfaceSupport.hpp"
  45 #include "runtime/mutexLocker.hpp"
  46 #include "runtime/orderAccess.inline.hpp"
  47 #include "runtime/osThread.hpp"
  48 #include "runtime/safepoint.hpp"
  49 #include "runtime/signature.hpp"
  50 #include "runtime/stubCodeGenerator.hpp"
  51 #include "runtime/stubRoutines.hpp"
  52 #include "runtime/sweeper.hpp"
  53 #include "runtime/synchronizer.hpp"
  54 #include "runtime/thread.inline.hpp"
  55 #include "services/memTracker.hpp"
  56 #include "services/runtimeService.hpp"
  57 #include "utilities/events.hpp"
  58 #include "utilities/macros.hpp"
  59 #ifdef TARGET_ARCH_x86
  60 # include "nativeInst_x86.hpp"
  61 # include "vmreg_x86.inline.hpp"
  62 #endif
  63 #ifdef TARGET_ARCH_sparc
  64 # include "nativeInst_sparc.hpp"
  65 # include "vmreg_sparc.inline.hpp"
  66 #endif
  67 #ifdef TARGET_ARCH_zero
  68 # include "nativeInst_zero.hpp"
  69 # include "vmreg_zero.inline.hpp"
  70 #endif
  71 #ifdef TARGET_ARCH_arm
  72 # include "nativeInst_arm.hpp"
  73 # include "vmreg_arm.inline.hpp"
  74 #endif
  75 #ifdef TARGET_ARCH_ppc
  76 # include "nativeInst_ppc.hpp"
  77 # include "vmreg_ppc.inline.hpp"
  78 #endif
  79 #if INCLUDE_ALL_GCS
  80 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp"
  81 #include "gc_implementation/shared/suspendibleThreadSet.hpp"
  82 #endif // INCLUDE_ALL_GCS
  83 #ifdef COMPILER1
  84 #include "c1/c1_globals.hpp"
  85 #endif
  86 
  87 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
  88 
  89 // --------------------------------------------------------------------------------------------------
  90 // Implementation of Safepoint begin/end
  91 
  92 SafepointSynchronize::SynchronizeState volatile SafepointSynchronize::_state = SafepointSynchronize::_not_synchronized;
  93 volatile int  SafepointSynchronize::_waiting_to_block = 0;
  94 volatile int SafepointSynchronize::_safepoint_counter = 0;
  95 int SafepointSynchronize::_current_jni_active_count = 0;
  96 long  SafepointSynchronize::_end_of_last_safepoint = 0;
  97 static volatile int PageArmed = 0 ;        // safepoint polling page is RO|RW vs PROT_NONE
  98 static volatile int TryingToBlock = 0 ;    // proximate value -- for advisory use only




  39 #include "oops/symbol.hpp"
  40 #include "runtime/atomic.inline.hpp"
  41 #include "runtime/compilationPolicy.hpp"
  42 #include "runtime/deoptimization.hpp"
  43 #include "runtime/frame.inline.hpp"
  44 #include "runtime/interfaceSupport.hpp"
  45 #include "runtime/mutexLocker.hpp"
  46 #include "runtime/orderAccess.inline.hpp"
  47 #include "runtime/osThread.hpp"
  48 #include "runtime/safepoint.hpp"
  49 #include "runtime/signature.hpp"
  50 #include "runtime/stubCodeGenerator.hpp"
  51 #include "runtime/stubRoutines.hpp"
  52 #include "runtime/sweeper.hpp"
  53 #include "runtime/synchronizer.hpp"
  54 #include "runtime/thread.inline.hpp"
  55 #include "services/memTracker.hpp"
  56 #include "services/runtimeService.hpp"
  57 #include "utilities/events.hpp"
  58 #include "utilities/macros.hpp"




















  59 #if INCLUDE_ALL_GCS
  60 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp"
  61 #include "gc_implementation/shared/suspendibleThreadSet.hpp"
  62 #endif // INCLUDE_ALL_GCS
  63 #ifdef COMPILER1
  64 #include "c1/c1_globals.hpp"
  65 #endif
  66 
  67 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
  68 
  69 // --------------------------------------------------------------------------------------------------
  70 // Implementation of Safepoint begin/end
  71 
  72 SafepointSynchronize::SynchronizeState volatile SafepointSynchronize::_state = SafepointSynchronize::_not_synchronized;
  73 volatile int  SafepointSynchronize::_waiting_to_block = 0;
  74 volatile int SafepointSynchronize::_safepoint_counter = 0;
  75 int SafepointSynchronize::_current_jni_active_count = 0;
  76 long  SafepointSynchronize::_end_of_last_safepoint = 0;
  77 static volatile int PageArmed = 0 ;        // safepoint polling page is RO|RW vs PROT_NONE
  78 static volatile int TryingToBlock = 0 ;    // proximate value -- for advisory use only