public class org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest 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.hotspot.test.JVMCIVersionCheckTest
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 // org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest this
0: .line 40
aload 0 /* this */
invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.<init>:()V
return
end local 0 // org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/JVMCIVersionCheckTest;
public void test01();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=25, args_size=1
start local 0 // org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest this
0: .line 44
invokestatic java.lang.System.getProperties:()Ljava/util/Properties;
astore 1 /* sprops */
start local 1 // java.util.Properties sprops
1: .line 45
new java.util.HashMap
dup
aload 1 /* sprops */
invokevirtual java.util.Properties.size:()I
invokespecial java.util.HashMap.<init>:(I)V
astore 2 /* props */
start local 2 // java.util.Map props
2: .line 46
aload 1 /* sprops */
invokevirtual java.util.Properties.stringPropertyNames:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map top java.util.Iterator
StackMap stack:
3: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3 /* name */
start local 3 // java.lang.String name
4: .line 47
aload 2 /* props */
aload 3 /* name */
aload 1 /* sprops */
aload 3 /* name */
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 // java.lang.String name
5: .line 46
StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: .line 50
ldc "test.seed"
invokestatic java.lang.System.nanoTime:()J
invokestatic java.lang.Long.getLong:(Ljava/lang/String;J)Ljava/lang/Long;
invokevirtual java.lang.Long.longValue:()J
lstore 3 /* seed */
start local 3 // long seed
7: .line 51
new java.util.Random
dup
lload 3 /* seed */
invokespecial java.util.Random.<init>:(J)V
astore 5 /* random */
start local 5 // java.util.Random random
8: .line 53
iconst_0
istore 6 /* i */
start local 6 // int i
9: goto 43
10: .line 54
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int
StackMap stack:
iload 6 /* i */
istore 7 /* minMajor */
start local 7 // int minMajor
11: .line 55
bipush 50
iload 6 /* i */
isub
istore 8 /* minMinor */
start local 8 // int minMinor
12: .line 56
iconst_0
istore 9 /* j */
start local 9 // int j
13: goto 41
14: .line 57
StackMap locals: int int int
StackMap stack:
iload 9 /* j */
istore 10 /* major */
start local 10 // int major
15: .line 58
bipush 50
iload 9 /* j */
isub
istore 11 /* minor */
start local 11 // int minor
16: .line 60
iconst_0
istore 12 /* k */
start local 12 // int k
17: goto 39
18: .line 61
StackMap locals: int int int
StackMap stack:
aload 5 /* random */
bipush 100
invokevirtual java.util.Random.nextInt:(I)I
istore 13 /* minBuild */
start local 13 // int minBuild
19: .line 62
aload 5 /* random */
bipush 100
invokevirtual java.util.Random.nextInt:(I)I
istore 14 /* build */
start local 14 // int build
20: .line 64
iconst_2
anewarray org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version
dup
iconst_0
new org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2
dup
iload 10 /* major */
iload 11 /* minor */
invokespecial org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2.<init>:(II)V
aastore
dup
iconst_1
new org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version3
dup
iload 10 /* major */
iload 11 /* minor */
iload 14 /* build */
invokespecial org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version3.<init>:(III)V
aastore
dup
astore 18
arraylength
istore 17
iconst_0
istore 16
goto 37
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int int int int int int int int int top int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[]
StackMap stack:
21: aload 18
iload 16
aaload
astore 15 /* version */
start local 15 // org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version version
22: .line 65
iconst_2
anewarray org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version
dup
iconst_0
new org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2
dup
iload 7 /* minMajor */
iload 8 /* minMinor */
invokespecial org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2.<init>:(II)V
aastore
dup
iconst_1
new org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version3
dup
iload 7 /* minMajor */
iload 8 /* minMinor */
iload 13 /* minBuild */
invokespecial org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version3.<init>:(III)V
aastore
dup
astore 22
arraylength
istore 21
iconst_0
istore 20
goto 35
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int int int int int int int int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[] top int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[]
StackMap stack:
23: aload 22
iload 20
aaload
astore 19 /* minVersion */
start local 19 // org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version minVersion
24: .line 66
ldc "prefix-jvmci-%s-suffix"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 15 /* version */
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 23 /* javaVmVersion */
start local 23 // java.lang.String javaVmVersion
25: .line 67
aload 15 /* version */
aload 19 /* minVersion */
invokeinterface org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version.isLessThan:(Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version;)Z
ifne 30
26: .line 69
aload 2 /* props */
aload 19 /* minVersion */
ldc "1.8"
aload 23 /* javaVmVersion */
iconst_0
invokestatic org.graalvm.compiler.hotspot.JVMCIVersionCheck.check:(Ljava/util/Map;Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version;Ljava/lang/String;Ljava/lang/String;Z)V
27: .line 70
goto 34
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int int int int int int int int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[] org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[] java.lang.String
StackMap stack: java.lang.InternalError
28: astore 24 /* e */
start local 24 // java.lang.InternalError e
29: .line 71
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Failed "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc Lorg/graalvm/compiler/hotspot/test/JVMCIVersionCheckTest;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " with -Dtest.seed="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 3 /* seed */
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 24 /* e */
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 24 // java.lang.InternalError e
30: .line 75
StackMap locals:
StackMap stack:
aload 2 /* props */
aload 19 /* minVersion */
ldc "1.8"
aload 23 /* javaVmVersion */
iconst_0
invokestatic org.graalvm.compiler.hotspot.JVMCIVersionCheck.check:(Ljava/util/Map;Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version;Ljava/lang/String;Ljava/lang/String;Z)V
31: .line 76
new java.lang.StringBuilder
dup
ldc "expected to fail checking "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 23 /* javaVmVersion */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " against "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 19 /* minVersion */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " (-Dtest.seed="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 3 /* seed */
invokevirtual java.lang.StringBuilder.append:(J)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.junit.Assert.fail:(Ljava/lang/String;)V
32: .line 77
goto 34
StackMap locals:
StackMap stack: java.lang.InternalError
33: pop
end local 23 // java.lang.String javaVmVersion
end local 19 // org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version minVersion
34: .line 65
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int int int int int int int int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[] top int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[]
StackMap stack:
iinc 20 1
StackMap locals:
StackMap stack:
35: iload 20
iload 21
if_icmplt 23
end local 15 // org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version version
36: .line 64
iinc 16 1
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int int int int int int int int int top int int org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version[]
StackMap stack:
37: iload 16
iload 17
if_icmplt 21
end local 14 // int build
end local 13 // int minBuild
38: .line 60
iinc 12 /* k */ 1
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random int int int int int int int
StackMap stack:
39: iload 12 /* k */
bipush 30
if_icmplt 18
end local 12 // int k
end local 11 // int minor
end local 10 // int major
40: .line 56
iinc 9 /* j */ 1
StackMap locals:
StackMap stack:
41: iload 9 /* j */
bipush 50
if_icmplt 14
end local 9 // int j
end local 8 // int minMinor
end local 7 // int minMajor
42: .line 53
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
43: iload 6 /* i */
bipush 50
if_icmplt 10
end local 6 // int i
44: .line 88
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "."
aastore
dup
iconst_1
ldc "-b"
aastore
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 57
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random top int int java.lang.String[]
StackMap stack:
45: aload 9
iload 7
aaload
astore 6 /* sep */
start local 6 // java.lang.String sep
46: .line 89
iconst_2
anewarray java.lang.String
dup
iconst_0
new java.lang.StringBuilder
dup
ldc "0"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6 /* sep */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc 9223372036854775807
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aastore
dup
iconst_1
new java.lang.StringBuilder
dup
ldc 9223372036854775807
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6 /* sep */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iconst_0
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aastore
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 55
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random java.lang.String int int java.lang.String[] top int int java.lang.String[]
StackMap stack:
47: aload 13
iload 11
aaload
astore 10 /* version */
start local 10 // java.lang.String version
48: .line 90
ldc "prefix-jvmci-%s-suffix"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 10 /* version */
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 14 /* javaVmVersion */
start local 14 // java.lang.String javaVmVersion
49: .line 92
new org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2
dup
iconst_0
bipush 59
invokespecial org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2.<init>:(II)V
astore 15 /* minVersion */
start local 15 // org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2 minVersion
50: .line 93
aload 2 /* props */
aload 15 /* minVersion */
ldc "1.8"
aload 14 /* javaVmVersion */
iconst_0
invokestatic org.graalvm.compiler.hotspot.JVMCIVersionCheck.check:(Ljava/util/Map;Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version;Ljava/lang/String;Ljava/lang/String;Z)V
51: .line 94
new java.lang.StringBuilder
dup
ldc "expected to fail checking "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 14 /* javaVmVersion */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " against "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 15 /* minVersion */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
end local 15 // org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2 minVersion
52: .line 95
goto 54
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random java.lang.String int int java.lang.String[] java.lang.String int int java.lang.String[] java.lang.String
StackMap stack: java.lang.InternalError
53: pop
end local 14 // java.lang.String javaVmVersion
end local 10 // java.lang.String version
54: .line 89
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random java.lang.String int int java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
55: iload 11
iload 12
if_icmplt 47
end local 6 // java.lang.String sep
56: .line 88
iinc 7 1
StackMap locals: org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest java.util.Properties java.util.Map long java.util.Random top int int java.lang.String[]
StackMap stack:
57: iload 7
iload 8
if_icmplt 45
58: .line 100
return
end local 5 // java.util.Random random
end local 3 // long seed
end local 2 // java.util.Map props
end local 1 // java.util.Properties sprops
end local 0 // org.graalvm.compiler.hotspot.test.JVMCIVersionCheckTest this
LocalVariableTable:
Start End Slot Name Signature
0 59 0 this Lorg/graalvm/compiler/hotspot/test/JVMCIVersionCheckTest;
1 59 1 sprops Ljava/util/Properties;
2 59 2 props Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
4 5 3 name Ljava/lang/String;
7 59 3 seed J
8 59 5 random Ljava/util/Random;
9 44 6 i I
11 42 7 minMajor I
12 42 8 minMinor I
13 42 9 j I
15 40 10 major I
16 40 11 minor I
17 40 12 k I
19 38 13 minBuild I
20 38 14 build I
22 36 15 version Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version;
24 34 19 minVersion Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version;
25 34 23 javaVmVersion Ljava/lang/String;
29 30 24 e Ljava/lang/InternalError;
46 56 6 sep Ljava/lang/String;
48 54 10 version Ljava/lang/String;
49 54 14 javaVmVersion Ljava/lang/String;
50 52 15 minVersion Lorg/graalvm/compiler/hotspot/JVMCIVersionCheck$Version2;
Exception table:
from to target type
26 27 28 Class java.lang.InternalError
30 32 33 Class java.lang.InternalError
49 52 53 Class java.lang.InternalError
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "JVMCIVersionCheckTest.java"
InnerClasses:
public abstract Version = org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version of org.graalvm.compiler.hotspot.JVMCIVersionCheck
public Version2 = org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version2 of org.graalvm.compiler.hotspot.JVMCIVersionCheck
public Version3 = org.graalvm.compiler.hotspot.JVMCIVersionCheck$Version3 of org.graalvm.compiler.hotspot.JVMCIVersionCheck