public abstract class com.oracle.graal.pointsto.AnalysisPolicy
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.graal.pointsto.AnalysisPolicy
super_class: java.lang.Object
{
protected final org.graalvm.compiler.options.OptionValues options;
descriptor: Lorg/graalvm/compiler/options/OptionValues;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final boolean aliasArrayTypeFlows;
descriptor: Z
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final boolean relaxTypeFlowConstraints;
descriptor: Z
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final boolean removeSaturatedTypeFlows;
descriptor: Z
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final int typeFlowSaturationCutoff;
descriptor: I
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
public void <init>(org.graalvm.compiler.options.OptionValues);
descriptor: (Lorg/graalvm/compiler/options/OptionValues;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.graal.pointsto.AnalysisPolicy.options:Lorg/graalvm/compiler/options/OptionValues;
2: aload 0
getstatic com.oracle.graal.pointsto.api.PointstoOptions.AliasArrayTypeFlows:Lorg/graalvm/compiler/options/OptionKey;
aload 1
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putfield com.oracle.graal.pointsto.AnalysisPolicy.aliasArrayTypeFlows:Z
3: aload 0
getstatic com.oracle.graal.pointsto.api.PointstoOptions.RelaxTypeFlowStateConstraints:Lorg/graalvm/compiler/options/OptionKey;
aload 1
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putfield com.oracle.graal.pointsto.AnalysisPolicy.relaxTypeFlowConstraints:Z
4: aload 0
getstatic com.oracle.graal.pointsto.api.PointstoOptions.RemoveSaturatedTypeFlows:Lorg/graalvm/compiler/options/OptionKey;
aload 1
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putfield com.oracle.graal.pointsto.AnalysisPolicy.removeSaturatedTypeFlows:Z
5: aload 0
getstatic com.oracle.graal.pointsto.api.PointstoOptions.TypeFlowSaturationCutoff:Lorg/graalvm/compiler/options/OptionKey;
aload 1
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield com.oracle.graal.pointsto.AnalysisPolicy.typeFlowSaturationCutoff:I
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
0 7 1 options Lorg/graalvm/compiler/options/OptionValues;
MethodParameters:
Name Flags
options
public boolean aliasArrayTypeFlows();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.pointsto.AnalysisPolicy.aliasArrayTypeFlows:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
public boolean relaxTypeFlowConstraints();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.pointsto.AnalysisPolicy.relaxTypeFlowConstraints:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
public boolean removeSaturatedTypeFlows();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.pointsto.AnalysisPolicy.removeSaturatedTypeFlows:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
public int typeFlowSaturationCutoff();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.pointsto.AnalysisPolicy.typeFlowSaturationCutoff:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
protected abstract com.oracle.graal.pointsto.flow.context.AnalysisContextPolicy<? extends com.oracle.graal.pointsto.flow.context.AnalysisContext> contextPolicy();
descriptor: ()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: ()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy<+Lcom/oracle/graal/pointsto/flow/context/AnalysisContext;>;
public com.oracle.graal.pointsto.flow.context.AnalysisContextPolicy<com.oracle.graal.pointsto.flow.context.AnalysisContext> getContextPolicy();
descriptor: ()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.graal.pointsto.AnalysisPolicy.contextPolicy:()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
Signature: ()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy<Lcom/oracle/graal/pointsto/flow/context/AnalysisContext;>;
public abstract boolean needsConstantCache();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isSummaryObject(com.oracle.graal.pointsto.flow.context.object.AnalysisObject);
descriptor: (Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
object
public abstract boolean isMergingEnabled();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void noteMerge(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.typestate.TypeState);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/typestate/TypeState;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
t
public abstract void noteMerge(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.flow.context.object.AnalysisObject[]);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;[Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;)V
flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
a
public abstract void noteMerge(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.flow.context.object.AnalysisObject);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
o
public abstract boolean isContextSensitiveAllocation(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.meta.AnalysisType, com.oracle.graal.pointsto.flow.context.AnalysisContext);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/flow/context/AnalysisContext;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
type
allocationContext
public abstract com.oracle.graal.pointsto.flow.context.object.AnalysisObject createHeapObject(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.meta.AnalysisType, com.oracle.graal.pointsto.flow.context.BytecodeLocation, com.oracle.graal.pointsto.flow.context.AnalysisContext);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;Lcom/oracle/graal/pointsto/flow/context/AnalysisContext;)Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
objectType
allocationSite
allocationContext
public abstract com.oracle.graal.pointsto.flow.context.object.AnalysisObject createConstantObject(com.oracle.graal.pointsto.BigBang, jdk.vm.ci.meta.JavaConstant, com.oracle.graal.pointsto.meta.AnalysisType);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;Ljdk/vm/ci/meta/JavaConstant;Lcom/oracle/graal/pointsto/meta/AnalysisType;)Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
constant
exactType
public abstract com.oracle.graal.pointsto.flow.context.BytecodeLocation createAllocationSite(com.oracle.graal.pointsto.BigBang, int, com.oracle.graal.pointsto.meta.AnalysisMethod);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;ILcom/oracle/graal/pointsto/meta/AnalysisMethod;)Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
bb
bci
method
public com.oracle.graal.pointsto.flow.context.BytecodeLocation createAllocationSite(com.oracle.graal.pointsto.BigBang, java.lang.Object, com.oracle.graal.pointsto.meta.AnalysisMethod);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;Ljava/lang/Object;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokestatic com.oracle.graal.pointsto.flow.context.BytecodeLocation.keyToBci:(Ljava/lang/Object;)I
aload 3
invokevirtual com.oracle.graal.pointsto.AnalysisPolicy.createAllocationSite:(Lcom/oracle/graal/pointsto/BigBang;ILcom/oracle/graal/pointsto/meta/AnalysisMethod;)Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
0 1 1 bb Lcom/oracle/graal/pointsto/BigBang;
0 1 2 key Ljava/lang/Object;
0 1 3 method Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
MethodParameters:
Name Flags
bb
key
method
public abstract com.oracle.graal.pointsto.typestore.FieldTypeStore createFieldTypeStore(com.oracle.graal.pointsto.flow.context.object.AnalysisObject, com.oracle.graal.pointsto.meta.AnalysisField, com.oracle.graal.pointsto.meta.AnalysisUniverse);
descriptor: (Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;Lcom/oracle/graal/pointsto/meta/AnalysisField;Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;)Lcom/oracle/graal/pointsto/typestore/FieldTypeStore;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
object
field
universe
public abstract com.oracle.graal.pointsto.typestore.ArrayElementsTypeStore createArrayElementsTypeStore(com.oracle.graal.pointsto.flow.context.object.AnalysisObject, com.oracle.graal.pointsto.meta.AnalysisUniverse);
descriptor: (Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;)Lcom/oracle/graal/pointsto/typestore/ArrayElementsTypeStore;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
object
universe
public abstract com.oracle.graal.pointsto.flow.AbstractVirtualInvokeTypeFlow createVirtualInvokeTypeFlow(jdk.vm.ci.code.BytecodePosition, com.oracle.graal.pointsto.meta.AnalysisType, com.oracle.graal.pointsto.meta.AnalysisMethod, com.oracle.graal.pointsto.flow.TypeFlow<?>[], com.oracle.graal.pointsto.flow.ActualReturnTypeFlow, com.oracle.graal.pointsto.flow.context.BytecodeLocation);
descriptor: (Ljdk/vm/ci/code/BytecodePosition;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;[Lcom/oracle/graal/pointsto/flow/TypeFlow;Lcom/oracle/graal/pointsto/flow/ActualReturnTypeFlow;Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;)Lcom/oracle/graal/pointsto/flow/AbstractVirtualInvokeTypeFlow;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/code/BytecodePosition;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;[Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;Lcom/oracle/graal/pointsto/flow/ActualReturnTypeFlow;Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;)Lcom/oracle/graal/pointsto/flow/AbstractVirtualInvokeTypeFlow;
MethodParameters:
Name Flags
invokeLocation
receiverType
targetMethod
actualParameters
actualReturn
location
public abstract com.oracle.graal.pointsto.flow.AbstractSpecialInvokeTypeFlow createSpecialInvokeTypeFlow(jdk.vm.ci.code.BytecodePosition, com.oracle.graal.pointsto.meta.AnalysisType, com.oracle.graal.pointsto.meta.AnalysisMethod, com.oracle.graal.pointsto.flow.TypeFlow<?>[], com.oracle.graal.pointsto.flow.ActualReturnTypeFlow, com.oracle.graal.pointsto.flow.context.BytecodeLocation);
descriptor: (Ljdk/vm/ci/code/BytecodePosition;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;[Lcom/oracle/graal/pointsto/flow/TypeFlow;Lcom/oracle/graal/pointsto/flow/ActualReturnTypeFlow;Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;)Lcom/oracle/graal/pointsto/flow/AbstractSpecialInvokeTypeFlow;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/code/BytecodePosition;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;[Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;Lcom/oracle/graal/pointsto/flow/ActualReturnTypeFlow;Lcom/oracle/graal/pointsto/flow/context/BytecodeLocation;)Lcom/oracle/graal/pointsto/flow/AbstractSpecialInvokeTypeFlow;
MethodParameters:
Name Flags
invokeLocation
receiverType
targetMethod
actualParameters
actualReturn
location
public int makePoperties(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.flow.context.object.AnalysisObject[]);
descriptor: (Lcom/oracle/graal/pointsto/BigBang;[Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;)I
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
0 1 1 bb Lcom/oracle/graal/pointsto/BigBang;
0 1 2 objects [Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;
MethodParameters:
Name Flags
bb
objects
public int makePopertiesForUnion(com.oracle.graal.pointsto.typestate.TypeState, com.oracle.graal.pointsto.typestate.TypeState);
descriptor: (Lcom/oracle/graal/pointsto/typestate/TypeState;Lcom/oracle/graal/pointsto/typestate/TypeState;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/pointsto/AnalysisPolicy;
0 1 1 s1 Lcom/oracle/graal/pointsto/typestate/TypeState;
0 1 2 s2 Lcom/oracle/graal/pointsto/typestate/TypeState;
MethodParameters:
Name Flags
s1
s2
}
SourceFile: "AnalysisPolicy.java"