Module openj9.dtfj

Class MMObjectAccessBarrier


  • public abstract class MMObjectAccessBarrier
    extends GCBase
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer convertPointerFromToken​(long token)
      Converts token (e.g. compressed pointer value) into real heap pointer.
      abstract long convertTokenFromPointer​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer pointer)
      Converts real heap pointer into token (e.g. compressed pointer value).
      static MMObjectAccessBarrier from()
      Factory method to construct an appropriate object model.
      abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getFinalizeLink​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
      Fetch the finalize link field of object.
      abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer getLockword​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
      Return the lockword for the given object, or NULL if it does not have a lockword.
      abstract ObjectMonitor getMonitor​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
      Return an object representing the monitor for the given object, or NULL if it does not have a lockword/monitor.
      abstract I32 getObjectHashCode​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
      Determine the basic hash code for the specified object.
      abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getReferenceLink​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
      Fetch the reference link field of the specified reference object.
    • Constructor Detail

      • MMObjectAccessBarrier

        protected MMObjectAccessBarrier()
    • Method Detail

      • getObjectHashCode

        public abstract I32 getObjectHashCode​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
                                       throws CorruptDataException
        Determine the basic hash code for the specified object.
        Parameters:
        object - [in] the object to be hashed
        Returns:
        the persistent, basic hash code for the object
        Throws:
        CorruptDataException
      • getFinalizeLink

        public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getFinalizeLink​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
                                                                                      throws CorruptDataException
        Fetch the finalize link field of object.
        Parameters:
        object - [in] the object to read
        Returns:
        the value stored in the object's finalizeLink field
        Throws:
        CorruptDataException
      • getReferenceLink

        public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getReferenceLink​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
                                                                                       throws CorruptDataException
        Fetch the reference link field of the specified reference object.
        Parameters:
        object - the object to read
        Returns:
        the value stored in the object's reference link field
        Throws:
        CorruptDataException
      • getLockword

        public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer getLockword​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
                                                                                         throws CorruptDataException
        Return the lockword for the given object, or NULL if it does not have a lockword. This may return NULL, a flatlock, or an inflated monitor.
        Throws:
        CorruptDataException
      • getMonitor

        public abstract ObjectMonitor getMonitor​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
                                          throws CorruptDataException
        Return an object representing the monitor for the given object, or NULL if it does not have a lockword/monitor.
        Throws:
        CorruptDataException
      • convertPointerFromToken

        public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer convertPointerFromToken​(long token)
        Converts token (e.g. compressed pointer value) into real heap pointer.
        Returns:
        the heap pointer value.
      • convertTokenFromPointer

        public abstract long convertTokenFromPointer​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer pointer)
        Converts real heap pointer into token (e.g. compressed pointer value).
        Returns:
        the compressed pointer value.