< prev index next >

src/hotspot/share/gc/shared/c2/cardTableBarrierSetC2.hpp

Print this page




  25 #ifndef SHARE_GC_SHARED_C2_CARDTABLEBARRIERSETC2_HPP
  26 #define SHARE_GC_SHARED_C2_CARDTABLEBARRIERSETC2_HPP
  27 
  28 #include "gc/shared/c2/modRefBarrierSetC2.hpp"
  29 
  30 class CardTableBarrierSetC2: public ModRefBarrierSetC2 {
  31 protected:
  32   virtual void post_barrier(GraphKit* kit,
  33                             Node* ctl,
  34                             Node* store,
  35                             Node* obj,
  36                             Node* adr,
  37                             uint adr_idx,
  38                             Node* val,
  39                             BasicType bt,
  40                             bool use_precise) const;
  41 
  42   Node* byte_map_base_node(GraphKit* kit) const;
  43 
  44 public:
  45   virtual void clone(GraphKit* kit, Node* src, Node* dst, Node* size, bool is_array) const;
  46   virtual bool is_gc_barrier_node(Node* node) const;
  47   virtual void eliminate_gc_barrier(PhaseMacroExpand* macro, Node* node) const;
  48   virtual bool array_copy_requires_gc_barriers(BasicType type) const;
  49 
  50   bool use_ReduceInitialCardMarks() const;
  51 };
  52 
  53 #endif // SHARE_GC_SHARED_C2_CARDTABLEBARRIERSETC2_HPP


  25 #ifndef SHARE_GC_SHARED_C2_CARDTABLEBARRIERSETC2_HPP
  26 #define SHARE_GC_SHARED_C2_CARDTABLEBARRIERSETC2_HPP
  27 
  28 #include "gc/shared/c2/modRefBarrierSetC2.hpp"
  29 
  30 class CardTableBarrierSetC2: public ModRefBarrierSetC2 {
  31 protected:
  32   virtual void post_barrier(GraphKit* kit,
  33                             Node* ctl,
  34                             Node* store,
  35                             Node* obj,
  36                             Node* adr,
  37                             uint adr_idx,
  38                             Node* val,
  39                             BasicType bt,
  40                             bool use_precise) const;
  41 
  42   Node* byte_map_base_node(GraphKit* kit) const;
  43 
  44 public:
  45   virtual void clone(GraphKit* kit, Node* src_base, Node* dst_base, Node* countx, bool is_array) const;
  46   virtual bool is_gc_barrier_node(Node* node) const;
  47   virtual void eliminate_gc_barrier(PhaseMacroExpand* macro, Node* node) const;
  48   virtual bool array_copy_requires_gc_barriers(BasicType type) const;
  49 
  50   bool use_ReduceInitialCardMarks() const;
  51 };
  52 
  53 #endif // SHARE_GC_SHARED_C2_CARDTABLEBARRIERSETC2_HPP
< prev index next >