Interface WriteBarrierSetLIRGeneratorTool

All Superinterfaces:
BarrierSetLIRGeneratorTool
All Known Implementing Classes:
AArch64G1BarrierSetLIRGenerator, AMD64G1BarrierSetLIRGenerator

public interface WriteBarrierSetLIRGeneratorTool extends BarrierSetLIRGeneratorTool
The platform independent base class for LIR generation for garbage collectors that need write barriers. Platform dependent operations are added in subinterfaces.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    emitPostWriteBarrier(LIRGeneratorTool lirTool, jdk.vm.ci.meta.Value address, jdk.vm.ci.meta.Value value, boolean nonNull)
     
    void
    emitPreWriteBarrier(LIRGeneratorTool lirTool, jdk.vm.ci.meta.Value address, jdk.vm.ci.meta.AllocatableValue expectedObject, boolean nonNull)
     
  • Method Details

    • emitPreWriteBarrier

      void emitPreWriteBarrier(LIRGeneratorTool lirTool, jdk.vm.ci.meta.Value address, jdk.vm.ci.meta.AllocatableValue expectedObject, boolean nonNull)
      Parameters:
      address - the location being updated
      expectedObject - the expected pre-value if known
      nonNull - true if expectedObject is known to non-null
    • emitPostWriteBarrier

      void emitPostWriteBarrier(LIRGeneratorTool lirTool, jdk.vm.ci.meta.Value address, jdk.vm.ci.meta.Value value, boolean nonNull)
      Parameters:
      address - the location being updated
      value - the value being written
      nonNull - true if value is known to be non-null