< prev index next > src/hotspot/cpu/ppc/gc/shenandoah/shenandoahBarrierSetAssembler_ppc.hpp
Print this page
class ShenandoahLoadReferenceBarrierStub;
class StubAssembler;
#endif
+ #ifdef COMPILER2
+
+ class MachNode;
+
+ #endif
+
class StubCodeGenerator;
class ShenandoahBarrierSetAssembler: public BarrierSetAssembler {
private:
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 >