public class org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo extends org.graalvm.compiler.phases.common.inlining.info.ExactInlineInfo
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo
super_class: org.graalvm.compiler.phases.common.inlining.info.ExactInlineInfo
{
private final jdk.vm.ci.meta.Assumptions$AssumptionResult<?> takenAssumption;
descriptor: Ljdk/vm/ci/meta/Assumptions$AssumptionResult;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljdk/vm/ci/meta/Assumptions$AssumptionResult<*>;
public void <init>(org.graalvm.compiler.nodes.Invoke, jdk.vm.ci.meta.ResolvedJavaMethod, jdk.vm.ci.meta.Assumptions$AssumptionResult<?>);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/Assumptions$AssumptionResult;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.phases.common.inlining.info.ExactInlineInfo.<init>:(Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
1: aload 0
aload 3
putfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.takenAssumption:Ljdk/vm/ci/meta/Assumptions$AssumptionResult;
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/phases/common/inlining/info/AssumptionInlineInfo;
0 3 1 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 3 2 concrete Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 3 3 takenAssumption Ljdk/vm/ci/meta/Assumptions$AssumptionResult<*>;
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/Assumptions$AssumptionResult<*>;)V
MethodParameters:
Name Flags
invoke
concrete
takenAssumption
public jdk.internal.vm.compiler.collections.EconomicSet<org.graalvm.compiler.graph.Node> inline(org.graalvm.compiler.phases.util.Providers, java.lang.String);
descriptor: (Lorg/graalvm/compiler/phases/util/Providers;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.takenAssumption:Ljdk/vm/ci/meta/Assumptions$AssumptionResult;
aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.invoke:Lorg/graalvm/compiler/nodes/Invoke;
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
invokevirtual jdk.vm.ci.meta.Assumptions$AssumptionResult.recordTo:(Ljdk/vm/ci/meta/Assumptions;)V
1: aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.phases.common.inlining.info.ExactInlineInfo.inline:(Lorg/graalvm/compiler/phases/util/Providers;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/phases/common/inlining/info/AssumptionInlineInfo;
0 2 1 providers Lorg/graalvm/compiler/phases/util/Providers;
0 2 2 reason Ljava/lang/String;
Signature: (Lorg/graalvm/compiler/phases/util/Providers;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/graph/Node;>;
MethodParameters:
Name Flags
providers
reason
public void tryToDevirtualizeInvoke(org.graalvm.compiler.phases.util.Providers);
descriptor: (Lorg/graalvm/compiler/phases/util/Providers;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.takenAssumption:Ljdk/vm/ci/meta/Assumptions$AssumptionResult;
aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.invoke:Lorg/graalvm/compiler/nodes/Invoke;
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
invokevirtual jdk.vm.ci.meta.Assumptions$AssumptionResult.recordTo:(Ljdk/vm/ci/meta/Assumptions;)V
1: aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.invoke:Lorg/graalvm/compiler/nodes/Invoke;
aload 0
invokevirtual org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
getstatic org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.Special:Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.concrete:Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.replaceInvokeCallTarget:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/phases/common/inlining/info/AssumptionInlineInfo;
0 3 1 providers Lorg/graalvm/compiler/phases/util/Providers;
MethodParameters:
Name Flags
providers
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "assumption "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo.concrete:Ljdk/vm/ci/meta/ResolvedJavaMethod;
ldc "%H.%n(%p):%r"
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/phases/common/inlining/info/AssumptionInlineInfo;
}
SourceFile: "AssumptionInlineInfo.java"
InnerClasses:
public AssumptionResult = jdk.vm.ci.meta.Assumptions$AssumptionResult of jdk.vm.ci.meta.Assumptions
public final InvokeKind = org.graalvm.compiler.nodes.CallTargetNode$InvokeKind of org.graalvm.compiler.nodes.CallTargetNode