public class org.graalvm.compiler.phases.common.inlining.InliningUtil extends org.graalvm.compiler.phases.util.ValueMergeUtil
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.phases.common.inlining.InliningUtil
super_class: org.graalvm.compiler.phases.util.ValueMergeUtil
{
private static final java.lang.String inliningDecisionsScopeString;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "InliningDecisions"
private static final org.graalvm.compiler.nodes.ValueNode[] NO_ARGS;
descriptor: [Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/phases/common/inlining/InliningUtil;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
3: iconst_0
anewarray org.graalvm.compiler.nodes.ValueNode
putstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.NO_ARGS:[Lorg/graalvm/compiler/nodes/ValueNode;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.phases.util.ValueMergeUtil.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/phases/common/inlining/InliningUtil;
private static void printInlining(org.graalvm.compiler.phases.common.inlining.info.InlineInfo, int, boolean, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;IZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iconst_0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.methodAt:(I)Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.invoke:()Lorg/graalvm/compiler/nodes/Invoke;
iload 1
iload 2
aload 3
aload 4
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.printInlining:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/Invoke;IZLjava/lang/String;[Ljava/lang/Object;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 info Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;
0 2 1 inliningDepth I
0 2 2 success Z
0 2 3 msg Ljava/lang/String;
0 2 4 args [Ljava/lang/Object;
MethodParameters:
Name Flags
info final
inliningDepth final
success final
msg final
args final
private static void printInlining(jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.Invoke, int, boolean, java.lang.String, java.lang.Object[]);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/Invoke;IZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic org.graalvm.compiler.core.common.GraalOptions.HotSpotPrintInlining:Lorg/graalvm/compiler/options/OptionKey;
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
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
ifeq 2
1: aload 0
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
iload 2
iload 3
aload 4
aload 5
invokestatic org.graalvm.compiler.core.common.util.Util.printInlining:(Ljdk/vm/ci/meta/ResolvedJavaMethod;IIZLjava/lang/String;[Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 3 1 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 3 2 inliningDepth I
0 3 3 success Z
0 3 4 msg Ljava/lang/String;
0 3 5 args [Ljava/lang/Object;
MethodParameters:
Name Flags
method final
invoke final
inliningDepth final
success final
msg final
args final
public static void traceInlinedMethod(org.graalvm.compiler.phases.common.inlining.info.InlineInfo, int, boolean, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;IZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iload 2
iconst_1
aload 3
aload 4
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.traceMethod:(Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;IZZLjava/lang/String;[Ljava/lang/Object;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 info Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;
0 2 1 inliningDepth I
0 2 2 allowLogging Z
0 2 3 msg Ljava/lang/String;
0 2 4 args [Ljava/lang/Object;
MethodParameters:
Name Flags
info
inliningDepth
allowLogging
msg
args
public static void traceInlinedMethod(org.graalvm.compiler.nodes.Invoke, int, boolean, jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;IZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
iload 1
iload 2
iconst_1
aload 3
aload 4
aload 5
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.traceMethod:(Lorg/graalvm/compiler/nodes/Invoke;IZZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;[Ljava/lang/Object;)V
1: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 2 1 inliningDepth I
0 2 2 allowLogging Z
0 2 3 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 2 4 msg Ljava/lang/String;
0 2 5 args [Ljava/lang/Object;
MethodParameters:
Name Flags
invoke
inliningDepth
allowLogging
method
msg
args
public static void traceNotInlinedMethod(org.graalvm.compiler.phases.common.inlining.info.InlineInfo, int, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;ILjava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iconst_1
iconst_0
aload 2
aload 3
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.traceMethod:(Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;IZZLjava/lang/String;[Ljava/lang/Object;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 info Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;
0 2 1 inliningDepth I
0 2 2 msg Ljava/lang/String;
0 2 3 args [Ljava/lang/Object;
MethodParameters:
Name Flags
info
inliningDepth
msg
args
public static void traceNotInlinedMethod(org.graalvm.compiler.nodes.Invoke, int, jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;ILjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iconst_1
iconst_0
aload 2
aload 3
aload 4
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.traceMethod:(Lorg/graalvm/compiler/nodes/Invoke;IZZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;[Ljava/lang/Object;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 2 1 inliningDepth I
0 2 2 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 2 3 msg Ljava/lang/String;
0 2 4 args [Ljava/lang/Object;
MethodParameters:
Name Flags
invoke
inliningDepth
method
msg
args
private static void traceMethod(org.graalvm.compiler.nodes.Invoke, int, boolean, boolean, jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;IZZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=6, locals=9, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 2
ifeq 6
1: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 7
start local 7 2: aload 4
aload 0
iload 1
iload 3
aload 5
aload 6
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.printInlining:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/Invoke;IZLjava/lang/String;[Ljava/lang/Object;)V
3: aload 7
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.shouldLogMethod:(Lorg/graalvm/compiler/debug/DebugContext;)Z
ifeq 6
4: aload 4
aload 0
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.methodName:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/Invoke;)Ljava/lang/String;
astore 8
start local 8 5: aload 7
aload 8
iload 3
aload 5
aload 6
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.logMethod:(Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;ZLjava/lang/String;[Ljava/lang/Object;)V
end local 8 end local 7 6: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 7 1 inliningDepth I
0 7 2 allowLogging Z
0 7 3 success Z
0 7 4 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 7 5 msg Ljava/lang/String;
0 7 6 args [Ljava/lang/Object;
2 6 7 debug Lorg/graalvm/compiler/debug/DebugContext;
5 6 8 methodString Ljava/lang/String;
MethodParameters:
Name Flags
invoke
inliningDepth
allowLogging
success
method
msg
args
private static void traceMethod(org.graalvm.compiler.phases.common.inlining.info.InlineInfo, int, boolean, boolean, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;IZZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 2
ifeq 5
1: aload 0
iload 1
iload 3
aload 4
aload 5
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.printInlining:(Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;IZLjava/lang/String;[Ljava/lang/Object;)V
2: aload 0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 6
start local 6 3: aload 6
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.shouldLogMethod:(Lorg/graalvm/compiler/debug/DebugContext;)Z
ifeq 5
4: aload 6
aload 0
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.methodName:(Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;)Ljava/lang/String;
iload 3
aload 4
aload 5
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.logMethod:(Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;ZLjava/lang/String;[Ljava/lang/Object;)V
end local 6 5: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 info Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;
0 6 1 inliningDepth I
0 6 2 allowLogging Z
0 6 3 success Z
0 6 4 msg Ljava/lang/String;
0 6 5 args [Ljava/lang/Object;
3 5 6 debug Lorg/graalvm/compiler/debug/DebugContext;
MethodParameters:
Name Flags
info
inliningDepth
allowLogging
success
msg
args final
public static void logInliningDecision(org.graalvm.compiler.debug.DebugContext, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.logInlining:(Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;[Ljava/lang/Object;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 debug Lorg/graalvm/compiler/debug/DebugContext;
0 2 1 msg Ljava/lang/String;
0 2 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
debug
msg final
args final
public static void logNotInlinedMethod(org.graalvm.compiler.nodes.Invoke, java.lang.String);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 2
start local 2 1: aload 2
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.shouldLogMethod:(Lorg/graalvm/compiler/debug/DebugContext;)Z
ifeq 10
2: aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 3
start local 3 3: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
ifnonnull 6
4: new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " callTarget=null"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
5: goto 9
6: StackMap locals: org.graalvm.compiler.debug.DebugContext java.lang.String
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.targetName:()Ljava/lang/String;
astore 4
start local 4 7: aload 3
aload 4
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 9
8: new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
end local 4 9: StackMap locals:
StackMap stack:
aload 2
aload 3
iconst_0
aload 1
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.logMethod:(Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;ZLjava/lang/String;[Ljava/lang/Object;)V
end local 3 10: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 11 1 msg Ljava/lang/String;
1 11 2 debug Lorg/graalvm/compiler/debug/DebugContext;
3 10 3 methodString Ljava/lang/String;
7 9 4 targetName Ljava/lang/String;
MethodParameters:
Name Flags
invoke
msg
private static void logMethod(org.graalvm.compiler.debug.DebugContext, java.lang.String, boolean, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;ZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new java.lang.StringBuilder
dup
ldc "inlining "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 1: iload 2
ifne 3
2: new java.lang.StringBuilder
dup
ldc "not "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 5
aload 4
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.logInlining:(Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;[Ljava/lang/Object;)V
4: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 debug Lorg/graalvm/compiler/debug/DebugContext;
0 5 1 methodString Ljava/lang/String;
0 5 2 success Z
0 5 3 msg Ljava/lang/String;
0 5 4 args [Ljava/lang/Object;
1 5 5 inliningMsg Ljava/lang/String;
MethodParameters:
Name Flags
debug
methodString final
success final
msg final
args final
private static void logInlining(org.graalvm.compiler.debug.DebugContext, java.lang.String, java.lang.Object[]);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
aconst_null
astore 4
1: aload 0
ldc "InliningDecisions"
invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 5
start local 5 2: aload 0
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 4
3: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.debug.DebugContext.logv:(Ljava/lang/String;[Ljava/lang/Object;)V
4: StackMap locals: java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
StackMap stack:
aload 5
ifnull 10
aload 5
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
5: astore 3
aload 5
ifnull 6
aload 5
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 5 StackMap locals:
StackMap stack:
6: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 4
aload 3
ifnonnull 8
aload 4
astore 3
goto 9
StackMap locals:
StackMap stack:
8: aload 3
aload 4
if_acmpeq 9
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
9: aload 3
athrow
10: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 debug Lorg/graalvm/compiler/debug/DebugContext;
0 11 1 msg Ljava/lang/String;
0 11 2 args [Ljava/lang/Object;
2 6 5 s Lorg/graalvm/compiler/debug/DebugContext$Scope;
Exception table:
from to target type
2 4 5 any
1 7 7 any
MethodParameters:
Name Flags
debug
msg final
args final
private static boolean shouldLogMethod(org.graalvm.compiler.debug.DebugContext);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: aload 0
ldc "InliningDecisions"
invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 3
start local 3 2: aload 0
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
3: aload 3
ifnull 4
aload 3
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
4: StackMap locals: org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
StackMap stack: int
ireturn
StackMap locals:
StackMap stack: java.lang.Throwable
5: astore 1
6: aload 3
ifnull 7
aload 3
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 3 StackMap locals:
StackMap stack:
7: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 2
aload 1
ifnonnull 9
aload 2
astore 1
goto 10
StackMap locals:
StackMap stack:
9: aload 1
aload 2
if_acmpeq 10
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
10: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 debug Lorg/graalvm/compiler/debug/DebugContext;
2 7 3 s Lorg/graalvm/compiler/debug/DebugContext$Scope;
Exception table:
from to target type
2 3 5 any
1 4 8 any
5 8 8 any
MethodParameters:
Name Flags
debug
private static java.lang.String methodName(jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.Invoke);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/Invoke;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
ifnull 2
1: new java.lang.StringBuilder
dup
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.methodName:(Lorg/graalvm/compiler/nodes/FrameState;I)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
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;
ldc " ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getCodeSize:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bytes)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
ldc "%H.%n(%p):%r"
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getCodeSize:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bytes)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 3 1 invoke Lorg/graalvm/compiler/nodes/Invoke;
MethodParameters:
Name Flags
method
invoke
private static java.lang.String methodName(org.graalvm.compiler.phases.common.inlining.info.InlineInfo);
descriptor: (Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: ldc "null"
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.invoke:()Lorg/graalvm/compiler/nodes/Invoke;
ifnull 4
aload 0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.invoke:()Lorg/graalvm/compiler/nodes/Invoke;
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
ifnull 4
3: new java.lang.StringBuilder
dup
aload 0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.invoke:()Lorg/graalvm/compiler/nodes/Invoke;
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
aload 0
invokeinterface org.graalvm.compiler.phases.common.inlining.info.InlineInfo.invoke:()Lorg/graalvm/compiler/nodes/Invoke;
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.methodName:(Lorg/graalvm/compiler/nodes/FrameState;I)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 info Lorg/graalvm/compiler/phases/common/inlining/info/InlineInfo;
MethodParameters:
Name Flags
info
private static java.lang.String methodName(org.graalvm.compiler.nodes.FrameState, int);
descriptor: (Lorg/graalvm/compiler/nodes/FrameState;I)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
ifnull 4
2: aload 2
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
getfield org.graalvm.compiler.nodes.FrameState.bci:I
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.methodName:(Lorg/graalvm/compiler/nodes/FrameState;I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: aload 2
ldc "->"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 3
start local 3 5: aload 2
aload 3
ifnull 6
aload 3
ldc "%h.%n"
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
goto 7
StackMap locals: org.graalvm.compiler.nodes.FrameState int java.lang.StringBuilder jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack: java.lang.StringBuilder
6: ldc "?"
StackMap locals: org.graalvm.compiler.nodes.FrameState int java.lang.StringBuilder jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack: java.lang.StringBuilder java.lang.String
7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: aload 2
ldc "@"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
9: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 frameState Lorg/graalvm/compiler/nodes/FrameState;
0 10 1 bci I
1 10 2 sb Ljava/lang/StringBuilder;
5 10 3 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
MethodParameters:
Name Flags
frameState
bci
public static void replaceInvokeCallTarget(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.CallTargetNode$InvokeKind, jdk.vm.ci.meta.ResolvedJavaMethod);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
astore 4
start local 4 1: aload 1
new org.graalvm.compiler.nodes.java.MethodCallTargetNode
dup
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
iconst_0
anewarray org.graalvm.compiler.nodes.ValueNode
invokevirtual org.graalvm.compiler.graph.NodeInputList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ValueNode[]
aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.returnStamp:()Lorg/graalvm/compiler/core/common/type/StampPair;
2: aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.getProfile:()Ljdk/vm/ci/meta/JavaTypeProfile;
invokespecial org.graalvm.compiler.nodes.java.MethodCallTargetNode.<init>:(Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;Ljdk/vm/ci/meta/ResolvedJavaMethod;[Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/StampPair;Ljdk/vm/ci/meta/JavaTypeProfile;)V
3: invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
astore 5
start local 5 4: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
aload 4
aload 5
invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceFirstInput:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
5: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 6 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 6 2 invokeKind Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
0 6 3 targetMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
1 6 4 oldCallTarget Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
4 6 5 newCallTarget Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
MethodParameters:
Name Flags
invoke
graph
invokeKind
targetMethod
public static org.graalvm.compiler.nodes.PiNode createAnchoredReceiver(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.extended.GuardingNode, jdk.vm.ci.meta.ResolvedJavaType, org.graalvm.compiler.nodes.ValueNode, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Ljdk/vm/ci/meta/ResolvedJavaType;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/PiNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 3
1: iload 4
ifeq 2
aload 2
invokestatic org.graalvm.compiler.core.common.type.TypeReference.createExactTrusted:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
goto 3
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.extended.GuardingNode jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.ValueNode int
StackMap stack: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.extended.GuardingNode org.graalvm.compiler.nodes.ValueNode
2: aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
aload 2
invokestatic org.graalvm.compiler.core.common.type.TypeReference.createTrusted:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
3: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.extended.GuardingNode jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.ValueNode int
StackMap stack: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.extended.GuardingNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.ObjectStamp
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.createAnchoredReceiver:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PiNode;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 4 1 anchor Lorg/graalvm/compiler/nodes/extended/GuardingNode;
0 4 2 commonType Ljdk/vm/ci/meta/ResolvedJavaType;
0 4 3 receiver Lorg/graalvm/compiler/nodes/ValueNode;
0 4 4 exact Z
MethodParameters:
Name Flags
graph
anchor
commonType
receiver
exact
private static org.graalvm.compiler.nodes.PiNode createAnchoredReceiver(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.extended.GuardingNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.common.type.Stamp);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PiNode;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
new org.graalvm.compiler.nodes.PiNode
dup
aload 2
aload 3
aload 1
checkcast org.graalvm.compiler.nodes.ValueNode
invokespecial org.graalvm.compiler.nodes.PiNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.PiNode
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 1 1 anchor Lorg/graalvm/compiler/nodes/extended/GuardingNode;
0 1 2 receiver Lorg/graalvm/compiler/nodes/ValueNode;
0 1 3 stamp Lorg/graalvm/compiler/core/common/type/Stamp;
MethodParameters:
Name Flags
graph
anchor
receiver
stamp
public static java.lang.String checkInvokeConditions(org.graalvm.compiler.nodes.Invoke);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.predecessor:()Lorg/graalvm/compiler/graph/Node;
ifnull 1
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.isAlive:()Z
ifne 2
1: StackMap locals:
StackMap stack:
ldc "the invoke is dead code"
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
instanceof org.graalvm.compiler.nodes.java.MethodCallTargetNode
ifne 4
3: ldc "the invoke has already been lowered, or has been created as a low-level node"
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
astore 1
start local 1 5: aload 1
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
ifnonnull 7
6: ldc "target method is null"
areturn
7: StackMap locals: org.graalvm.compiler.nodes.java.MethodCallTargetNode
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 8
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
ifnonnull 8
new java.lang.AssertionError
dup
aload 0
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.useForInlining:()Z
ifne 10
9: ldc "the invoke is marked to be not used for inlining"
areturn
10: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.receiver:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 2
start local 2 11: aload 2
ifnull 13
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 13
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isNullConstant:()Z
ifeq 13
12: ldc "receiver is null"
areturn
13: StackMap locals: org.graalvm.compiler.nodes.ValueNode
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
5 14 1 callTarget Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
11 14 2 receiver Lorg/graalvm/compiler/nodes/ValueNode;
MethodParameters:
Name Flags
invoke
public static jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node> inline(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, boolean, jdk.vm.ci.meta.ResolvedJavaMethod);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
aload 3
ldc "reason not specified"
ldc "phase not specified"
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.inline:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;
1: areturn
2: StackMap locals:
StackMap stack: org.graalvm.compiler.debug.GraalError
astore 4
start local 4 3: aload 4
ldc "inlining into"
aload 0
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.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokevirtual org.graalvm.compiler.debug.GraalError.addContext:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/GraalError;
pop
4: aload 4
ldc "inlinee"
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokevirtual org.graalvm.compiler.debug.GraalError.addContext:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/GraalError;
pop
5: aload 4
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 6 1 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 6 2 receiverNullCheck Z
0 6 3 inlineeMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
3 6 4 ex Lorg/graalvm/compiler/debug/GraalError;
Exception table:
from to target type
0 1 2 Class org.graalvm.compiler.debug.GraalError
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
MethodParameters:
Name Flags
invoke
inlineGraph
receiverNullCheck
inlineeMethod
public static jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node> inline(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, boolean, jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.String, java.lang.String);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=25, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 6
start local 6 1: aload 6
invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 7
start local 7 2: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
astore 8
start local 8 3: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 4
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.ordinal:()I
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.ordinal:()I
if_icmpge 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 5
aload 6
invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.isAfterFloatingReadPhase:()Z
ifeq 5
new java.lang.AssertionError
dup
ldc "inline isn't handled correctly after floating reads phase"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals:
StackMap stack:
iload 2
ifeq 7
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.isStatic:()Z
ifne 7
6: aload 0
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.nonNullReceiver:(Lorg/graalvm/compiler/nodes/Invoke;)Lorg/graalvm/compiler/nodes/ValueNode;
pop
7: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 9
start local 9 8: new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
astore 10
start local 10 9: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 11
start local 11 10: aconst_null
astore 12
start local 12 11: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.start:()Lorg/graalvm/compiler/nodes/StartNode;
astore 13
start local 13 12: aload 13
invokevirtual org.graalvm.compiler.nodes.StartNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 14
start local 14 13: aload 14
ifnonnull 15
14: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Inlined graph is in invalid state: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 16
goto 36
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
StackMap stack:
16: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 15
start local 15 17: aload 15
aload 13
if_acmpeq 36
aload 15
aload 13
invokevirtual org.graalvm.compiler.nodes.StartNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
if_acmpne 18
aload 15
invokevirtual org.graalvm.compiler.graph.Node.hasExactlyOneUsage:()Z
ifne 36
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
18: aload 15
instanceof org.graalvm.compiler.nodes.ParameterNode
ifne 36
19: aload 9
aload 15
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
20: aload 15
instanceof org.graalvm.compiler.nodes.ReturnNode
ifeq 23
21: aload 10
aload 15
checkcast org.graalvm.compiler.nodes.ReturnNode
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
22: goto 36
StackMap locals:
StackMap stack:
23: aload 15
instanceof org.graalvm.compiler.nodes.Invoke
ifeq 33
24: aload 15
checkcast org.graalvm.compiler.nodes.Invoke
astore 17
start local 17 25: aload 17
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
bipush -5
if_icmpne 36
26: aload 3
astore 18
start local 18 27: aload 17
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 19
start local 19 28: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 31
aload 18
aload 19
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 31
new java.lang.AssertionError
dup
ldc "invoke in inlined method expected to be partial intrinsic exit (i.e., call to %s), not a call to %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
29: aload 18
ldc "%H.%n(%p)"
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
aastore
dup
iconst_1
aload 19
ldc "%H.%n(%p)"
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
aastore
30: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
31: StackMap locals: org.graalvm.compiler.nodes.Invoke jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack:
aload 11
aload 17
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 19 end local 18 end local 17 32: goto 36
StackMap locals:
StackMap stack:
33: aload 15
instanceof org.graalvm.compiler.nodes.UnwindNode
ifeq 36
34: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 35
aload 12
ifnull 35
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
35: StackMap locals:
StackMap stack:
aload 15
checkcast org.graalvm.compiler.nodes.UnwindNode
astore 12
end local 15 36: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
37: aload 6
invokestatic org.graalvm.compiler.nodes.AbstractBeginNode.prevBegin:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
astore 15
start local 15 38: new org.graalvm.compiler.phases.common.inlining.InliningUtil$1
dup
aload 8
aload 13
aload 15
invokespecial org.graalvm.compiler.phases.common.inlining.InliningUtil$1.<init>:(Lorg/graalvm/compiler/graph/NodeInputList;Lorg/graalvm/compiler/nodes/StartNode;Lorg/graalvm/compiler/nodes/AbstractBeginNode;)V
astore 16
start local 16 39: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 40
aload 6
invokevirtual org.graalvm.compiler.nodes.FixedNode.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.first:()Lorg/graalvm/compiler/graph/Node;
ifnonnull 40
new java.lang.AssertionError
dup
aload 0
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
40: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 41
aload 6
invokevirtual org.graalvm.compiler.nodes.FixedNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
ifnonnull 41
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
41: StackMap locals:
StackMap stack:
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getMark:()Lorg/graalvm/compiler/graph/Graph$Mark;
astore 17
start local 17 42: aconst_null
astore 19
aconst_null
astore 20
43: aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getInliningLog:()Lorg/graalvm/compiler/nodes/InliningLog;
invokevirtual org.graalvm.compiler.nodes.InliningLog.openDefaultUpdateScope:()Lorg/graalvm/compiler/nodes/InliningLog$UpdateScope;
astore 21
start local 21 44: aload 7
aload 9
aload 1
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
aload 16
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addDuplicates:(Ljava/lang/Iterable;Lorg/graalvm/compiler/graph/Graph;ILorg/graalvm/compiler/graph/Graph$DuplicationReplacement;)Ljdk/internal/vm/compiler/collections/EconomicMap;
astore 18
start local 18 45: aload 21
ifnonnull 46
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.hasCompilationListener:()Z
ifeq 47
46: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap java.lang.Throwable java.lang.Throwable org.graalvm.compiler.nodes.InliningLog$UpdateScope
StackMap stack:
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getInliningLog:()Lorg/graalvm/compiler/nodes/InliningLog;
aload 0
iconst_1
aload 5
aload 18
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getInliningLog:()Lorg/graalvm/compiler/nodes/InliningLog;
aload 4
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.compiler.nodes.InliningLog.addDecision:(Lorg/graalvm/compiler/nodes/Invokable;ZLjava/lang/String;Ljdk/internal/vm/compiler/collections/EconomicMap;Lorg/graalvm/compiler/nodes/InliningLog;Ljava/lang/String;[Ljava/lang/Object;)V
47: StackMap locals:
StackMap stack:
aload 21
ifnull 53
aload 21
invokevirtual org.graalvm.compiler.nodes.InliningLog$UpdateScope.close:()V
goto 53
end local 18 StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.nodes.InliningLog$UpdateScope
StackMap stack: java.lang.Throwable
48: astore 19
aload 21
ifnull 49
aload 21
invokevirtual org.graalvm.compiler.nodes.InliningLog$UpdateScope.close:()V
end local 21 StackMap locals:
StackMap stack:
49: aload 19
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
50: astore 20
aload 19
ifnonnull 51
aload 20
astore 19
goto 52
StackMap locals:
StackMap stack:
51: aload 19
aload 20
if_acmpeq 52
aload 19
aload 20
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
52: aload 19
athrow
start local 18 53: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 19
start local 19 54: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 55
aload 19
ifnull 55
aload 19
invokevirtual org.graalvm.compiler.nodes.FrameState.isAlive:()Z
ifne 55
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
55: StackMap locals: org.graalvm.compiler.nodes.FrameState
StackMap stack:
aconst_null
astore 20
start local 20 56: aload 0
instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
ifeq 61
57: aload 0
checkcast org.graalvm.compiler.nodes.InvokeWithExceptionNode
astore 21
start local 21 58: aload 12
ifnull 61
59: aload 21
invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.exceptionEdge:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
checkcast org.graalvm.compiler.nodes.java.ExceptionObjectNode
astore 22
start local 22 60: aload 22
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 20
end local 22 end local 21 61: StackMap locals: org.graalvm.compiler.nodes.FrameState
StackMap stack:
aload 0
aload 1
aload 18
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 3
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 62
iconst_0
goto 63
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState
StackMap stack: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap
62: iconst_1
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState
StackMap stack: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap int
63: aload 17
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.updateSourcePositions:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;ZLorg/graalvm/compiler/graph/Graph$Mark;)V
64: aload 19
ifnull 76
65: aload 0
aload 1
aload 18
aload 20
aload 10
invokevirtual java.util.ArrayList.size:()I
iconst_1
if_icmple 66
iconst_1
goto 67
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState
StackMap stack: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState
66: iconst_0
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState
StackMap stack: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState int
67: invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.processFrameStates:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/EconomicMap;Lorg/graalvm/compiler/nodes/FrameState;Z)V
68: aload 19
invokevirtual org.graalvm.compiler.nodes.FrameState.nestedLockDepth:()I
istore 21
start local 21 69: iload 21
ifeq 77
70: aload 1
getstatic org.graalvm.compiler.nodes.java.MonitorIdNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 23
goto 74
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState int top java.util.Iterator
StackMap stack:
71: aload 23
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.java.MonitorIdNode
astore 22
start local 22 72: aload 18
aload 22
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.java.MonitorIdNode
astore 24
start local 24 73: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
aload 24
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.processMonitorId:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/java/MonitorIdNode;)V
end local 24 end local 22 74: StackMap locals:
StackMap stack:
aload 23
invokeinterface java.util.Iterator.hasNext:()Z
ifne 71
end local 21 75: goto 77
76: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 77
aload 18
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.checkContainsOnlyInvalidOrAfterFrameState:(Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;)Z
ifne 77
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
77: StackMap locals:
StackMap stack:
aload 18
aload 14
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 14
78: iconst_0
istore 21
start local 21 79: goto 82
80: StackMap locals: int
StackMap stack:
aload 10
iload 21
aload 18
aload 10
iload 21
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ReturnNode
invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
81: iinc 21 1
StackMap locals:
StackMap stack:
82: iload 21
aload 10
invokevirtual java.util.ArrayList.size:()I
if_icmplt 80
end local 21 83: aload 11
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 22
goto 87
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState top java.util.Iterator
StackMap stack:
84: aload 22
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.Invoke
astore 21
start local 21 85: aload 18
aload 21
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.Invoke
astore 23
start local 23 86: aload 23
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
invokeinterface org.graalvm.compiler.nodes.Invoke.setBci:(I)V
end local 23 end local 21 87: StackMap locals:
StackMap stack:
aload 22
invokeinterface java.util.Iterator.hasNext:()Z
ifne 84
88: aload 12
ifnull 90
89: aload 18
aload 12
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.UnwindNode
astore 12
90: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.lang.String java.lang.String org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeInputList java.util.ArrayList java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.UnwindNode org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.graph.Graph$DuplicationReplacement org.graalvm.compiler.graph.Graph$Mark jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState
StackMap stack:
aload 0
aload 7
aload 14
aload 10
aload 12
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
aload 1
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.finishInlining:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/util/List;Lorg/graalvm/compiler/nodes/UnwindNode;Ljdk/vm/ci/meta/Assumptions;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ValueNode;
pop
91: aload 6
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
92: aload 18
areturn
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 93 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 93 1 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 93 2 receiverNullCheck Z
0 93 3 inlineeMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 93 4 reason Ljava/lang/String;
0 93 5 phase Ljava/lang/String;
1 93 6 invokeNode Lorg/graalvm/compiler/nodes/FixedNode;
2 93 7 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
3 93 8 parameters Lorg/graalvm/compiler/graph/NodeInputList<Lorg/graalvm/compiler/nodes/ValueNode;>;
8 93 9 nodes Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
9 93 10 returnNodes Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/ReturnNode;>;
10 93 11 partialIntrinsicExits Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/Invoke;>;
11 93 12 unwindNode Lorg/graalvm/compiler/nodes/UnwindNode;
12 93 13 entryPointNode Lorg/graalvm/compiler/nodes/StartNode;
13 93 14 firstCFGNode Lorg/graalvm/compiler/nodes/FixedNode;
17 36 15 node Lorg/graalvm/compiler/graph/Node;
25 32 17 invokeInInlineGraph Lorg/graalvm/compiler/nodes/Invoke;
27 32 18 target1 Ljdk/vm/ci/meta/ResolvedJavaMethod;
28 32 19 target2 Ljdk/vm/ci/meta/ResolvedJavaMethod;
38 93 15 prevBegin Lorg/graalvm/compiler/nodes/AbstractBeginNode;
39 93 16 localReplacement Lorg/graalvm/compiler/graph/Graph$DuplicationReplacement;
42 93 17 mark Lorg/graalvm/compiler/graph/Graph$Mark;
45 48 18 duplicates Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
53 93 18 duplicates Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
44 49 21 scope Lorg/graalvm/compiler/nodes/InliningLog$UpdateScope;
54 93 19 stateAfter Lorg/graalvm/compiler/nodes/FrameState;
56 93 20 stateAtExceptionEdge Lorg/graalvm/compiler/nodes/FrameState;
58 61 21 invokeWithException Lorg/graalvm/compiler/nodes/InvokeWithExceptionNode;
60 61 22 obj Lorg/graalvm/compiler/nodes/java/ExceptionObjectNode;
69 75 21 callerLockDepth I
72 74 22 original Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
73 74 24 monitor Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
79 83 21 i I
85 87 21 exit Lorg/graalvm/compiler/nodes/Invoke;
86 87 23 dup Lorg/graalvm/compiler/nodes/Invoke;
Exception table:
from to target type
44 47 48 any
43 50 50 any
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
MethodParameters:
Name Flags
invoke
inlineGraph
receiverNullCheck
inlineeMethod
reason
phase
public static jdk.internal.vm.compiler.collections.EconomicSet<org.graalvm.compiler.graph.Node> inlineForCanonicalization(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, boolean, jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.String, java.lang.String);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
iload 2
aload 3
aconst_null
aload 4
aload 5
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.inlineForCanonicalization:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/function/Consumer;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 1 1 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 1 2 receiverNullCheck Z
0 1 3 inlineeMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 1 4 reason Ljava/lang/String;
0 1 5 phase Ljava/lang/String;
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/graph/Node;>;
MethodParameters:
Name Flags
invoke
inlineGraph
receiverNullCheck
inlineeMethod
reason
phase
public static jdk.internal.vm.compiler.collections.EconomicSet<org.graalvm.compiler.graph.Node> inlineForCanonicalization(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, boolean, jdk.vm.ci.meta.ResolvedJavaMethod, java.util.function.Consumer<jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>>, java.lang.String, java.lang.String);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/function/Consumer;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=12, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: new org.graalvm.compiler.phases.common.util.EconomicSetNodeEventListener
dup
invokespecial org.graalvm.compiler.phases.common.util.EconomicSetNodeEventListener.<init>:()V
astore 7
start local 7 1: aconst_null
astore 8
aconst_null
astore 9
2: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeEvents:(Lorg/graalvm/compiler/graph/Graph$NodeEventListener;)Lorg/graalvm/compiler/graph/Graph$NodeEventScope;
astore 10
start local 10 3: aload 0
aload 1
iload 2
aload 3
aload 5
aload 6
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.inline:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;
astore 11
start local 11 4: aload 4
ifnull 6
5: aload 4
aload 11
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
end local 11 6: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph int jdk.vm.ci.meta.ResolvedJavaMethod java.util.function.Consumer java.lang.String java.lang.String org.graalvm.compiler.phases.common.util.EconomicSetNodeEventListener java.lang.Throwable java.lang.Throwable org.graalvm.compiler.graph.Graph$NodeEventScope
StackMap stack:
aload 10
ifnull 12
aload 10
invokevirtual org.graalvm.compiler.graph.Graph$NodeEventScope.close:()V
goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 8
aload 10
ifnull 8
aload 10
invokevirtual org.graalvm.compiler.graph.Graph$NodeEventScope.close:()V
end local 10 StackMap locals:
StackMap stack:
8: aload 8
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 9
aload 8
ifnonnull 10
aload 9
astore 8
goto 11
StackMap locals:
StackMap stack:
10: aload 8
aload 9
if_acmpeq 11
aload 8
aload 9
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
11: aload 8
athrow
12: StackMap locals:
StackMap stack:
aload 7
invokevirtual org.graalvm.compiler.phases.common.util.EconomicSetNodeEventListener.getNodes:()Ljdk/internal/vm/compiler/collections/EconomicSet;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 13 1 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 13 2 receiverNullCheck Z
0 13 3 inlineeMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 13 4 duplicatesConsumer Ljava/util/function/Consumer<Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
0 13 5 reason Ljava/lang/String;
0 13 6 phase Ljava/lang/String;
1 13 7 listener Lorg/graalvm/compiler/phases/common/util/EconomicSetNodeEventListener;
3 8 10 nes Lorg/graalvm/compiler/graph/Graph$NodeEventScope;
4 6 11 duplicates Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
Exception table:
from to target type
3 6 7 any
2 9 9 any
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/function/Consumer<Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/graph/Node;>;
MethodParameters:
Name Flags
invoke
inlineGraph
receiverNullCheck
inlineeMethod
duplicatesConsumer
reason
phase
private static org.graalvm.compiler.nodes.ValueNode finishInlining(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.FixedNode, java.util.List<org.graalvm.compiler.nodes.ReturnNode>, org.graalvm.compiler.nodes.UnwindNode, jdk.vm.ci.meta.Assumptions, org.graalvm.compiler.nodes.StructuredGraph);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/util/List;Lorg/graalvm/compiler/nodes/UnwindNode;Ljdk/vm/ci/meta/Assumptions;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=13, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 7
start local 7 1: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 8
start local 8 2: aload 7
aload 2
invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
3: aload 0
instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
ifeq 23
4: aload 0
checkcast org.graalvm.compiler.nodes.InvokeWithExceptionNode
astore 9
start local 9 5: aload 4
ifnull 20
aload 4
invokevirtual org.graalvm.compiler.nodes.UnwindNode.isAlive:()Z
ifeq 20
6: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 7
aload 4
invokevirtual org.graalvm.compiler.nodes.UnwindNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
ifnonnull 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals: org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.InvokeWithExceptionNode
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 8
aload 9
invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.exceptionEdge:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
iconst_1
if_icmpeq 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.exceptionEdge:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
checkcast org.graalvm.compiler.nodes.java.ExceptionObjectNode
astore 10
start local 10 9: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 10
aload 10
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
aload 10
invokedynamic apply(Lorg/graalvm/compiler/nodes/java/ExceptionObjectNode;)Lorg/graalvm/compiler/graph/iterators/NodePredicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/graph/Node;)Z
org/graalvm/compiler/phases/common/inlining/InliningUtil.lambda$0(Lorg/graalvm/compiler/nodes/java/ExceptionObjectNode;Lorg/graalvm/compiler/graph/Node;)Z (6)
(Lorg/graalvm/compiler/graph/Node;)Z
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Lorg/graalvm/compiler/graph/iterators/NodePredicate;)Lorg/graalvm/compiler/graph/iterators/FilteredNodeIterable;
invokevirtual org.graalvm.compiler.graph.iterators.FilteredNodeIterable.count:()I
ifeq 10
new java.lang.AssertionError
dup
ldc "Must not have guards attached to an exception object node"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
10: StackMap locals: org.graalvm.compiler.nodes.java.ExceptionObjectNode
StackMap stack:
aload 4
invokestatic org.graalvm.compiler.nodes.AbstractBeginNode.prevBegin:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
astore 11
start local 11 11: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 12
aload 11
ifnonnull 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals: org.graalvm.compiler.nodes.AbstractBeginNode
StackMap stack:
aload 10
aload 11
iconst_2
anewarray org.graalvm.compiler.nodeinfo.InputType
dup
iconst_0
getstatic org.graalvm.compiler.nodeinfo.InputType.Anchor:Lorg/graalvm/compiler/nodeinfo/InputType;
aastore
dup
iconst_1
getstatic org.graalvm.compiler.nodeinfo.InputType.Guard:Lorg/graalvm/compiler/nodeinfo/InputType;
aastore
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;[Lorg/graalvm/compiler/nodeinfo/InputType;)V
13: aload 10
aload 4
invokevirtual org.graalvm.compiler.nodes.UnwindNode.exception:()Lorg/graalvm/compiler/nodes/ValueNode;
getstatic org.graalvm.compiler.nodeinfo.InputType.Value:Lorg/graalvm/compiler/nodeinfo/InputType;
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodeinfo/InputType;)V
14: aload 10
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 12
start local 12 15: aload 10
aconst_null
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
16: aload 4
aload 12
invokevirtual org.graalvm.compiler.nodes.UnwindNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
17: aload 10
aconst_null
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
18: aload 10
invokevirtual org.graalvm.compiler.nodes.java.ExceptionObjectNode.safeDelete:()V
end local 12 end local 11 end local 10 19: goto 21
20: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.killExceptionEdge:()V
21: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.killKillingBegin:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
pop
end local 9 22: goto 34
23: StackMap locals:
StackMap stack:
aload 4
ifnull 34
aload 4
invokevirtual org.graalvm.compiler.nodes.UnwindNode.isAlive:()Z
ifeq 34
24: aconst_null
astore 9
aconst_null
astore 10
25: aload 4
invokevirtual org.graalvm.compiler.nodes.UnwindNode.withNodeSourcePosition:()Lorg/graalvm/compiler/debug/DebugCloseable;
astore 11
start local 11 26: aload 1
getstatic jdk.vm.ci.meta.DeoptimizationAction.InvalidateRecompile:Ljdk/vm/ci/meta/DeoptimizationAction;
getstatic jdk.vm.ci.meta.DeoptimizationReason.NotCompiledExceptionHandler:Ljdk/vm/ci/meta/DeoptimizationReason;
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.addDeoptimizeNode:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)Lorg/graalvm/compiler/nodes/DeoptimizeNode;
astore 12
start local 12 27: aload 4
aload 12
invokevirtual org.graalvm.compiler.nodes.UnwindNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
end local 12 28: aload 11
ifnull 34
aload 11
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
goto 34
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.FixedNode java.util.List org.graalvm.compiler.nodes.UnwindNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
StackMap stack: java.lang.Throwable
29: astore 9
aload 11
ifnull 30
aload 11
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
end local 11 StackMap locals:
StackMap stack:
30: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
31: astore 10
aload 9
ifnonnull 32
aload 10
astore 9
goto 33
StackMap locals:
StackMap stack:
32: aload 9
aload 10
if_acmpeq 33
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
33: aload 9
athrow
34: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.List.isEmpty:()Z
ifne 51
35: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.next:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 10
start local 10 36: aload 0
aconst_null
invokeinterface org.graalvm.compiler.nodes.Invoke.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
37: aload 3
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 43
38: aload 3
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ReturnNode
astore 11
start local 11 39: aload 11
invokevirtual org.graalvm.compiler.nodes.ReturnNode.result:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 9
start local 9 40: aload 7
aload 9
invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
41: aload 11
aload 10
invokevirtual org.graalvm.compiler.nodes.ReturnNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
end local 11 42: goto 54
end local 9 43: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.FixedNode java.util.List org.graalvm.compiler.nodes.UnwindNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState top org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 1
new org.graalvm.compiler.nodes.MergeNode
dup
invokespecial org.graalvm.compiler.nodes.MergeNode.<init>:()V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.MergeNode
astore 11
start local 11 44: aload 11
aload 8
invokevirtual org.graalvm.compiler.nodes.MergeNode.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
45: aload 11
aload 3
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.mergeReturns:(Lorg/graalvm/compiler/nodes/AbstractMergeNode;Ljava/util/List;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 9
start local 9 46: aload 7
aload 9
invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
47: aload 11
aload 9
invokevirtual org.graalvm.compiler.nodes.MergeNode.isPhiAtMerge:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 49
48: aload 1
aload 11
aload 9
checkcast org.graalvm.compiler.nodes.PhiNode
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.fixFrameStates:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/MergeNode;Lorg/graalvm/compiler/nodes/PhiNode;)V
49: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.FixedNode java.util.List org.graalvm.compiler.nodes.UnwindNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.MergeNode
StackMap stack:
aload 11
aload 10
invokevirtual org.graalvm.compiler.nodes.MergeNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
end local 11 end local 10 50: goto 54
end local 9 51: StackMap locals:
StackMap stack:
aconst_null
astore 9
start local 9 52: aload 7
aconst_null
invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
53: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.next:()Lorg/graalvm/compiler/nodes/FixedNode;
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
54: StackMap locals: org.graalvm.compiler.nodes.ValueNode
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
astore 10
start local 10 55: aload 10
ifnull 59
56: aload 5
ifnull 60
57: aload 10
aload 5
invokevirtual jdk.vm.ci.meta.Assumptions.record:(Ljdk/vm/ci/meta/Assumptions;)V
58: goto 60
59: StackMap locals: jdk.vm.ci.meta.Assumptions
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 60
aload 5
ifnull 60
new java.lang.AssertionError
dup
ldc "cannot inline graph (%s) which makes assumptions into a graph (%s) that doesn't"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
60: StackMap locals:
StackMap stack:
aload 1
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.updateMethods:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
61: getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
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
ifeq 63
62: aload 1
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.updateFields:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
63: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasUnsafeAccess:()Z
ifeq 65
64: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.markUnsafeAccess:()V
65: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 66
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getSpeculationLog:()Ljdk/vm/ci/meta/SpeculationLog;
ifnull 66
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getSpeculationLog:()Ljdk/vm/ci/meta/SpeculationLog;
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getSpeculationLog:()Ljdk/vm/ci/meta/SpeculationLog;
if_acmpeq 66
new java.lang.AssertionError
dup
ldc "Only the root graph should have a speculation log"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
66: StackMap locals:
StackMap stack:
aload 9
areturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 67 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 67 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 67 2 firstNode Lorg/graalvm/compiler/nodes/FixedNode;
0 67 3 returnNodes Ljava/util/List<Lorg/graalvm/compiler/nodes/ReturnNode;>;
0 67 4 unwindNode Lorg/graalvm/compiler/nodes/UnwindNode;
0 67 5 inlinedAssumptions Ljdk/vm/ci/meta/Assumptions;
0 67 6 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
1 67 7 invokeNode Lorg/graalvm/compiler/nodes/FixedNode;
2 67 8 stateAfter Lorg/graalvm/compiler/nodes/FrameState;
5 22 9 invokeWithException Lorg/graalvm/compiler/nodes/InvokeWithExceptionNode;
9 19 10 obj Lorg/graalvm/compiler/nodes/java/ExceptionObjectNode;
11 19 11 replacementAnchor Lorg/graalvm/compiler/nodes/AbstractBeginNode;
15 19 12 n Lorg/graalvm/compiler/graph/Node;
26 30 11 position Lorg/graalvm/compiler/debug/DebugCloseable;
27 28 12 deoptimizeNode Lorg/graalvm/compiler/nodes/DeoptimizeNode;
40 43 9 returnValue Lorg/graalvm/compiler/nodes/ValueNode;
46 51 9 returnValue Lorg/graalvm/compiler/nodes/ValueNode;
52 67 9 returnValue Lorg/graalvm/compiler/nodes/ValueNode;
36 50 10 n Lorg/graalvm/compiler/nodes/FixedNode;
39 42 11 returnNode Lorg/graalvm/compiler/nodes/ReturnNode;
44 50 11 merge Lorg/graalvm/compiler/nodes/MergeNode;
55 67 10 assumptions Ljdk/vm/ci/meta/Assumptions;
Exception table:
from to target type
26 28 29 any
25 31 31 any
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/util/List<Lorg/graalvm/compiler/nodes/ReturnNode;>;Lorg/graalvm/compiler/nodes/UnwindNode;Ljdk/vm/ci/meta/Assumptions;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ValueNode;
MethodParameters:
Name Flags
invoke
graph
firstNode
returnNodes
unwindNode
inlinedAssumptions
inlineGraph
private static void fixFrameStates(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.MergeNode, org.graalvm.compiler.nodes.PhiNode);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/MergeNode;Lorg/graalvm/compiler/nodes/PhiNode;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=14, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.graph.NodeMap
dup
aload 0
invokespecial org.graalvm.compiler.graph.NodeMap.<init>:(Lorg/graalvm/compiler/graph/Graph;)V
astore 3
start local 3 1: new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
astore 4
start local 4 2: new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
astore 5
start local 5 3: aload 4
aload 1
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
4: aload 5
aload 2
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
5: goto 40
6: StackMap locals: org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque
StackMap stack:
aload 4
invokevirtual java.util.ArrayDeque.pop:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 6
start local 6 7: aload 5
invokevirtual java.util.ArrayDeque.pop:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 7
start local 7 8: aload 3
aload 6
invokevirtual org.graalvm.compiler.graph.NodeMap.containsKey:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 10
9: goto 40
10: StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode
StackMap stack:
aload 3
aload 6
aload 6
invokevirtual org.graalvm.compiler.graph.NodeMap.put:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: aload 6
instanceof org.graalvm.compiler.nodes.StateSplit
ifeq 25
aload 6
aload 1
if_acmpeq 25
12: aload 6
checkcast org.graalvm.compiler.nodes.StateSplit
astore 8
start local 8 13: aload 8
invokeinterface org.graalvm.compiler.nodes.StateSplit.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 9
start local 9 14: aload 9
ifnull 25
aload 9
invokevirtual org.graalvm.compiler.nodes.FrameState.values:()Lorg/graalvm/compiler/graph/NodeInputList;
aload 2
invokevirtual org.graalvm.compiler.graph.NodeInputList.contains:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 25
15: iconst_0
istore 10
start local 10 16: aload 9
invokevirtual org.graalvm.compiler.nodes.FrameState.duplicate:()Lorg/graalvm/compiler/nodes/FrameState;
astore 11
start local 11 17: aload 9
invokevirtual org.graalvm.compiler.nodes.FrameState.values:()Lorg/graalvm/compiler/graph/NodeInputList;
invokevirtual org.graalvm.compiler.graph.NodeInputList.iterator:()Ljava/util/Iterator;
astore 13
goto 22
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FrameState int org.graalvm.compiler.nodes.FrameState top java.util.Iterator
StackMap stack:
18: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 12
start local 12 19: aload 12
aload 2
if_acmpne 21
20: aload 11
invokevirtual org.graalvm.compiler.nodes.FrameState.values:()Lorg/graalvm/compiler/graph/NodeInputList;
iload 10
aload 7
invokevirtual org.graalvm.compiler.graph.NodeInputList.set:(ILorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
pop
21: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FrameState int org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.ValueNode java.util.Iterator
StackMap stack:
iinc 10 1
end local 12 22: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FrameState int org.graalvm.compiler.nodes.FrameState top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
23: aload 8
aload 11
invokeinterface org.graalvm.compiler.nodes.StateSplit.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
24: aload 9
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.tryKillUnused:(Lorg/graalvm/compiler/graph/Node;)Z
pop
end local 11 end local 10 end local 9 end local 8 25: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode
StackMap stack:
aload 6
instanceof org.graalvm.compiler.nodes.AbstractMergeNode
ifeq 37
26: aload 6
checkcast org.graalvm.compiler.nodes.AbstractMergeNode
astore 8
start local 8 27: aload 8
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.cfgPredecessors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 10
goto 35
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.AbstractMergeNode top java.util.Iterator
StackMap stack:
28: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.EndNode
astore 9
start local 9 29: aload 7
astore 11
start local 11 30: aload 8
aload 7
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.isPhiAtMerge:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 33
31: aload 7
checkcast org.graalvm.compiler.nodes.PhiNode
astore 12
start local 12 32: aload 12
aload 9
invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(Lorg/graalvm/compiler/nodes/AbstractEndNode;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 11
end local 12 33: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.EndNode java.util.Iterator org.graalvm.compiler.nodes.ValueNode
StackMap stack:
aload 4
aload 9
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
34: aload 5
aload 11
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
end local 11 end local 9 35: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.AbstractMergeNode top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 28
end local 8 36: goto 40
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.ArrayDeque java.util.ArrayDeque org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode
StackMap stack:
37: aload 6
invokevirtual org.graalvm.compiler.graph.Node.predecessor:()Lorg/graalvm/compiler/graph/Node;
ifnull 40
38: aload 4
aload 6
invokevirtual org.graalvm.compiler.graph.Node.predecessor:()Lorg/graalvm/compiler/graph/Node;
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
39: aload 5
aload 7
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
end local 7 end local 6 40: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.util.ArrayDeque.isEmpty:()Z
ifeq 6
41: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 42 1 originalMerge Lorg/graalvm/compiler/nodes/MergeNode;
0 42 2 returnPhi Lorg/graalvm/compiler/nodes/PhiNode;
1 42 3 seen Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
2 42 4 workList Ljava/util/ArrayDeque<Lorg/graalvm/compiler/graph/Node;>;
3 42 5 valueList Ljava/util/ArrayDeque<Lorg/graalvm/compiler/nodes/ValueNode;>;
7 40 6 current Lorg/graalvm/compiler/graph/Node;
8 40 7 currentValue Lorg/graalvm/compiler/nodes/ValueNode;
13 25 8 stateSplit Lorg/graalvm/compiler/nodes/StateSplit;
14 25 9 state Lorg/graalvm/compiler/nodes/FrameState;
16 25 10 index I
17 25 11 duplicate Lorg/graalvm/compiler/nodes/FrameState;
19 22 12 value Lorg/graalvm/compiler/nodes/ValueNode;
27 36 8 currentMerge Lorg/graalvm/compiler/nodes/AbstractMergeNode;
29 35 9 pred Lorg/graalvm/compiler/nodes/EndNode;
30 35 11 newValue Lorg/graalvm/compiler/nodes/ValueNode;
32 33 12 currentPhi Lorg/graalvm/compiler/nodes/PhiNode;
MethodParameters:
Name Flags
graph
originalMerge
returnPhi
private static void updateSourcePositions(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>, boolean, org.graalvm.compiler.graph.Graph$Mark);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;ZLorg/graalvm/compiler/graph/Graph$Mark;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 5
start local 5 1: aload 5
invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 6
start local 6 2: aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
ifeq 12
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
ifnull 12
3: iload 3
ifne 4
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.isSubstitution:()Z
ifne 4
iconst_0
goto 5
StackMap locals: org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.StructuredGraph
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: istore 7
start local 7 6: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 10
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
ifeq 10
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
ifne 10
7: iload 7
ifne 10
new java.lang.AssertionError
dup
ldc "trackNodeSourcePosition mismatch %s %s != %s %s"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 6
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
dup
iconst_2
aload 1
aastore
dup
iconst_3
8: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
9: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
10: StackMap locals: int
StackMap stack:
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getNodeSourcePosition:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
astore 8
start local 8 11: aload 6
aload 2
aload 4
aload 8
iload 7
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.updateSourcePosition:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;Lorg/graalvm/compiler/graph/Graph$Mark;Lorg/graalvm/compiler/graph/NodeSourcePosition;Z)V
end local 8 end local 7 12: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 13 1 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 13 2 duplicates Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
0 13 3 isSub Z
0 13 4 mark Lorg/graalvm/compiler/graph/Graph$Mark;
1 13 5 invokeNode Lorg/graalvm/compiler/nodes/FixedNode;
2 13 6 invokeGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
6 12 7 isSubstitution Z
11 12 8 invokePos Lorg/graalvm/compiler/graph/NodeSourcePosition;
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;ZLorg/graalvm/compiler/graph/Graph$Mark;)V
MethodParameters:
Name Flags
invoke
inlineGraph
duplicates
isSub
mark
public static void updateSourcePosition(org.graalvm.compiler.nodes.StructuredGraph, jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.Graph$Mark, org.graalvm.compiler.graph.NodeSourcePosition, );
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;Lorg/graalvm/compiler/graph/Graph$Mark;Lorg/graalvm/compiler/graph/NodeSourcePosition;Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic jdk.internal.vm.compiler.collections.Equivalence.DEFAULT:Ljdk/internal/vm/compiler/collections/Equivalence;
invokestatic jdk.internal.vm.compiler.collections.EconomicSet.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicSet;
astore 5
start local 5 1: aload 5
aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNewNodes:(Lorg/graalvm/compiler/graph/Graph$Mark;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface jdk.internal.vm.compiler.collections.EconomicSet.addAll:(Ljava/lang/Iterable;)V
2: getstatic jdk.internal.vm.compiler.collections.Equivalence.DEFAULT:Ljdk/internal/vm/compiler/collections/Equivalence;
invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
astore 6
start local 6 3: aload 1
invokeinterface jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap.getEntries:()Ljdk/internal/vm/compiler/collections/UnmodifiableMapCursor;
astore 7
start local 7 4: aconst_null
astore 8
start local 8 5: goto 27
6: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap org.graalvm.compiler.graph.Graph$Mark org.graalvm.compiler.graph.NodeSourcePosition int jdk.internal.vm.compiler.collections.EconomicSet jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.UnmodifiableMapCursor jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack:
aload 7
invokeinterface jdk.internal.vm.compiler.collections.UnmodifiableMapCursor.getValue:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 9
start local 9 7: aload 5
aload 9
invokeinterface jdk.internal.vm.compiler.collections.EconomicSet.contains:(Ljava/lang/Object;)Z
ifne 9
8: goto 27
9: StackMap locals: org.graalvm.compiler.graph.Node
StackMap stack:
iload 4
ifeq 12
aload 3
ifnonnull 12
10: aload 9
invokevirtual org.graalvm.compiler.graph.Node.clearNodeSourcePosition:()V
11: goto 27
12: StackMap locals:
StackMap stack:
aload 7
invokeinterface jdk.internal.vm.compiler.collections.UnmodifiableMapCursor.getKey:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
invokevirtual org.graalvm.compiler.graph.Node.getNodeSourcePosition:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
astore 10
start local 10 13: aload 10
ifnull 25
14: aload 8
ifnonnull 16
15: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 17
aload 10
invokevirtual org.graalvm.compiler.graph.NodeSourcePosition.getRootMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
dup
astore 8
ifnonnull 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
16: StackMap locals: org.graalvm.compiler.graph.NodeSourcePosition
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 17
aload 10
aload 8
invokevirtual org.graalvm.compiler.graph.NodeSourcePosition.verifyRootMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Z
ifne 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
17: StackMap locals:
StackMap stack:
aload 6
aload 10
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.NodeSourcePosition
astore 11
start local 11 18: aload 11
ifnonnull 21
19: aload 10
aload 3
iload 4
invokevirtual org.graalvm.compiler.graph.NodeSourcePosition.addCaller:(Lorg/graalvm/compiler/graph/NodeSourcePosition;Z)Lorg/graalvm/compiler/graph/NodeSourcePosition;
astore 11
20: aload 6
aload 10
aload 11
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
21: StackMap locals: org.graalvm.compiler.graph.NodeSourcePosition
StackMap stack:
aload 9
aload 11
invokevirtual org.graalvm.compiler.graph.Node.setNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
22: aload 9
instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
ifeq 27
23: aload 9
checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
aload 11
invokevirtual org.graalvm.compiler.graph.NodeSourcePosition.getCaller:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.addCallerToNoDeoptSuccessorPosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
end local 11 24: goto 27
25: StackMap locals:
StackMap stack:
iload 4
ifeq 27
26: aload 9
aload 3
invokevirtual org.graalvm.compiler.graph.Node.setNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
end local 10 end local 9 27: StackMap locals:
StackMap stack:
aload 7
invokeinterface jdk.internal.vm.compiler.collections.UnmodifiableMapCursor.advance:()Z
ifne 6
28: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 29
aload 0
iconst_0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.verifySourcePositions:(Z)Z
ifne 29
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
29: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 invokeGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 30 1 duplicates Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
0 30 2 mark Lorg/graalvm/compiler/graph/Graph$Mark;
0 30 3 invokePos Lorg/graalvm/compiler/graph/NodeSourcePosition;
0 30 4 isSubstitution Z
1 30 5 newNodes Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/graph/Node;>;
3 30 6 posMap Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/NodeSourcePosition;Lorg/graalvm/compiler/graph/NodeSourcePosition;>;
4 30 7 cursor Ljdk/internal/vm/compiler/collections/UnmodifiableMapCursor<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
5 30 8 inlineeRoot Ljdk/vm/ci/meta/ResolvedJavaMethod;
7 27 9 value Lorg/graalvm/compiler/graph/Node;
13 27 10 pos Lorg/graalvm/compiler/graph/NodeSourcePosition;
18 24 11 callerPos Lorg/graalvm/compiler/graph/NodeSourcePosition;
Signature: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/Graph$Mark;Lorg/graalvm/compiler/graph/NodeSourcePosition;Z)V
MethodParameters:
Name Flags
invokeGraph
duplicates
mark
invokePos
isSubstitution
public static void processMonitorId(org.graalvm.compiler.nodes.FrameState, org.graalvm.compiler.nodes.java.MonitorIdNode);
descriptor: (Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/java/MonitorIdNode;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnull 3
1: aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.nestedLockDepth:()I
istore 2
start local 2 2: aload 1
aload 1
invokevirtual org.graalvm.compiler.nodes.java.MonitorIdNode.getLockDepth:()I
iload 2
iadd
invokevirtual org.graalvm.compiler.nodes.java.MonitorIdNode.setLockDepth:(I)V
end local 2 3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 stateAfter Lorg/graalvm/compiler/nodes/FrameState;
0 4 1 monitorIdNode Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
2 3 2 callerLockDepth I
MethodParameters:
Name Flags
stateAfter
monitorIdNode
protected static void processFrameStates(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.StructuredGraph, jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>, org.graalvm.compiler.nodes.FrameState, );
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/EconomicMap;Lorg/graalvm/compiler/nodes/FrameState;Z)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=9, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 5
start local 5 1: aconst_null
astore 6
start local 6 2: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
astore 7
start local 7 3: getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
astore 8
start local 8 4: aload 1
getstatic org.graalvm.compiler.nodes.FrameState.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 10
goto 13
StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState int org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind jdk.internal.vm.compiler.collections.EconomicMap top java.util.Iterator
StackMap stack:
5: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FrameState
astore 9
start local 9 6: aload 2
aload 9
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FrameState
astore 11
start local 11 7: aload 11
ifnull 13
aload 11
invokevirtual org.graalvm.compiler.nodes.FrameState.isAlive:()Z
ifeq 13
8: aload 6
ifnonnull 10
9: aload 5
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
aload 7
invokevirtual org.graalvm.compiler.nodes.FrameState.duplicateModifiedDuringCall:(ILjdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/nodes/FrameState;
astore 6
10: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState int org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState java.util.Iterator org.graalvm.compiler.nodes.FrameState
StackMap stack:
aload 11
aload 0
aload 8
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 3
aload 6
iload 4
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
11: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
12: invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.processFrameState:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Ljdk/internal/vm/compiler/collections/EconomicMap;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/FrameState;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/List;)Lorg/graalvm/compiler/nodes/FrameState;
pop
end local 11 end local 9 13: StackMap locals: org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.StructuredGraph jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.FrameState int org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind jdk.internal.vm.compiler.collections.EconomicMap top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
14: aload 2
aload 8
invokedynamic apply(Ljdk/internal/vm/compiler/collections/EconomicMap;)Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
org/graalvm/compiler/phases/common/inlining/InliningUtil.lambda$1(Ljdk/internal/vm/compiler/collections/EconomicMap;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node; (6)
(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.replaceAll:(Ljava/util/function/BiFunction;)V
15: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 16 1 inlineGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 16 2 duplicates Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
0 16 3 stateAtExceptionEdge Lorg/graalvm/compiler/nodes/FrameState;
0 16 4 alwaysDuplicateStateAfter Z
1 16 5 stateAtReturn Lorg/graalvm/compiler/nodes/FrameState;
2 16 6 outerFrameState Lorg/graalvm/compiler/nodes/FrameState;
3 16 7 invokeReturnKind Ljdk/vm/ci/meta/JavaKind;
4 16 8 replacements Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
6 13 9 original Lorg/graalvm/compiler/nodes/FrameState;
7 13 11 frameState Lorg/graalvm/compiler/nodes/FrameState;
Signature: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/nodes/FrameState;Z)V
MethodParameters:
Name Flags
invoke
inlineGraph
duplicates
stateAtExceptionEdge
alwaysDuplicateStateAfter
public static org.graalvm.compiler.nodes.FrameState processFrameState(org.graalvm.compiler.nodes.FrameState, org.graalvm.compiler.nodes.Invoke, jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.FrameState, org.graalvm.compiler.nodes.FrameState, boolean, jdk.vm.ci.meta.ResolvedJavaMethod, java.util.List<org.graalvm.compiler.nodes.ValueNode>);
descriptor: (Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Ljdk/internal/vm/compiler/collections/EconomicMap;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/FrameState;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/List;)Lorg/graalvm/compiler/nodes/FrameState;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=13, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 1
aload 5
ifnull 1
aload 5
invokevirtual org.graalvm.compiler.nodes.FrameState.isDeleted:()Z
ifeq 1
new java.lang.AssertionError
dup
aload 5
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 9
start local 9 2: aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
astore 10
start local 10 3: aload 0
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -3
if_icmpne 5
4: aload 0
aload 1
iload 6
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.handleAfterBciFrameState:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Z)Lorg/graalvm/compiler/nodes/FrameState;
areturn
5: StackMap locals: org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind
StackMap stack:
aload 4
ifnull 11
aload 0
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.isStateAfterException:(Lorg/graalvm/compiler/nodes/FrameState;)Z
ifeq 11
6: aload 4
astore 11
start local 11 7: aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackSize:()I
ifle 9
aload 4
iconst_0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
aload 0
iconst_0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
if_acmpeq 9
8: aload 4
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
aload 0
iconst_0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.FrameState.duplicateModified:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/FrameState;
astore 11
9: StackMap locals: org.graalvm.compiler.nodes.FrameState
StackMap stack:
aload 0
aload 11
invokevirtual org.graalvm.compiler.nodes.FrameState.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
10: aload 11
areturn
end local 11 11: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.nodes.FrameState.bci:I
iconst_m1
if_icmpne 12
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
getstatic org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.FLOATING_GUARDS:Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
if_acmpeq 13
StackMap locals:
StackMap stack:
12: aload 0
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -4
if_icmpne 15
13: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iload 6
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.handleMissingAfterExceptionFrameState:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Ljdk/internal/vm/compiler/collections/EconomicMap;Z)Lorg/graalvm/compiler/nodes/FrameState;
pop
14: aload 0
areturn
15: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -2
if_icmpne 27
16: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 17
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
ifnull 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
17: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.List.isEmpty:()Z
ifeq 18
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.NO_ARGS:[Lorg/graalvm/compiler/nodes/ValueNode;
goto 19
StackMap locals:
StackMap stack:
18: aload 8
aload 8
invokeinterface java.util.List.size:()I
anewarray org.graalvm.compiler.nodes.ValueNode
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ValueNode[]
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.ValueNode[]
19: astore 11
start local 11 20: aload 9
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
aload 10
aload 7
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
aload 7
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.isStatic:()Z
ifeq 21
iconst_0
goto 22
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState int jdk.vm.ci.meta.ResolvedJavaMethod java.util.List org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind org.graalvm.compiler.nodes.ValueNode[]
StackMap stack: org.graalvm.compiler.nodes.FrameState int jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.Signature
21: iconst_1
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.FrameState int jdk.vm.ci.meta.ResolvedJavaMethod java.util.List org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind org.graalvm.compiler.nodes.ValueNode[]
StackMap stack: org.graalvm.compiler.nodes.FrameState int jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.Signature int
22: invokeinterface jdk.vm.ci.meta.Signature.toParameterKinds:(Z)[Ljdk/vm/ci/meta/JavaKind;
23: aload 11
24: invokevirtual org.graalvm.compiler.nodes.FrameState.duplicateModifiedBeforeCall:(ILjdk/vm/ci/meta/JavaKind;[Ljdk/vm/ci/meta/JavaKind;[Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/FrameState;
astore 12
start local 12 25: aload 0
aload 12
invokevirtual org.graalvm.compiler.nodes.FrameState.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
26: aload 12
areturn
end local 12 end local 11 27: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
ifnonnull 30
28: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 29
aload 1
aload 3
aload 0
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.checkInlineeFrameState:(Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/FrameState;)Z
ifne 29
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
29: StackMap locals:
StackMap stack:
aload 0
aload 5
invokevirtual org.graalvm.compiler.nodes.FrameState.setOuterFrameState:(Lorg/graalvm/compiler/nodes/FrameState;)V
30: StackMap locals:
StackMap stack:
aload 0
areturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 frameState Lorg/graalvm/compiler/nodes/FrameState;
0 31 1 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 31 2 replacements Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
0 31 3 inlinedMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 31 4 stateAtExceptionEdge Lorg/graalvm/compiler/nodes/FrameState;
0 31 5 outerFrameState Lorg/graalvm/compiler/nodes/FrameState;
0 31 6 alwaysDuplicateStateAfter Z
0 31 7 invokeTargetMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 31 8 invokeArgsList Ljava/util/List<Lorg/graalvm/compiler/nodes/ValueNode;>;
2 31 9 stateAtReturn Lorg/graalvm/compiler/nodes/FrameState;
3 31 10 invokeReturnKind Ljdk/vm/ci/meta/JavaKind;
7 11 11 stateAfterException Lorg/graalvm/compiler/nodes/FrameState;
20 27 11 invokeArgs [Lorg/graalvm/compiler/nodes/ValueNode;
25 27 12 stateBeforeCall Lorg/graalvm/compiler/nodes/FrameState;
Signature: (Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/FrameState;ZLjdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/List<Lorg/graalvm/compiler/nodes/ValueNode;>;)Lorg/graalvm/compiler/nodes/FrameState;
MethodParameters:
Name Flags
frameState
invoke
replacements
inlinedMethod
stateAtExceptionEdge
outerFrameState
alwaysDuplicateStateAfter
invokeTargetMethod
invokeArgsList
private static org.graalvm.compiler.nodes.FrameState handleAfterBciFrameState(org.graalvm.compiler.nodes.FrameState, org.graalvm.compiler.nodes.Invoke, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Z)Lorg/graalvm/compiler/nodes/FrameState;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
astore 3
start local 3 1: aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
astore 4
start local 4 2: aload 3
astore 5
start local 5 3: aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.getCode:()Lorg/graalvm/compiler/bytecode/Bytecode;
ifnonnull 10
4: aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 7
goto 9
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke int org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind org.graalvm.compiler.nodes.FrameState top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 6
start local 6 6: aload 6
instanceof org.graalvm.compiler.nodes.extended.ForeignCallNode
ifeq 9
7: aload 6
checkcast org.graalvm.compiler.nodes.extended.ForeignCallNode
astore 8
start local 8 8: aload 8
aload 1
invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
invokevirtual org.graalvm.compiler.nodes.extended.ForeignCallNode.setBci:(I)V
end local 8 end local 6 9: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
10: StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke int org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind org.graalvm.compiler.nodes.FrameState
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackSize:()I
ifle 11
aload 5
invokevirtual org.graalvm.compiler.nodes.FrameState.stackSize:()I
ifne 11
iconst_1
goto 12
StackMap locals:
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: istore 6
start local 6 13: iload 6
ifeq 16
14: aload 5
invokevirtual org.graalvm.compiler.nodes.FrameState.duplicateWithVirtualState:()Lorg/graalvm/compiler/nodes/FrameState;
astore 5
15: goto 21
16: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 17
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.rethrowException:()Z
ifeq 17
new java.lang.AssertionError
dup
aload 0
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
17: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackSize:()I
ifle 20
iload 2
ifne 18
aload 5
iconst_0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
aload 0
iconst_0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
if_acmpeq 20
18: StackMap locals:
StackMap stack:
aload 3
aload 4
aload 4
aload 0
iconst_0
invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.FrameState.duplicateModified:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/FrameState;
astore 5
19: goto 21
20: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.graalvm.compiler.nodes.FrameState.duplicate:()Lorg/graalvm/compiler/nodes/FrameState;
astore 5
21: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 22
aload 5
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -5
if_icmpne 22
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
22: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/java/MonitorExitNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 8
goto 25
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke int org.graalvm.compiler.nodes.FrameState jdk.vm.ci.meta.JavaKind org.graalvm.compiler.nodes.FrameState int top java.util.Iterator
StackMap stack:
23: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.java.MonitorExitNode
astore 7
start local 7 24: aload 7
invokevirtual org.graalvm.compiler.nodes.java.MonitorExitNode.clearEscapedValue:()V
end local 7 25: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
26: aload 0
aload 5
invokevirtual org.graalvm.compiler.nodes.FrameState.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
27: aload 5
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 frameState Lorg/graalvm/compiler/nodes/FrameState;
0 28 1 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 28 2 alwaysDuplicateStateAfter Z
1 28 3 stateAtReturn Lorg/graalvm/compiler/nodes/FrameState;
2 28 4 invokeReturnKind Ljdk/vm/ci/meta/JavaKind;
3 28 5 stateAfterReturn Lorg/graalvm/compiler/nodes/FrameState;
6 9 6 usage Lorg/graalvm/compiler/graph/Node;
8 9 8 foreign Lorg/graalvm/compiler/nodes/extended/ForeignCallNode;
13 28 6 voidReturnMissmatch Z
24 25 7 n Lorg/graalvm/compiler/nodes/java/MonitorExitNode;
MethodParameters:
Name Flags
frameState
invoke
alwaysDuplicateStateAfter
static boolean checkInlineeFrameState(org.graalvm.compiler.nodes.Invoke, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.FrameState);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/FrameState;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 1
aload 2
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -4
if_icmpne 1
new java.lang.AssertionError
dup
aload 2
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 2
aload 2
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -2
if_icmpne 2
new java.lang.AssertionError
dup
aload 2
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 3
aload 2
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -5
if_icmpne 3
new java.lang.AssertionError
dup
aload 2
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
aload 2
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -6
if_icmpeq 17
4: aload 2
invokevirtual org.graalvm.compiler.nodes.FrameState.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 3
start local 3 5: aload 3
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 17
6: aload 3
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 13
7: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 17
getstatic jdk.vm.ci.services.Services.IS_IN_NATIVE_IMAGE:Z
ifne 17
aload 1
8: ldc Lorg/graalvm/compiler/api/replacements/MethodSubstitution;
9: invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
ifnonnull 17
new java.lang.AssertionError
dup
10: new java.lang.StringBuilder
dup
ldc "expected an intrinsic when inlinee frame state matches method of call target but does not match the method of the inlinee graph: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
13: StackMap locals: jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack:
aload 3
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
aload 1
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 17
14: new java.lang.AssertionError
dup
ldc "inlinedMethod=%s frameState.method=%s frameState=%s invoke.method=%s"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 3
aastore
dup
iconst_2
aload 2
aastore
dup
iconst_3
15: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
invokevirtual org.graalvm.compiler.nodes.CallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aastore
16: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 3 17: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 18 1 inlinedMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 18 2 frameState Lorg/graalvm/compiler/nodes/FrameState;
5 17 3 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
MethodParameters:
Name Flags
invoke
inlinedMethod
frameState
private static boolean isStateAfterException(org.graalvm.compiler.nodes.FrameState);
descriptor: (Lorg/graalvm/compiler/nodes/FrameState;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -4
if_icmpeq 2
aload 0
getfield org.graalvm.compiler.nodes.FrameState.bci:I
iconst_m1
if_icmpne 1
aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.isSynchronized:()Z
ifeq 2
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
StackMap locals:
StackMap stack:
2: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 frameState Lorg/graalvm/compiler/nodes/FrameState;
MethodParameters:
Name Flags
frameState
public static org.graalvm.compiler.nodes.FrameState handleMissingAfterExceptionFrameState(org.graalvm.compiler.nodes.FrameState, org.graalvm.compiler.nodes.Invoke, jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Ljdk/internal/vm/compiler/collections/EconomicMap;Z)Lorg/graalvm/compiler/nodes/FrameState;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=19, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.nodes.FrameState.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 4
start local 4 1: aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeWorkList:()Lorg/graalvm/compiler/graph/NodeWorkList;
astore 5
start local 5 2: aload 5
aload 0
invokevirtual org.graalvm.compiler.graph.NodeWorkList.add:(Lorg/graalvm/compiler/graph/Node;)V
3: aload 5
invokevirtual org.graalvm.compiler.graph.NodeWorkList.iterator:()Ljava/util/Iterator;
astore 7
goto 53
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 6
start local 6 5: aload 6
checkcast org.graalvm.compiler.nodes.FrameState
astore 8
start local 8 6: aload 8
invokevirtual org.graalvm.compiler.nodes.FrameState.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 52
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState top java.util.Iterator
StackMap stack:
7: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 9
start local 9 8: aload 9
invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
ifne 10
9: goto 52
10: StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
aload 9
instanceof org.graalvm.compiler.nodes.FrameState
ifeq 13
11: aload 5
aload 9
invokevirtual org.graalvm.compiler.graph.NodeWorkList.add:(Lorg/graalvm/compiler/graph/Node;)V
12: goto 52
13: StackMap locals:
StackMap stack:
aload 9
checkcast org.graalvm.compiler.nodes.StateSplit
astore 11
start local 11 14: aload 11
invokeinterface org.graalvm.compiler.nodes.StateSplit.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 12
start local 12 15: aload 12
instanceof org.graalvm.compiler.nodes.AbstractMergeNode
ifeq 32
16: aload 12
checkcast org.graalvm.compiler.nodes.AbstractMergeNode
astore 13
start local 13 17: goto 30
18: StackMap locals: org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractMergeNode
StackMap stack:
aload 13
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEnds:()Lorg/graalvm/compiler/graph/NodeInputList;
invokevirtual org.graalvm.compiler.graph.NodeInputList.first:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.AbstractEndNode
astore 14
start local 14 19: aconst_null
astore 15
aconst_null
astore 16
20: aload 14
invokevirtual org.graalvm.compiler.nodes.AbstractEndNode.withNodeSourcePosition:()Lorg/graalvm/compiler/debug/DebugCloseable;
astore 17
start local 17 21: aload 4
getstatic jdk.vm.ci.meta.DeoptimizationAction.InvalidateRecompile:Ljdk/vm/ci/meta/DeoptimizationAction;
getstatic jdk.vm.ci.meta.DeoptimizationReason.NotCompiledExceptionHandler:Ljdk/vm/ci/meta/DeoptimizationReason;
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.addDeoptimizeNode:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)Lorg/graalvm/compiler/nodes/DeoptimizeNode;
astore 18
start local 18 22: aload 14
aload 18
invokevirtual org.graalvm.compiler.nodes.AbstractEndNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
23: aload 14
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
end local 18 24: aload 17
ifnull 30
aload 17
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
goto 30
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.AbstractEndNode java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
StackMap stack: java.lang.Throwable
25: astore 15
aload 17
ifnull 26
aload 17
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
end local 17 StackMap locals:
StackMap stack:
26: aload 15
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
27: astore 16
aload 15
ifnonnull 28
aload 16
astore 15
goto 29
StackMap locals:
StackMap stack:
28: aload 15
aload 16
if_acmpeq 29
aload 15
aload 16
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
29: aload 15
athrow
end local 14 30: StackMap locals:
StackMap stack:
aload 13
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.isAlive:()Z
ifne 18
end local 13 31: goto 52
StackMap locals:
StackMap stack:
32: aload 12
instanceof org.graalvm.compiler.nodes.java.ExceptionObjectNode
ifeq 39
33: aload 12
invokevirtual org.graalvm.compiler.nodes.FixedNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.InvokeWithExceptionNode
astore 13
start local 13 34: aload 13
invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.replaceWithInvoke:()Lorg/graalvm/compiler/nodes/InvokeNode;
astore 14
start local 14 35: aload 2
ifnull 37
36: aload 2
aload 13
aload 14
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
37: StackMap locals: org.graalvm.compiler.nodes.InvokeWithExceptionNode org.graalvm.compiler.nodes.InvokeNode
StackMap stack:
aload 14
invokevirtual org.graalvm.compiler.nodes.InvokeNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
aload 1
iload 3
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.handleAfterBciFrameState:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Z)Lorg/graalvm/compiler/nodes/FrameState;
pop
end local 14 end local 13 38: goto 52
39: StackMap locals:
StackMap stack:
aconst_null
astore 13
aconst_null
astore 14
40: aload 12
invokevirtual org.graalvm.compiler.nodes.FixedNode.withNodeSourcePosition:()Lorg/graalvm/compiler/debug/DebugCloseable;
astore 15
start local 15 41: aload 4
getstatic jdk.vm.ci.meta.DeoptimizationAction.InvalidateRecompile:Ljdk/vm/ci/meta/DeoptimizationAction;
getstatic jdk.vm.ci.meta.DeoptimizationReason.NotCompiledExceptionHandler:Ljdk/vm/ci/meta/DeoptimizationReason;
invokestatic org.graalvm.compiler.phases.common.inlining.InliningUtil.addDeoptimizeNode:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)Lorg/graalvm/compiler/nodes/DeoptimizeNode;
astore 16
start local 16 42: aload 12
instanceof org.graalvm.compiler.nodes.AbstractBeginNode
ifeq 44
43: aload 16
invokestatic org.graalvm.compiler.nodes.BeginNode.begin:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
astore 16
44: StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FixedNode java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 12
aload 16
invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
45: aload 12
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
end local 16 46: aload 15
ifnull 52
aload 15
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
goto 52
StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.StateSplit org.graalvm.compiler.nodes.FixedNode java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
StackMap stack: java.lang.Throwable
47: astore 13
aload 15
ifnull 48
aload 15
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
end local 15 StackMap locals:
StackMap stack:
48: aload 13
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
49: astore 14
aload 13
ifnonnull 50
aload 14
astore 13
goto 51
StackMap locals:
StackMap stack:
50: aload 13
aload 14
if_acmpeq 51
aload 13
aload 14
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
51: aload 13
athrow
end local 12 end local 11 end local 9 52: StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 8 end local 6 53: StackMap locals: org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.Invoke jdk.internal.vm.compiler.collections.EconomicMap int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeWorkList top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
54: aload 0
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 55 0 nonReplaceableFrameState Lorg/graalvm/compiler/nodes/FrameState;
0 55 1 invoke Lorg/graalvm/compiler/nodes/Invoke;
0 55 2 replacements Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
0 55 3 alwaysDuplicateStateAfter Z
1 55 4 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 55 5 workList Lorg/graalvm/compiler/graph/NodeWorkList;
5 53 6 node Lorg/graalvm/compiler/graph/Node;
6 53 8 fs Lorg/graalvm/compiler/nodes/FrameState;
8 52 9 usage Lorg/graalvm/compiler/graph/Node;
14 52 11 stateSplit Lorg/graalvm/compiler/nodes/StateSplit;
15 52 12 fixedStateSplit Lorg/graalvm/compiler/nodes/FixedNode;
17 31 13 merge Lorg/graalvm/compiler/nodes/AbstractMergeNode;
19 30 14 end Lorg/graalvm/compiler/nodes/AbstractEndNode;
21 26 17 position Lorg/graalvm/compiler/debug/DebugCloseable;
22 24 18 deoptimizeNode Lorg/graalvm/compiler/nodes/DeoptimizeNode;
34 38 13 oldInvoke Lorg/graalvm/compiler/nodes/InvokeWithExceptionNode;
35 38 14 newInvoke Lorg/graalvm/compiler/nodes/InvokeNode;
41 48 15 position Lorg/graalvm/compiler/debug/DebugCloseable;
42 46 16 deoptimizeNode Lorg/graalvm/compiler/nodes/FixedNode;
Exception table:
from to target type
21 24 25 any
20 27 27 any
41 46 47 any
40 49 49 any
Signature: (Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/Invoke;Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;Z)Lorg/graalvm/compiler/nodes/FrameState;
MethodParameters:
Name Flags
nonReplaceableFrameState
invoke
replacements
alwaysDuplicateStateAfter
private static org.graalvm.compiler.nodes.DeoptimizeNode addDeoptimizeNode(org.graalvm.compiler.nodes.StructuredGraph, jdk.vm.ci.meta.DeoptimizationAction, jdk.vm.ci.meta.DeoptimizationReason);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)Lorg/graalvm/compiler/nodes/DeoptimizeNode;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
getstatic org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.FLOATING_GUARDS:Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
if_acmpne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "Cannot introduce speculative deoptimization when Graal is used with fixed guards"
invokestatic org.graalvm.compiler.debug.GraalError.guarantee:(ZLjava/lang/String;)V
3: aload 0
new org.graalvm.compiler.nodes.DeoptimizeNode
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.nodes.DeoptimizeNode.<init>:(Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.DeoptimizeNode
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 4 1 action Ljdk/vm/ci/meta/DeoptimizationAction;
0 4 2 reason Ljdk/vm/ci/meta/DeoptimizationReason;
MethodParameters:
Name Flags
graph
action
reason
private static boolean checkContainsOnlyInvalidOrAfterFrameState(jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>);
descriptor: (Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: bipush -6
istore 1
start local 1 1: aload 0
invokeinterface jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap.getValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
goto 13
StackMap locals: jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 2
start local 2 3: aload 2
instanceof org.graalvm.compiler.nodes.FrameState
ifeq 13
4: aload 2
checkcast org.graalvm.compiler.nodes.FrameState
astore 4
start local 4 5: aload 4
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -6
if_icmpne 7
6: goto 13
7: StackMap locals: jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap int org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.nodes.FrameState
StackMap stack:
aload 4
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -3
if_icmpeq 8
aload 4
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -2
if_icmpne 12
8: StackMap locals:
StackMap stack:
iload 1
bipush -6
if_icmpne 11
9: aload 4
getfield org.graalvm.compiler.nodes.FrameState.bci:I
istore 1
10: goto 13
11: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 13
iload 1
aload 4
getfield org.graalvm.compiler.nodes.FrameState.bci:I
if_icmpeq 13
new java.lang.AssertionError
dup
aload 2
getstatic org.graalvm.compiler.nodeinfo.Verbosity.Debugger:Lorg/graalvm/compiler/nodeinfo/Verbosity;
invokevirtual org.graalvm.compiler.graph.Node.toString:(Lorg/graalvm/compiler/nodeinfo/Verbosity;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
12: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 13
new java.lang.AssertionError
dup
aload 2
getstatic org.graalvm.compiler.nodeinfo.Verbosity.Debugger:Lorg/graalvm/compiler/nodeinfo/Verbosity;
invokevirtual org.graalvm.compiler.graph.Node.toString:(Lorg/graalvm/compiler/nodeinfo/Verbosity;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 4 end local 2 13: StackMap locals: jdk.internal.vm.compiler.collections.UnmodifiableEconomicMap int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
14: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 duplicates Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
1 15 1 okBci I
3 13 2 node Lorg/graalvm/compiler/graph/Node;
5 13 4 frameState Lorg/graalvm/compiler/nodes/FrameState;
Signature: (Ljdk/internal/vm/compiler/collections/UnmodifiableEconomicMap<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;)Z
MethodParameters:
Name Flags
duplicates
public static org.graalvm.compiler.nodes.ValueNode nonNullReceiver(org.graalvm.compiler.nodes.Invoke);
descriptor: (Lorg/graalvm/compiler/nodes/Invoke;)Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=11, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.withNodeSourcePosition:()Lorg/graalvm/compiler/debug/DebugCloseable;
astore 3
start local 3 2: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
astore 4
start local 4 3: getstatic org.graalvm.compiler.phases.common.inlining.InliningUtil.$assertionsDisabled:Z
ifne 4
aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.isStatic:()Z
ifeq 4
new java.lang.AssertionError
dup
aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals: org.graalvm.compiler.nodes.Invoke java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable org.graalvm.compiler.nodes.java.MethodCallTargetNode
StackMap stack:
aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 5
start local 5 5: aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
iconst_0
invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 6
start local 6 6: aload 6
astore 7
start local 7 7: aload 7
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 19
8: aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.getInvokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
getstatic org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.Special:Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
if_acmpne 13
9: aload 7
getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
astore 8
start local 8 10: aload 8
aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
aload 4
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
invokestatic org.graalvm.compiler.core.common.type.TypeReference.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
invokevirtual org.graalvm.compiler.core.common.type.Stamp.join:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
astore 9
start local 9 11: aload 9
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 13
12: aload 5
new org.graalvm.compiler.nodes.PiNode
dup
aload 7
aload 9
invokespecial org.graalvm.compiler.nodes.PiNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 7
end local 9 end local 8 13: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
StackMap stack:
aload 7
invokestatic org.graalvm.compiler.nodes.type.StampTool.isPointerNonNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
ifne 19
14: aload 5
aload 7
invokestatic org.graalvm.compiler.nodes.calc.IsNullNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.LogicNode
astore 8
start local 8 15: aload 5
new org.graalvm.compiler.nodes.FixedGuardNode
dup
aload 8
getstatic jdk.vm.ci.meta.DeoptimizationReason.NullCheckException:Ljdk/vm/ci/meta/DeoptimizationReason;
getstatic jdk.vm.ci.meta.DeoptimizationAction.InvalidateReprofile:Ljdk/vm/ci/meta/DeoptimizationAction;
iconst_1
invokespecial org.graalvm.compiler.nodes.FixedGuardNode.<init>:(Lorg/graalvm/compiler/nodes/LogicNode;Ljdk/vm/ci/meta/DeoptimizationReason;Ljdk/vm/ci/meta/DeoptimizationAction;Z)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.FixedGuardNode
astore 9
start local 9 16: aload 5
new org.graalvm.compiler.nodes.PiNode
dup
aload 7
invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:()Lorg/graalvm/compiler/core/common/type/Stamp;
aload 9
invokespecial org.graalvm.compiler.nodes.PiNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.PiNode
astore 10
start local 10 17: aload 5
aload 0
invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
aload 9
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
18: aload 10
astore 7
end local 10 end local 9 end local 8 19: StackMap locals:
StackMap stack:
aload 7
aload 6
if_acmpeq 21
20: aload 4
aload 6
aload 7
invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.replaceFirstInput:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
21: StackMap locals:
StackMap stack:
aload 7
22: aload 3
ifnull 23
aload 3
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
23: StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.ValueNode
areturn
end local 7 end local 6 end local 5 end local 4 StackMap locals: org.graalvm.compiler.nodes.Invoke java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
StackMap stack: java.lang.Throwable
24: astore 1
25: aload 3
ifnull 26
aload 3
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
end local 3 StackMap locals:
StackMap stack:
26: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
27: astore 2
aload 1
ifnonnull 28
aload 2
astore 1
goto 29
StackMap locals:
StackMap stack:
28: aload 1
aload 2
if_acmpeq 29
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
29: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 invoke Lorg/graalvm/compiler/nodes/Invoke;
2 26 3 position Lorg/graalvm/compiler/debug/DebugCloseable;
3 24 4 callTarget Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
5 24 5 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
6 24 6 oldReceiver Lorg/graalvm/compiler/nodes/ValueNode;
7 24 7 newReceiver Lorg/graalvm/compiler/nodes/ValueNode;
10 13 8 paramStamp Lorg/graalvm/compiler/core/common/type/Stamp;
11 13 9 stamp Lorg/graalvm/compiler/core/common/type/Stamp;
15 19 8 condition Lorg/graalvm/compiler/nodes/LogicNode;
16 19 9 fixedGuard Lorg/graalvm/compiler/nodes/FixedGuardNode;
17 19 10 nonNullReceiver Lorg/graalvm/compiler/nodes/PiNode;
Exception table:
from to target type
2 22 24 any
1 23 27 any
24 27 27 any
MethodParameters:
Name Flags
invoke
public static int getNodeCount(org.graalvm.compiler.nodes.StructuredGraph);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
MethodParameters:
Name Flags
graph
private static boolean lambda$0(org.graalvm.compiler.nodes.java.ExceptionObjectNode, org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/nodes/java/ExceptionObjectNode;Lorg/graalvm/compiler/graph/Node;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
instanceof org.graalvm.compiler.nodes.extended.GuardedNode
ifeq 1
aload 1
checkcast org.graalvm.compiler.nodes.extended.GuardedNode
invokeinterface org.graalvm.compiler.nodes.extended.GuardedNode.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
aload 0
if_acmpne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 x Lorg/graalvm/compiler/graph/Node;
private static org.graalvm.compiler.graph.Node lambda$1(jdk.internal.vm.compiler.collections.EconomicMap, org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node);
descriptor: (Ljdk/internal/vm/compiler/collections/EconomicMap;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 1 start local 2 0: aload 0
aload 2
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifeq 1
aload 0
aload 2
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
goto 2
StackMap locals:
StackMap stack:
1: aload 2
StackMap locals:
StackMap stack: org.graalvm.compiler.graph.Node
2: areturn
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 key Lorg/graalvm/compiler/graph/Node;
0 3 2 value Lorg/graalvm/compiler/graph/Node;
}
SourceFile: "InliningUtil.java"
NestMembers:
org.graalvm.compiler.phases.common.inlining.InliningUtil$1
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext
public abstract DuplicationReplacement = org.graalvm.compiler.graph.Graph$DuplicationReplacement of org.graalvm.compiler.graph.Graph
public Mark = org.graalvm.compiler.graph.Graph$Mark of org.graalvm.compiler.graph.Graph
public abstract NodeEventListener = org.graalvm.compiler.graph.Graph$NodeEventListener of org.graalvm.compiler.graph.Graph
public final NodeEventScope = org.graalvm.compiler.graph.Graph$NodeEventScope of org.graalvm.compiler.graph.Graph
public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
public final InvokeKind = org.graalvm.compiler.nodes.CallTargetNode$InvokeKind of org.graalvm.compiler.nodes.CallTargetNode
public final UpdateScope = org.graalvm.compiler.nodes.InliningLog$UpdateScope of org.graalvm.compiler.nodes.InliningLog
public final GuardsStage = org.graalvm.compiler.nodes.StructuredGraph$GuardsStage of org.graalvm.compiler.nodes.StructuredGraph
org.graalvm.compiler.phases.common.inlining.InliningUtil$1