public class HotSpotMetaAccessProvider extends Object implements MetaAccessProvider, HotSpotProxified
MetaAccessProvider
.Modifier and Type | Field and Description |
---|---|
private Field |
reflectionConstructorSlot
Field object of Constructor.slot . |
private Field |
reflectionMethodSlot
Field object of Method.slot . |
protected HotSpotJVMCIRuntimeProvider |
runtime |
Constructor and Description |
---|
HotSpotMetaAccessProvider(HotSpotJVMCIRuntimeProvider runtime) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
lookupJavaTypes
protected final HotSpotJVMCIRuntimeProvider runtime
private Field reflectionMethodSlot
Field
object of Method.slot
.private Field reflectionConstructorSlot
Field
object of Constructor.slot
.public HotSpotMetaAccessProvider(HotSpotJVMCIRuntimeProvider runtime)
public ResolvedJavaType lookupJavaType(Class<?> clazz)
lookupJavaType
in interface MetaAccessProvider
public HotSpotResolvedObjectType lookupJavaType(JavaConstant constant)
lookupJavaType
in interface MetaAccessProvider
public Signature parseMethodDescriptor(String signature)
parseMethodDescriptor
in interface MetaAccessProvider
private static Field getReflectionSlotField(Class<?> reflectionClass)
public ResolvedJavaMethod lookupJavaMethod(Executable reflectionMethod)
lookupJavaMethod
in interface MetaAccessProvider
public ResolvedJavaField lookupJavaField(Field reflectionField)
lookupJavaField
in interface MetaAccessProvider
private static int intMaskRight(int n)
public JavaConstant encodeDeoptActionAndReason(DeoptimizationAction action, DeoptimizationReason reason, int debugId)
encodeDeoptActionAndReason
in interface MetaAccessProvider
public DeoptimizationReason decodeDeoptReason(JavaConstant constant)
decodeDeoptReason
in interface MetaAccessProvider
public DeoptimizationAction decodeDeoptAction(JavaConstant constant)
decodeDeoptAction
in interface MetaAccessProvider
public int decodeDebugId(JavaConstant constant)
decodeDebugId
in interface MetaAccessProvider
public int convertDeoptAction(DeoptimizationAction action)
public DeoptimizationAction convertDeoptAction(int action)
public int convertDeoptReason(DeoptimizationReason reason)
public DeoptimizationReason convertDeoptReason(int reason)
public long getMemorySize(JavaConstant constant)
getMemorySize
in interface MetaAccessProvider
public static int computeArrayAllocationSize(int length, int alignment, int headerSize, int log2ElementSize)
length
- the number of elements in the arrayalignment
- the object alignment requirementheaderSize
- the size of the array headerlog2ElementSize
- log2 of the size of an element in the array