| Modifier and Type | Field and Description |
|---|---|
static int |
ESTIMATED_NUMBER_OF_TYPES |
protected HostVM |
hostVM |
protected SubstitutionProcessor |
substitutions |
| Constructor and Description |
|---|
AnalysisUniverse(HostVM hostVM,
JavaKind wordKind,
AnalysisPolicy analysisPolicy,
SubstitutionProcessor substitutions,
jdk.vm.ci.meta.MetaAccessProvider originalMetaAccess,
org.graalvm.compiler.api.replacements.SnippetReflectionProvider originalSnippetReflection,
org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection,
AnalysisFactory analysisFactory) |
| Modifier and Type | Method and Description |
|---|---|
AnalysisPolicy |
analysisPolicy() |
BigBang |
getBigbang() |
org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess |
getConcurrentAnalysisAccess() |
Map<JavaConstant,BytecodePosition> |
getEmbeddedRoots() |
SubstitutionProcessor[] |
getFeatureNativeSubstitutions() |
SubstitutionProcessor[] |
getFeatureSubstitutions() |
Collection<AnalysisField> |
getFields() |
ImageHeapScanner |
getHeapScanner() |
HeapSnapshotVerifier |
getHeapVerifier() |
Collection<AnalysisMethod> |
getMethods() |
int |
getNextMethodId() |
int |
getNextTypeId() |
jdk.vm.ci.meta.MetaAccessProvider |
getOriginalMetaAccess() |
org.graalvm.compiler.api.replacements.SnippetReflectionProvider |
getOriginalSnippetReflection() |
int |
getReachableTypes() |
org.graalvm.compiler.api.replacements.SnippetReflectionProvider |
getSnippetReflection() |
JavaKind |
getStorageKind(ResolvedJavaType type,
jdk.vm.ci.meta.MetaAccessProvider metaAccess) |
SubstitutionProcessor |
getSubstitutions() |
AnalysisType |
getType(int typeId) |
List<AnalysisType> |
getTypes() |
Set<AnalysisField> |
getUnsafeAccessedStaticFields() |
JavaKind |
getWordKind() |
HostVM |
hostVM() |
void |
initializeType(AnalysisType type) |
WrappedConstantPool |
lookup(ConstantPool constantPool,
WrappedJavaType defaultAccessingClass) |
JavaConstant |
lookup(JavaConstant constant) |
AnalysisField |
lookup(JavaField field) |
AnalysisMethod |
lookup(JavaMethod method) |
AnalysisMethod[] |
lookup(JavaMethod[] inputs) |
AnalysisType |
lookup(JavaType type) |
WrappedSignature |
lookup(Signature signature,
WrappedJavaType defaultAccessingClass) |
JavaField |
lookupAllowUnresolved(JavaField rawField) |
JavaMethod |
lookupAllowUnresolved(JavaMethod rawMethod) |
JavaType |
lookupAllowUnresolved(JavaType rawType) |
void |
notifyReachableType() |
AnalysisType |
objectType() |
void |
onFieldAccessed(AnalysisField field) |
void |
onTypeInstantiated(AnalysisType type,
AnalysisType.UsageKind usage) |
AnalysisType |
optionalLookup(ResolvedJavaType type) |
static Set<AnalysisMethod> |
reachableMethodOverrides(AnalysisMethod baseMethod) |
static Set<AnalysisType> |
reachableSubtypes(AnalysisType baseType)
Collect and returns *all reachable* subtypes of this type, not only the immediate subtypes.
|
void |
registerEmbeddedRoot(JavaConstant root,
BytecodePosition position)
Register an embedded root, i.e., a JavaConstant embedded in a Graal graph via a ConstantNode.
|
void |
registerFeatureNativeSubstitution(SubstitutionProcessor substitution) |
void |
registerFeatureSubstitution(SubstitutionProcessor substitution) |
void |
registerObjectReplacer(Function<Object,Object> replacer) |
void |
registerUnsafeAccessedStaticField(AnalysisField field) |
Object |
replaceObject(Object source)
Invokes all registered object replacers for an object.
|
ResolvedJavaMethod |
resolveSubstitution(ResolvedJavaMethod method) |
void |
seal() |
boolean |
sealed() |
void |
setAnalysisDataValid(boolean dataIsValid) |
void |
setBigBang(BigBang bb) |
void |
setConcurrentAnalysisAccess(org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess access) |
void |
setHeapScanner(ImageHeapScanner heapScanner) |
void |
setHeapVerifier(HeapSnapshotVerifier heapVerifier) |
JavaConstant |
toHosted(JavaConstant constant) |
protected final HostVM hostVM
public static final int ESTIMATED_NUMBER_OF_TYPES
protected final SubstitutionProcessor substitutions
public AnalysisUniverse(HostVM hostVM, JavaKind wordKind, AnalysisPolicy analysisPolicy, SubstitutionProcessor substitutions, jdk.vm.ci.meta.MetaAccessProvider originalMetaAccess, org.graalvm.compiler.api.replacements.SnippetReflectionProvider originalSnippetReflection, org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection, AnalysisFactory analysisFactory)
public JavaKind getWordKind()
public int getNextTypeId()
public int getNextMethodId()
public void seal()
public boolean sealed()
public void setAnalysisDataValid(boolean dataIsValid)
public AnalysisType optionalLookup(ResolvedJavaType type)
public AnalysisType lookup(JavaType type)
public JavaType lookupAllowUnresolved(JavaType rawType)
lookupAllowUnresolved in interface Universepublic JavaKind getStorageKind(ResolvedJavaType type,
jdk.vm.ci.meta.MetaAccessProvider metaAccess)
public AnalysisField lookup(JavaField field)
public JavaField lookupAllowUnresolved(JavaField rawField)
lookupAllowUnresolved in interface Universepublic AnalysisMethod lookup(JavaMethod method)
public JavaMethod lookupAllowUnresolved(JavaMethod rawMethod)
lookupAllowUnresolved in interface Universepublic AnalysisMethod[] lookup(JavaMethod[] inputs)
public WrappedSignature lookup(Signature signature, WrappedJavaType defaultAccessingClass)
public WrappedConstantPool lookup(ConstantPool constantPool, WrappedJavaType defaultAccessingClass)
public JavaConstant toHosted(JavaConstant constant)
public List<AnalysisType> getTypes()
public AnalysisType getType(int typeId)
public Collection<AnalysisField> getFields()
public Collection<AnalysisMethod> getMethods()
public Map<JavaConstant,BytecodePosition> getEmbeddedRoots()
public void registerEmbeddedRoot(JavaConstant root,
BytecodePosition position)
public void registerUnsafeAccessedStaticField(AnalysisField field)
public Set<AnalysisField> getUnsafeAccessedStaticFields()
public void registerFeatureSubstitution(SubstitutionProcessor substitution)
public SubstitutionProcessor[] getFeatureSubstitutions()
public void registerFeatureNativeSubstitution(SubstitutionProcessor substitution)
public SubstitutionProcessor[] getFeatureNativeSubstitutions()
public Object replaceObject(Object source)
source - The source objectpublic static Set<AnalysisMethod> reachableMethodOverrides(AnalysisMethod baseMethod)
public static Set<AnalysisType> reachableSubtypes(AnalysisType baseType)
AnalysisType.getSubTypes().
Since the sub-types are updated continuously as the universe is expanded this method may
return different results on each call, until the analysis universe reaches a stable state.public org.graalvm.compiler.api.replacements.SnippetReflectionProvider getSnippetReflection()
getSnippetReflection in interface Universepublic org.graalvm.compiler.api.replacements.SnippetReflectionProvider getOriginalSnippetReflection()
public ResolvedJavaMethod resolveSubstitution(ResolvedJavaMethod method)
resolveSubstitution in interface Universepublic AnalysisType objectType()
objectType in interface Universepublic void onFieldAccessed(AnalysisField field)
public void onTypeInstantiated(AnalysisType type, AnalysisType.UsageKind usage)
public void initializeType(AnalysisType type)
public SubstitutionProcessor getSubstitutions()
public AnalysisPolicy analysisPolicy()
public jdk.vm.ci.meta.MetaAccessProvider getOriginalMetaAccess()
public void setBigBang(BigBang bb)
public BigBang getBigbang()
public void setConcurrentAnalysisAccess(org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess access)
public org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess getConcurrentAnalysisAccess()
public void setHeapScanner(ImageHeapScanner heapScanner)
public ImageHeapScanner getHeapScanner()
public void setHeapVerifier(HeapSnapshotVerifier heapVerifier)
public HeapSnapshotVerifier getHeapVerifier()
public void notifyReachableType()
public int getReachableTypes()