< prev index next >

src/hotspot/cpu/ppc/gc/shenandoah/shenandoahBarrierSetAssembler_ppc.hpp

Print this page
@@ -38,10 +38,16 @@
  class ShenandoahLoadReferenceBarrierStub;
  class StubAssembler;
  
  #endif
  
+ #ifdef COMPILER2
+ 
+ class MachNode;
+ 
+ #endif
+ 
  class StubCodeGenerator;
  
  class ShenandoahBarrierSetAssembler: public BarrierSetAssembler {
  private:
  

@@ -122,8 +128,27 @@
  
    virtual void try_resolve_jobject_in_native(MacroAssembler* masm, Register dst, Register jni_env,
                                               Register obj, Register tmp, Label& slowpath);
  
    virtual void try_resolve_weak_handle(MacroAssembler* masm, Register obj, Register tmp, Label& slow_path);
+ 
+ #ifdef COMPILER2
+   // Entry points from Matcher
+   void load_c2(const MachNode* node, MacroAssembler* masm,
+                Register dst, Address addr);
+ 
+   void store_c2(const MachNode* node, MacroAssembler* masm,
+                 Address dst, bool dst_narrow, Register src, bool src_narrow);
+ 
+   void compare_and_set_c2(const MachNode* node, MacroAssembler* masm,
+                           Register res, Register addr, Register oldval,
+                           Register newval, bool exchange, bool narrow, bool weak);
+ 
+   void get_and_set_c2(const MachNode* node, MacroAssembler* masm,
+                       Register preval, Register newval, Register addr);
+ 
+   void card_barrier_c2(const MachNode* node, MacroAssembler* masm,
+                        Address addr);
+ #endif // COMPILER2
  };
  
  #endif // CPU_PPC_GC_SHENANDOAH_SHENANDOAHBARRIERSETASSEMBLER_PPC_HPP
< prev index next >