public class ImageCodeInfo.HostedImageCodeInfo extends Object
CodeInfo
to collect and persist image code metadata in
ImageCodeInfo
and provide accesses during image generation.Modifier and Type | Field and Description |
---|---|
static int |
FIRST_STRONGLY_REFERENCED_OBJFIELD |
static int |
FIRST_WEAKLY_REFERENCED_OBJFIELD |
static int |
INSTALLEDCODE_OBJFIELD
Index of element of type
SubstrateInstalledCode in getObjectFields() : The
handle to the compiled code for the outside world. |
static int |
NAME_OBJFIELD
Index of element of type
String in getObjectFields() : the
name of the InstalledCode. |
static int |
OBJFIELDS_COUNT
The size of the array in
getObjectFields() . |
static int |
STRONGLY_REFERENCED_OBJFIELD_COUNT |
static int |
TETHER_OBJFIELD
Index of element in
getObjectFields() : Once the tether object is no longer referenced
from anywhere else, the memory of this CodeInfoImpl will be released during garbage
collection. |
static int |
WEAKLY_REFERENCED_OBJFIELD_COUNT |
STATE_CODE_CONSTANTS_LIVE, STATE_CREATED, STATE_PARTIALLY_FREED, STATE_READY_FOR_INVALIDATION, STATE_UNREACHABLE
Constructor and Description |
---|
HostedImageCodeInfo() |
public static final int FIRST_STRONGLY_REFERENCED_OBJFIELD
public static final int TETHER_OBJFIELD
getObjectFields()
: Once the tether object is no longer referenced
from anywhere else, the memory of this CodeInfoImpl
will be released during garbage
collection. Note that the object is not pinned, so this field must not be accessed during
garbage collection.public static final int NAME_OBJFIELD
String
in getObjectFields()
: the
name of the InstalledCode. Stored here so it remains
available even after the code is no longer available. Note that the String is not pinned, so
this field must not be accessed during garbage collection.public static final int FIRST_WEAKLY_REFERENCED_OBJFIELD
public static final int INSTALLEDCODE_OBJFIELD
SubstrateInstalledCode
in getObjectFields()
: The
handle to the compiled code for the outside world. We only have a weak reference to it, to
avoid keeping code alive. Note that both the InstalledCode and the weak reference are not
pinned, so this field must not be accessed during garbage collection.public static final int OBJFIELDS_COUNT
getObjectFields()
.public static final int STRONGLY_REFERENCED_OBJFIELD_COUNT
public static final int WEAKLY_REFERENCED_OBJFIELD_COUNT
public org.graalvm.nativeimage.c.function.CodePointer getCodeStart()
public org.graalvm.word.UnsignedWord getCodeSize()
public org.graalvm.word.UnsignedWord getDataOffset()
getCodeStart()
.public org.graalvm.word.UnsignedWord getDataSize()
getDataOffset()
.public org.graalvm.word.UnsignedWord getCodeAndDataMemorySize()
public NonmovableArray<Byte> getStackReferenceMapEncoding()
public void setCodeStart(org.graalvm.nativeimage.c.function.CodePointer value)
public void setCodeSize(org.graalvm.word.UnsignedWord value)
public void setDataOffset(org.graalvm.word.UnsignedWord value)
public void setDataSize(org.graalvm.word.UnsignedWord value)
public void setCodeAndDataMemorySize(org.graalvm.word.UnsignedWord value)
public NonmovableArray<Byte> getCodeInfoIndex()
public void setCodeInfoIndex(NonmovableArray<Byte> array)
public NonmovableArray<Byte> getCodeInfoEncodings()
public void setCodeInfoEncodings(NonmovableArray<Byte> array)
public void setStackReferenceMapEncoding(NonmovableArray<Byte> array)
public NonmovableArray<Byte> getFrameInfoEncodings()
public void setFrameInfoEncodings(NonmovableArray<Byte> array)
public NonmovableObjectArray<Object> getFrameInfoObjectConstants()
public void setFrameInfoObjectConstants(NonmovableObjectArray<Object> array)
public NonmovableObjectArray<Class<?>> getFrameInfoSourceClasses()
public void setFrameInfoSourceClasses(NonmovableObjectArray<Class<?>> array)
public NonmovableObjectArray<String> getFrameInfoSourceMethodNames()
public void setFrameInfoSourceMethodNames(NonmovableObjectArray<String> array)
public NonmovableObjectArray<String> getFrameInfoNames()
public void setFrameInfoNames(NonmovableObjectArray<String> array)
public void setObjectFields(NonmovableObjectArray<Object> fields)
NAME_OBJFIELD
,
OBJFIELDS_COUNT
public NonmovableObjectArray<Object> getObjectFields()
public int getTier()
public void setTier(int tier)
public int getState()
public void setState(int state)
public NonmovableArray<Byte> getCodeConstantsReferenceMapEncoding()
public void setCodeConstantsReferenceMapEncoding(NonmovableArray<Byte> objectsReferenceMapEncoding)
public long getCodeConstantsReferenceMapIndex()
public void setCodeConstantsReferenceMapIndex(long objectsReferenceMapIndex)
public NonmovableArray<Integer> getDeoptimizationStartOffsets()
public void setDeoptimizationStartOffsets(NonmovableArray<Integer> deoptimizationStartOffsets)
public NonmovableArray<Byte> getDeoptimizationEncodings()
public void setDeoptimizationEncodings(NonmovableArray<Byte> deoptimizationEncodings)
public NonmovableObjectArray<Object> getDeoptimizationObjectConstants()
public void setDeoptimizationObjectConstants(NonmovableObjectArray<Object> deoptimizationObjectConstants)
public NonmovableArray<InstalledCodeObserver.InstalledCodeObserverHandle> getCodeObserverHandles()
public void setCodeObserverHandles(NonmovableArray<InstalledCodeObserver.InstalledCodeObserverHandle> handles)
public org.graalvm.compiler.word.Word getGCData()
public void setAllObjectsAreInImageHeap(boolean value)
public boolean getAllObjectsAreInImageHeap()
public boolean isNull()
public boolean isNonNull()
public boolean equal(org.graalvm.word.ComparableWord val)
public boolean notEqual(org.graalvm.word.ComparableWord val)
public long rawValue()