public class HotSpotMemoryAccessProviderImpl extends Object implements HotSpotMemoryAccessProvider, HotSpotProxified
MemoryAccessProvider
.Modifier and Type | Field and Description |
---|---|
protected HotSpotJVMCIRuntimeProvider |
runtime |
Constructor and Description |
---|
HotSpotMemoryAccessProviderImpl(HotSpotJVMCIRuntimeProvider runtime) |
Modifier and Type | Method and Description |
---|---|
private static Object |
asObject(Constant base) |
private static long |
asRawPointer(Constant base) |
private boolean |
isValidObjectFieldDisplacement(Constant base,
long displacement) |
Constant |
readKlassPointerConstant(Constant base,
long displacement) |
Constant |
readMethodPointerConstant(Constant base,
long displacement) |
Constant |
readNarrowKlassPointerConstant(Constant base,
long displacement,
HotSpotVMConfig.CompressEncoding encoding) |
JavaConstant |
readNarrowOopConstant(Constant base,
long displacement,
HotSpotVMConfig.CompressEncoding encoding) |
JavaConstant |
readObjectConstant(Constant base,
long displacement) |
JavaConstant |
readPrimitiveConstant(Kind kind,
Constant baseConstant,
long initialDisplacement,
int bits) |
private Object |
readRawObject(Constant baseConstant,
long initialDisplacement,
boolean compressed) |
private static long |
readRawValue(Constant baseConstant,
long displacement,
int bits) |
JavaConstant |
readUnsafeConstant(Kind kind,
JavaConstant baseConstant,
long displacement) |
private boolean |
verifyReadRawObject(Object expected,
Constant base,
long displacement,
boolean compressed) |
protected final HotSpotJVMCIRuntimeProvider runtime
public HotSpotMemoryAccessProviderImpl(HotSpotJVMCIRuntimeProvider runtime)
private boolean isValidObjectFieldDisplacement(Constant base, long displacement)
private static long asRawPointer(Constant base)
private static long readRawValue(Constant baseConstant, long displacement, int bits)
private boolean verifyReadRawObject(Object expected, Constant base, long displacement, boolean compressed)
private Object readRawObject(Constant baseConstant, long initialDisplacement, boolean compressed)
public JavaConstant readUnsafeConstant(Kind kind, JavaConstant baseConstant, long displacement)
readUnsafeConstant
in interface MemoryAccessProvider
public JavaConstant readPrimitiveConstant(Kind kind, Constant baseConstant, long initialDisplacement, int bits)
readPrimitiveConstant
in interface MemoryAccessProvider
public JavaConstant readObjectConstant(Constant base, long displacement)
readObjectConstant
in interface MemoryAccessProvider
public JavaConstant readNarrowOopConstant(Constant base, long displacement, HotSpotVMConfig.CompressEncoding encoding)
readNarrowOopConstant
in interface HotSpotMemoryAccessProvider
public Constant readKlassPointerConstant(Constant base, long displacement)
readKlassPointerConstant
in interface HotSpotMemoryAccessProvider
public Constant readNarrowKlassPointerConstant(Constant base, long displacement, HotSpotVMConfig.CompressEncoding encoding)
readNarrowKlassPointerConstant
in interface HotSpotMemoryAccessProvider
public Constant readMethodPointerConstant(Constant base, long displacement)
readMethodPointerConstant
in interface HotSpotMemoryAccessProvider