src/hotspot/share/gc/shared/barrierSet.hpp
branchepsilon-gc-branch
changeset 56743 774caae3a3ce
parent 56675 483d23cdc9e5
equal deleted inserted replaced
56742:25d779d6bafc 56743:774caae3a3ce
   101     _barrier_set_c1(barrier_set_c1),
   101     _barrier_set_c1(barrier_set_c1),
   102     _barrier_set_c2(barrier_set_c2) {}
   102     _barrier_set_c2(barrier_set_c2) {}
   103   ~BarrierSet() { }
   103   ~BarrierSet() { }
   104 
   104 
   105   template <class BarrierSetAssemblerT>
   105   template <class BarrierSetAssemblerT>
   106   BarrierSetAssembler* make_barrier_set_assembler() {
   106   static BarrierSetAssembler* make_barrier_set_assembler() {
   107     return NOT_ZERO(new BarrierSetAssemblerT()) ZERO_ONLY(NULL);
   107     return NOT_ZERO(new BarrierSetAssemblerT()) ZERO_ONLY(NULL);
   108   }
   108   }
   109 
   109 
   110   template <class BarrierSetC1T>
   110   template <class BarrierSetC1T>
   111   BarrierSetC1* make_barrier_set_c1() {
   111   static BarrierSetC1* make_barrier_set_c1() {
   112     return COMPILER1_PRESENT(new BarrierSetC1T()) NOT_COMPILER1(NULL);
   112     return COMPILER1_PRESENT(new BarrierSetC1T()) NOT_COMPILER1(NULL);
   113   }
   113   }
   114 
   114 
   115   template <class BarrierSetC2T>
   115   template <class BarrierSetC2T>
   116   BarrierSetC2* make_barrier_set_c2() {
   116   static BarrierSetC2* make_barrier_set_c2() {
   117     return COMPILER2_PRESENT(new BarrierSetC2T()) NOT_COMPILER2(NULL);
   117     return COMPILER2_PRESENT(new BarrierSetC2T()) NOT_COMPILER2(NULL);
   118   }
   118   }
   119 
   119 
   120 public:
   120 public:
   121   // Support for optimizing compilers to call the barrier set on slow path allocations
   121   // Support for optimizing compilers to call the barrier set on slow path allocations