public class org.graalvm.compiler.core.test.ConditionalNodeTest 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.ConditionalNodeTest
super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
private static int sink0;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int sink1;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
int a;
descriptor: I
flags: (0x0000)
org.graalvm.compiler.nodes.CallTargetNode$InvokeKind b;
descriptor: Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
flags: (0x0000)
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/ConditionalNodeTest;
public void test0();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
RuntimeInvisibleAnnotations:
Test()
public static int conditionalTest0(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
iconst_1
if_icmpne 4
1: iconst_m1
istore 1
start local 1 2: iconst_0
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
3: goto 6
end local 1 4: StackMap locals:
StackMap stack:
bipush 6
istore 1
start local 1 5: iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
6: StackMap locals: int
StackMap stack:
iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink0:I
7: iload 1
bipush 6
invokestatic java.lang.Math.max:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 a I
2 4 1 value I
5 8 1 value I
MethodParameters:
Name Flags
a
public void test1();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
RuntimeInvisibleAnnotations:
Test()
public static int conditionalTest1(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
iconst_1
if_icmpne 4
1: iconst_m1
istore 1
start local 1 2: iconst_0
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
3: goto 6
end local 1 4: StackMap locals:
StackMap stack:
bipush 6
istore 1
start local 1 5: iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
6: StackMap locals: int
StackMap stack:
iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink0:I
7: bipush 6
iload 1
invokestatic java.lang.Math.max:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 a I
2 4 1 value I
5 8 1 value I
MethodParameters:
Name Flags
a
public void test2();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
RuntimeInvisibleAnnotations:
Test()
public static int conditionalTest2(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
iconst_1
if_icmpne 4
1: iconst_m1
istore 1
start local 1 2: iconst_0
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
3: goto 6
end local 1 4: StackMap locals:
StackMap stack:
bipush 6
istore 1
start local 1 5: iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
6: StackMap locals: int
StackMap stack:
iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink0:I
7: iload 1
iconst_m1
invokestatic java.lang.Math.min:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 a I
2 4 1 value I
5 8 1 value I
MethodParameters:
Name Flags
a
public void test3();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
RuntimeInvisibleAnnotations:
Test()
public static int conditionalTest3(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
iconst_1
if_icmpne 4
1: iconst_m1
istore 1
start local 1 2: iconst_0
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
3: goto 6
end local 1 4: StackMap locals:
StackMap stack:
bipush 6
istore 1
start local 1 5: iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink1:I
6: StackMap locals: int
StackMap stack:
iconst_1
putstatic org.graalvm.compiler.core.test.ConditionalNodeTest.sink0:I
7: iconst_m1
iload 1
invokestatic java.lang.Math.min:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 a I
2 4 1 value I
5 8 1 value I
MethodParameters:
Name Flags
a
public void test4();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
RuntimeInvisibleAnnotations:
Test()
public static int conditionalTest4(org.graalvm.compiler.core.test.ConditionalNodeTest, int);
descriptor: (Lorg/graalvm/compiler/core/test/ConditionalNodeTest;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
if_icmpne 3
1: aload 0
getstatic org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.Virtual:Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
putfield org.graalvm.compiler.core.test.ConditionalNodeTest.b:Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.Special:Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
putfield org.graalvm.compiler.core.test.ConditionalNodeTest.b:Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
4: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.graalvm.compiler.core.test.ConditionalNodeTest.a:I
5: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 node Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
0 6 1 a I
MethodParameters:
Name Flags
node
a
static int lastIndexOf(char[], int, int, char[], int, int, int);
descriptor: ([CII[CIII)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=15, 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
iload 5
isub
istore 7
start local 7 1: iload 6
ifge 3
2: iconst_m1
ireturn
3: StackMap locals: int
StackMap stack:
iload 6
iload 7
if_icmple 5
4: iload 7
istore 6
5: StackMap locals:
StackMap stack:
iload 5
ifne 7
6: iload 6
ireturn
7: StackMap locals:
StackMap stack:
iload 4
iload 5
iadd
iconst_1
isub
istore 8
start local 8 8: aload 3
iload 8
caload
istore 9
start local 9 9: iload 1
iload 5
iadd
iconst_1
isub
istore 10
start local 10 10: iload 10
iload 6
iadd
istore 11
start local 11 11: goto 13
12: StackMap locals: char[] int int char[] int int int int int int int int
StackMap stack:
iinc 11 -1
13: StackMap locals:
StackMap stack:
iload 11
iload 10
if_icmplt 14
aload 0
iload 11
caload
iload 9
if_icmpne 12
14: StackMap locals:
StackMap stack:
iload 11
iload 10
if_icmpge 16
15: iconst_m1
ireturn
16: StackMap locals:
StackMap stack:
iload 11
iconst_1
isub
istore 12
start local 12 17: iload 12
iload 5
iconst_1
isub
isub
istore 13
start local 13 18: iload 8
iconst_1
isub
istore 14
start local 14 19: goto 23
20: StackMap locals: int int int
StackMap stack:
aload 0
iload 12
iinc 12 -1
caload
aload 3
iload 14
iinc 14 -1
caload
if_icmpeq 23
21: iinc 11 -1
22: goto 25
23: StackMap locals:
StackMap stack:
iload 12
iload 13
if_icmpgt 20
24: iload 13
iload 1
isub
iconst_1
iadd
ireturn
end local 14 end local 13 end local 12 25: StackMap locals:
StackMap stack:
goto 13
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 26 0 source [C
0 26 1 sourceOffset I
0 26 2 sourceCount I
0 26 3 target [C
0 26 4 targetOffset I
0 26 5 targetCount I
0 26 6 fromIndex I
1 26 7 rightIndex I
8 26 8 strLastIndex I
9 26 9 strLastChar C
10 26 10 min I
11 26 11 i I
17 25 12 j I
18 25 13 start I
19 25 14 k I
MethodParameters:
Name Flags
source
sourceOffset
sourceCount
target
targetOffset
targetCount
fromIndex
public static java.lang.String simple(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.toCharArray:()[C
astore 1
start local 1 1: ldc "."
invokevirtual java.lang.String.toCharArray:()[C
astore 2
start local 2 2: aload 1
iconst_0
aload 1
arraylength
3: aload 2
iconst_0
aload 2
arraylength
aload 1
arraylength
4: invokestatic org.graalvm.compiler.core.test.ConditionalNodeTest.lastIndexOf:([CII[CIII)I
istore 3
start local 3 5: iload 3
ifge 7
6: aconst_null
areturn
7: StackMap locals: char[] char[] int
StackMap stack:
invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
8: aload 0
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 simpleName Ljava/lang/String;
1 9 1 value [C
2 9 2 target [C
5 9 3 lastDotIndex I
MethodParameters:
Name Flags
simpleName
protected org.graalvm.compiler.phases.OptimisticOptimizations getOptimisticOptimizations();
descriptor: ()Lorg/graalvm/compiler/phases/OptimisticOptimizations;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.phases.OptimisticOptimizations.NONE:Lorg/graalvm/compiler/phases/OptimisticOptimizations;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
public void testConditionalExit();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalNodeTest;
RuntimeInvisibleAnnotations:
Test()
}
SourceFile: "ConditionalNodeTest.java"
InnerClasses:
public final InvokeKind = org.graalvm.compiler.nodes.CallTargetNode$InvokeKind of org.graalvm.compiler.nodes.CallTargetNode