< prev index next >

src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.hpp

Print this page

227   CodeBlob* load_reference_barrier_weak_rt_code_blob() {
228     assert(_load_reference_barrier_weak_rt_code_blob != nullptr, "");
229     return _load_reference_barrier_weak_rt_code_blob;
230   }
231 
232   CodeBlob* load_reference_barrier_phantom_rt_code_blob() {
233     assert(_load_reference_barrier_phantom_rt_code_blob != nullptr, "");
234     return _load_reference_barrier_phantom_rt_code_blob;
235   }
236 
237 protected:
238 
239   virtual void store_at_resolved(LIRAccess& access, LIR_Opr value);
240   virtual LIR_Opr resolve_address(LIRAccess& access, bool resolve_in_register);
241   virtual void load_at_resolved(LIRAccess& access, LIR_Opr result);
242 
243   virtual LIR_Opr atomic_cmpxchg_at_resolved(LIRAccess& access, LIRItem& cmp_value, LIRItem& new_value);
244 
245   virtual LIR_Opr atomic_xchg_at_resolved(LIRAccess& access, LIRItem& value);
246 


247 public:
248 
249   virtual void generate_c1_runtime_stubs(BufferBlob* buffer_blob);
250 };
251 
252 #endif // SHARE_GC_SHENANDOAH_C1_SHENANDOAHBARRIERSETC1_HPP

227   CodeBlob* load_reference_barrier_weak_rt_code_blob() {
228     assert(_load_reference_barrier_weak_rt_code_blob != nullptr, "");
229     return _load_reference_barrier_weak_rt_code_blob;
230   }
231 
232   CodeBlob* load_reference_barrier_phantom_rt_code_blob() {
233     assert(_load_reference_barrier_phantom_rt_code_blob != nullptr, "");
234     return _load_reference_barrier_phantom_rt_code_blob;
235   }
236 
237 protected:
238 
239   virtual void store_at_resolved(LIRAccess& access, LIR_Opr value);
240   virtual LIR_Opr resolve_address(LIRAccess& access, bool resolve_in_register);
241   virtual void load_at_resolved(LIRAccess& access, LIR_Opr result);
242 
243   virtual LIR_Opr atomic_cmpxchg_at_resolved(LIRAccess& access, LIRItem& cmp_value, LIRItem& new_value);
244 
245   virtual LIR_Opr atomic_xchg_at_resolved(LIRAccess& access, LIRItem& value);
246 
247   void post_barrier(LIRAccess& access, LIR_Opr addr, LIR_Opr new_val);
248 
249 public:
250 
251   virtual void generate_c1_runtime_stubs(BufferBlob* buffer_blob);
252 };
253 
254 #endif // SHARE_GC_SHENANDOAH_C1_SHENANDOAHBARRIERSETC1_HPP
< prev index next >