public class org.graalvm.compiler.core.test.TypeSystemTest extends org.graalvm.compiler.core.test.GraalCompilerTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.test.TypeSystemTest
super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
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.core.test.GraalCompilerTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
public void test3();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "test3Snippet"
ldc "referenceSnippet3"
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.test:(Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int referenceSnippet3(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_2
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public static int test3Snippet(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 4
1: aload 0
ifnull 3
2: iconst_3
ireturn
3: StackMap locals:
StackMap stack:
iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iconst_2
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public void test4();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "test4Snippet"
ldc "referenceSnippet3"
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.test:(Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int test4Snippet(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 5
1: ldc Ljava/lang/Integer;
astore 1
start local 1 2: aload 0
aload 1
if_acmpne 4
3: iconst_3
ireturn
4: StackMap locals: java.lang.Object
StackMap stack:
iconst_1
ireturn
end local 1 5: StackMap locals:
StackMap stack:
iconst_2
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 o Ljava/lang/Object;
2 5 1 o2 Ljava/lang/Object;
MethodParameters:
Name Flags
o
public void test5();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "test5Snippet"
ldc "referenceSnippet5"
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.test:(Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
RuntimeVisibleAnnotations:
org.junit.Test()
org.junit.Ignore()
public static int referenceSnippet5(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 3
1: aload 1
ldc Ljava/lang/Integer;
if_acmpne 5
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Double;
if_acmpne 5
4: bipush 11
ireturn
5: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Integer;
if_acmpne 7
6: iconst_3
ireturn
7: StackMap locals:
StackMap stack:
iconst_5
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 o Ljava/lang/Object;
0 8 1 a Ljava/lang/Object;
MethodParameters:
Name Flags
o
a
public static int test5Snippet(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 5
1: aload 1
ldc Ljava/lang/Integer;
if_acmpne 9
2: aload 1
ifnonnull 4
3: bipush 10
ireturn
4: StackMap locals:
StackMap stack:
iconst_1
ireturn
5: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Double;
if_acmpne 9
6: aload 1
ifnull 8
7: bipush 11
ireturn
8: StackMap locals:
StackMap stack:
iconst_2
ireturn
9: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Integer;
if_acmpne 11
10: iconst_3
ireturn
11: StackMap locals:
StackMap stack:
iconst_5
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 o Ljava/lang/Object;
0 12 1 a Ljava/lang/Object;
MethodParameters:
Name Flags
o
a
public void test6();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "test6Snippet"
ldc Lorg/graalvm/compiler/nodes/java/InstanceOfNode;
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.testHelper:(Ljava/lang/String;Ljava/lang/Class;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int test6Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: iload 0
iconst_5
if_icmpne 3
2: new java.io.FileInputStream
dup
ldc "asdf"
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 1
3: StackMap locals: java.lang.Object
StackMap stack:
iload 0
bipush 10
if_icmpge 5
4: new java.io.ByteArrayInputStream
dup
iconst_3
newarray 8
dup
iconst_0
iconst_1
bastore
dup
iconst_1
iconst_2
bastore
dup
iconst_2
iconst_3
bastore
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
astore 1
5: StackMap locals:
StackMap stack:
iload 0
ifle 7
6: new java.io.BufferedInputStream
dup
aconst_null
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
astore 1
7: StackMap locals:
StackMap stack:
aload 1
checkcast java.io.InputStream
invokevirtual java.io.InputStream.available:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 i I
1 8 1 o Ljava/lang/Object;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
i
public void test7();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "test7Snippet"
ldc "referenceSnippet7"
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.test:(Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int test7Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
sipush 255
iand
bipush 10
ishl
iload 0
bipush 31
iand
iconst_1
iadd
if_icmpne 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iload 0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 x I
MethodParameters:
Name Flags
x
public static int referenceSnippet7(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x I
MethodParameters:
Name Flags
x
private void test(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 4
start local 4 2: aload 4
iconst_1
aload 3
ldc "Graph"
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
3: new org.graalvm.compiler.phases.common.ConditionalEliminationPhase
dup
iconst_0
invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase.<init>:(Z)V
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
4: aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
5: aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
6: aload 0
aload 2
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 5
start local 5 7: new org.graalvm.compiler.phases.common.ConditionalEliminationPhase
dup
iconst_0
invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase.<init>:(Z)V
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
8: aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
9: aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 5
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
10: aload 0
aload 5
aload 3
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.assertEquals:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
11: 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 12 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
0 12 1 snippet Ljava/lang/String;
0 12 2 referenceSnippet Ljava/lang/String;
1 12 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 12 4 debug Lorg/graalvm/compiler/debug/DebugContext;
7 12 5 referenceGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
MethodParameters:
Name Flags
snippet
referenceSnippet
protected void assertEquals(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.StructuredGraph);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 3
start local 3 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getNodeCountExcludingUnusedConstants:(Lorg/graalvm/compiler/nodes/StructuredGraph;)I
aload 0
aload 2
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getNodeCountExcludingUnusedConstants:(Lorg/graalvm/compiler/nodes/StructuredGraph;)I
if_icmpeq 5
2: aload 3
iconst_1
aload 1
ldc "expected (node count)"
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
3: aload 3
iconst_1
aload 2
ldc "graph (node count)"
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
4: new java.lang.StringBuilder
dup
ldc "Graphs do not have the same number of nodes: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " vs. "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
5: StackMap locals: org.graalvm.compiler.debug.DebugContext
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
0 6 1 expected Lorg/graalvm/compiler/nodes/StructuredGraph;
0 6 2 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
1 6 3 debug Lorg/graalvm/compiler/debug/DebugContext;
MethodParameters:
Name Flags
expected
graph
public static void outputGraph(org.graalvm.compiler.nodes.StructuredGraph, java.lang.String);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=12, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "========================= "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
1: new org.graalvm.compiler.phases.schedule.SchedulePhase
dup
aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase.<init>:(Lorg/graalvm/compiler/options/OptionValues;)V
astore 2
start local 2 2: aload 2
aload 0
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
3: aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getLastSchedule:()Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
astore 3
start local 3 4: aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 21
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph java.lang.String org.graalvm.compiler.phases.schedule.SchedulePhase org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
5: aload 7
iload 5
aaload
astore 4
start local 4 6: new java.lang.StringBuilder
dup
ldc "Block "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
7: aload 4
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
if_acmpne 9
8: ldc "* "
invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
9: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph java.lang.String org.graalvm.compiler.phases.schedule.SchedulePhase org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
ldc "-> "
invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
10: aload 4
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block[]
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 14
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph java.lang.String org.graalvm.compiler.phases.schedule.SchedulePhase org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
11: aload 11
iload 9
aaload
astore 8
start local 8 12: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
end local 8 13: iinc 9 1
StackMap locals:
StackMap stack:
14: iload 9
iload 10
if_icmplt 11
15: invokestatic org.graalvm.compiler.debug.TTY.println:()V
16: aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getBlockToNodesMap:()Lorg/graalvm/compiler/core/common/cfg/BlockMap;
aload 4
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 19
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph java.lang.String org.graalvm.compiler.phases.schedule.SchedulePhase org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
StackMap stack:
17: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 8
start local 8 18: aload 8
invokestatic org.graalvm.compiler.core.test.TypeSystemTest.outputNode:(Lorg/graalvm/compiler/graph/Node;)V
end local 8 19: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
end local 4 20: iinc 5 1
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph java.lang.String org.graalvm.compiler.phases.schedule.SchedulePhase org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
21: iload 5
iload 6
if_icmplt 5
22: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 23 1 message Ljava/lang/String;
2 23 2 schedulePhase Lorg/graalvm/compiler/phases/schedule/SchedulePhase;
4 23 3 schedule Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
6 20 4 block Lorg/graalvm/compiler/nodes/cfg/Block;
12 13 8 succ Lorg/graalvm/compiler/nodes/cfg/Block;
18 19 8 node Lorg/graalvm/compiler/graph/Node;
MethodParameters:
Name Flags
graph
message
private static void outputNode(org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/graph/Node;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " (usage count: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.graalvm.compiler.graph.Node.getUsageCount:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") (inputs:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
1: aload 0
invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 2
goto 4
StackMap locals: org.graalvm.compiler.graph.Node top java.util.Iterator
StackMap stack:
2: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 1
start local 1 3: new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getstatic org.graalvm.compiler.nodeinfo.Verbosity.Id:Lorg/graalvm/compiler/nodeinfo/Verbosity;
invokevirtual org.graalvm.compiler.graph.Node.toString:(Lorg/graalvm/compiler/nodeinfo/Verbosity;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
end local 1 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: ldc ")"
invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
6: aload 0
instanceof org.graalvm.compiler.nodes.AbstractMergeNode
ifeq 11
7: aload 0
checkcast org.graalvm.compiler.nodes.AbstractMergeNode
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.phis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 2
goto 10
StackMap locals:
StackMap stack:
8: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.PhiNode
astore 1
start local 1 9: aload 1
invokestatic org.graalvm.compiler.core.test.TypeSystemTest.outputNode:(Lorg/graalvm/compiler/graph/Node;)V
end local 1 10: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
11: StackMap locals: org.graalvm.compiler.graph.Node
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 node Lorg/graalvm/compiler/graph/Node;
3 4 1 input Lorg/graalvm/compiler/graph/Node;
9 10 1 phi Lorg/graalvm/compiler/nodes/PhiNode;
MethodParameters:
Name Flags
node
private <T extends org.graalvm.compiler.graph.Node> void testHelper(java.lang.String, java.lang.Class<T>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
2: aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 3
aload 0
invokevirtual org.graalvm.compiler.core.test.TypeSystemTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
3: aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 4
start local 4 4: aload 4
iconst_1
aload 3
new java.lang.StringBuilder
dup
ldc "Graph "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
5: new java.lang.StringBuilder
dup
ldc "shouldn't have nodes of type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
aload 2
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;
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Ljava/lang/String;Z)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/core/test/TypeSystemTest;
0 7 1 snippet Ljava/lang/String;
0 7 2 clazz Ljava/lang/Class<TT;>;
1 7 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
4 7 4 debug Lorg/graalvm/compiler/debug/DebugContext;
Signature: <T:Lorg/graalvm/compiler/graph/Node;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)V
MethodParameters:
Name Flags
snippet
clazz
}
SourceFile: "TypeSystemTest.java"
InnerClasses:
public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph
public ScheduleResult = org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult of org.graalvm.compiler.nodes.StructuredGraph