public class NarrowOopStamp extends AbstractObjectStamp
Modifier and Type | Field and Description |
---|---|
private HotSpotVMConfig.CompressEncoding |
encoding |
Constructor and Description |
---|
NarrowOopStamp(ResolvedJavaType type,
boolean exactType,
boolean nonNull,
boolean alwaysNull,
HotSpotVMConfig.CompressEncoding encoding) |
Modifier and Type | Method and Description |
---|---|
JavaConstant |
asConstant()
If this stamp represents a single value, the methods returns this single value.
|
static Stamp |
compressed(AbstractObjectStamp stamp,
HotSpotVMConfig.CompressEncoding encoding) |
protected AbstractObjectStamp |
copyWith(ResolvedJavaType type,
boolean exactType,
boolean nonNull,
boolean alwaysNull) |
boolean |
equals(Object obj) |
HotSpotVMConfig.CompressEncoding |
getEncoding() |
LIRKind |
getLIRKind(LIRKindTool tool)
Gets a platform dependent
LIRKind that can be used to store a value of this stamp. |
int |
hashCode() |
boolean |
isCompatible(Stamp other)
Test whether two stamps have the same base type.
|
Constant |
readConstant(MemoryAccessProvider provider,
Constant base,
long displacement)
Read a value of this stamp from memory.
|
String |
toString() |
Stamp |
uncompressed() |
appendString, constant, copyWith, empty, getStackKind, hasValues, improveWith, isConcreteType, isExactType, javaType, join, meet, type, unrestricted
alwaysNull, nonNull
alwaysDistinct, isEmpty, neverDistinct, tryImproveWith
private final HotSpotVMConfig.CompressEncoding encoding
public NarrowOopStamp(ResolvedJavaType type, boolean exactType, boolean nonNull, boolean alwaysNull, HotSpotVMConfig.CompressEncoding encoding)
protected AbstractObjectStamp copyWith(ResolvedJavaType type, boolean exactType, boolean nonNull, boolean alwaysNull)
copyWith
in class AbstractObjectStamp
public static Stamp compressed(AbstractObjectStamp stamp, HotSpotVMConfig.CompressEncoding encoding)
public Stamp uncompressed()
public HotSpotVMConfig.CompressEncoding getEncoding()
public LIRKind getLIRKind(LIRKindTool tool)
Stamp
LIRKind
that can be used to store a value of this stamp.getLIRKind
in class Stamp
public boolean isCompatible(Stamp other)
Stamp
isCompatible
in class Stamp
public Constant readConstant(MemoryAccessProvider provider, Constant base, long displacement)
Stamp
readConstant
in class Stamp
public int hashCode()
hashCode
in class AbstractObjectStamp
public boolean equals(Object obj)
equals
in class AbstractObjectStamp
public JavaConstant asConstant()
Stamp
asConstant
in class AbstractPointerStamp