src/hotspot/cpu/sparc/gc/g1/g1BarrierSetAssembler_sparc.hpp
changeset 49906 4bb58f644e4e
parent 49748 6a880e576856
equal deleted inserted replaced
49905:a09af8ef8e5c 49906:4bb58f644e4e
    25 #ifndef CPU_SPARC_GC_G1_G1BARRIERSETASSEMBLER_SPARC_HPP
    25 #ifndef CPU_SPARC_GC_G1_G1BARRIERSETASSEMBLER_SPARC_HPP
    26 #define CPU_SPARC_GC_G1_G1BARRIERSETASSEMBLER_SPARC_HPP
    26 #define CPU_SPARC_GC_G1_G1BARRIERSETASSEMBLER_SPARC_HPP
    27 
    27 
    28 #include "asm/macroAssembler.hpp"
    28 #include "asm/macroAssembler.hpp"
    29 #include "gc/shared/modRefBarrierSetAssembler.hpp"
    29 #include "gc/shared/modRefBarrierSetAssembler.hpp"
       
    30 #include "utilities/macros.hpp"
       
    31 
       
    32 class LIR_Assembler;
       
    33 class StubAssembler;
       
    34 class G1PreBarrierStub;
       
    35 class G1PostBarrierStub;
    30 
    36 
    31 class G1BarrierSetAssembler: public ModRefBarrierSetAssembler {
    37 class G1BarrierSetAssembler: public ModRefBarrierSetAssembler {
    32 protected:
    38 protected:
    33   virtual void gen_write_ref_array_pre_barrier(MacroAssembler* masm, DecoratorSet decorators, Register addr, Register count);
    39   virtual void gen_write_ref_array_pre_barrier(MacroAssembler* masm, DecoratorSet decorators, Register addr, Register count);
    34   virtual void gen_write_ref_array_post_barrier(MacroAssembler* masm, DecoratorSet decorators, Register addr, Register count, Register tmp);
    40   virtual void gen_write_ref_array_post_barrier(MacroAssembler* masm, DecoratorSet decorators, Register addr, Register count, Register tmp);
    38 
    44 
    39   virtual void oop_store_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
    45   virtual void oop_store_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
    40                             Register val, Address dst, Register tmp);
    46                             Register val, Address dst, Register tmp);
    41 
    47 
    42 public:
    48 public:
       
    49 #ifdef COMPILER1
       
    50   void gen_pre_barrier_stub(LIR_Assembler* ce, G1PreBarrierStub* stub);
       
    51   void gen_post_barrier_stub(LIR_Assembler* ce, G1PostBarrierStub* stub);
       
    52 
       
    53   void generate_c1_pre_barrier_runtime_stub(StubAssembler* sasm);
       
    54   void generate_c1_post_barrier_runtime_stub(StubAssembler* sasm);
       
    55 #endif
       
    56 
    43   virtual void load_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
    57   virtual void load_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
    44                        Address src, Register dst, Register tmp);
    58                        Address src, Register dst, Register tmp);
    45   virtual void barrier_stubs_init();
    59   virtual void barrier_stubs_init();
    46 };
    60 };
    47 
    61