public class RestrictHeapAccessCalleesImpl extends Object implements RestrictHeapAccessCallees
RestrictHeapAccess
or Uninterruptible
.Modifier and Type | Class and Description |
---|---|
static class |
RestrictHeapAccessCalleesImpl.RestrictionInfo
Information about a restricted method, for error messages.
|
Constructor and Description |
---|
RestrictHeapAccessCalleesImpl()
Constructor for the singleton instance.
|
Modifier and Type | Method and Description |
---|---|
void |
aggregateMethods(Collection<com.oracle.graal.pointsto.meta.AnalysisMethod> methods)
Aggregate a set of methods that are annotated with
RestrictHeapAccess or with
Uninterruptible , or methods that are called from those methods. |
Map<com.oracle.graal.pointsto.meta.AnalysisMethod,RestrictHeapAccessCalleesImpl.RestrictionInfo> |
getCallerMap()
Get the map from a callee to a caller.
|
RestrictHeapAccessCalleesImpl.RestrictionInfo |
getRestrictionInfo(jdk.vm.ci.meta.ResolvedJavaMethod method) |
boolean |
mustNotAllocate(jdk.vm.ci.meta.ResolvedJavaMethod method) |
void |
setAssertionErrorConstructors(List<jdk.vm.ci.meta.ResolvedJavaMethod> resolvedConstructorList)
This gets called multiple times, but I only need one AnalysisMethod to be happy.
|
public RestrictHeapAccessCalleesImpl()
public void setAssertionErrorConstructors(List<jdk.vm.ci.meta.ResolvedJavaMethod> resolvedConstructorList)
public RestrictHeapAccessCalleesImpl.RestrictionInfo getRestrictionInfo(jdk.vm.ci.meta.ResolvedJavaMethod method)
public boolean mustNotAllocate(jdk.vm.ci.meta.ResolvedJavaMethod method)
mustNotAllocate
in interface RestrictHeapAccessCallees
public Map<com.oracle.graal.pointsto.meta.AnalysisMethod,RestrictHeapAccessCalleesImpl.RestrictionInfo> getCallerMap()
public void aggregateMethods(Collection<com.oracle.graal.pointsto.meta.AnalysisMethod> methods)
RestrictHeapAccess
or with
Uninterruptible
, or methods that are called from those methods.