public class org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest extends org.graalvm.compiler.lir.jtt.LIRTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest
super_class: org.graalvm.compiler.lir.jtt.LIRTest
{
private static final java.lang.String SUBPROCESS_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean VERBOSE;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static org.graalvm.compiler.core.common.LIRKind intKind;
descriptor: Lorg/graalvm/compiler/core/common/LIRKind;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final org.graalvm.compiler.lir.jtt.LIRTestSpecification constCounterIncrement;
descriptor: Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new java.lang.StringBuilder
dup
ldc Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".subprocess.call"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.SUBPROCESS_PROPERTY:Ljava/lang/String;
1: new java.lang.StringBuilder
dup
ldc Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".verbose"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
putstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.VERBOSE:Z
2: new org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest$1
dup
invokespecial org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest$1.<init>:()V
putstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.constCounterIncrement:Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
3: 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.lir.jtt.LIRTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
public void checkAMD64();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc "skipping AMD64 specific test"
aload 0
invokevirtual org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.getTarget:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
instanceof jdk.vm.ci.amd64.AMD64
invokestatic org.junit.Assume.assumeTrue:(Ljava/lang/String;Z)V
1: ldc "skipping HotSpot specific test"
aload 0
invokevirtual org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.getBackend:()Lorg/graalvm/compiler/core/target/Backend;
instanceof org.graalvm.compiler.hotspot.HotSpotBackend
invokestatic org.junit.Assume.assumeTrue:(Ljava/lang/String;Z)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public void setUp();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.getBackend:()Lorg/graalvm/compiler/core/target/Backend;
invokevirtual org.graalvm.compiler.core.target.Backend.getTarget:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.fromJavaKind:(Ljdk/vm/ci/code/Architecture;Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/LIRKind;
putstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.intKind:Lorg/graalvm/compiler/core/common/LIRKind;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public static void counterInc(org.graalvm.compiler.lir.jtt.LIRTestSpecification);
descriptor: (Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 spec Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.jtt.LIRTest$LIRIntrinsic()
MethodParameters:
Name Flags
spec
public static void test(long);
descriptor: (J)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: lconst_0
lstore 2
start local 2 1: goto 5
2: StackMap locals: long
StackMap stack:
getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.constCounterIncrement:Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;
invokestatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.counterInc:(Lorg/graalvm/compiler/lir/jtt/LIRTestSpecification;)V
3: lload 2
invokestatic org.graalvm.compiler.api.directives.GraalDirectives.blackhole:(J)V
4: lload 2
lconst_1
ladd
lstore 2
StackMap locals:
StackMap stack:
5: lload 2
lload 0
lcmp
iflt 2
end local 2 6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 count J
1 6 2 i J
MethodParameters:
Name Flags
count
public void incrementCounter();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=1
start local 0 0: ldc "not a subprocess -> skip"
getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.SUBPROCESS_PROPERTY:Ljava/lang/String;
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
invokestatic org.junit.Assume.assumeTrue:(Ljava/lang/String;Z)V
1: iconst_1
putstatic org.graalvm.compiler.hotspot.debug.BenchmarkCounters.enabled:Z
2: iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc 8589934588
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
astore 1
start local 1 3: aload 0
ldc "test"
invokevirtual org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.getResolvedJavaMethod:(Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 2
start local 2 4: aload 0
invokestatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.getInitialOptions:()Lorg/graalvm/compiler/options/OptionValues;
aload 2
getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.EMPTY:Ljava/util/Set;
aconst_null
aload 1
invokevirtual org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.executeActualCheckDeopt:(Lorg/graalvm/compiler/options/OptionValues;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/util/Set;Ljava/lang/Object;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
3 6 1 args [Ljava/lang/Object;
4 6 2 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
RuntimeVisibleAnnotations:
org.junit.Test()
public void spawnSubprocess();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=1
start local 0 0: ldc "subprocess already spawned -> skip"
getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.SUBPROCESS_PROPERTY:Ljava/lang/String;
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
invokestatic org.junit.Assume.assumeFalse:(Ljava/lang/String;Z)V
1: invokestatic org.graalvm.compiler.test.SubprocessUtil.getVMCommandLine:()Ljava/util/List;
invokestatic org.graalvm.compiler.test.SubprocessUtil.withoutDebuggerArguments:(Ljava/util/List;)Ljava/util/List;
astore 1
start local 1 2: aload 1
ldc "-XX:JVMCICounterSize=1"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: aload 1
new java.lang.StringBuilder
dup
ldc "-Dgraal."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic org.graalvm.compiler.hotspot.debug.BenchmarkCounters$Options.AbortOnBenchmarkCounterOverflow:Lorg/graalvm/compiler/options/OptionKey;
invokevirtual org.graalvm.compiler.options.OptionKey.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "=true"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 1
ldc ";:PACKAGE_OPENING_OPTIONS_IN_TEMPORARY_ARGUMENTS_FILE:;"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 1
new java.lang.StringBuilder
dup
ldc "-D"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.SUBPROCESS_PROPERTY:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "=true"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 1
ldc "-dsa"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: aload 1
ldc "-da"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 9: aload 2
ldc "com.oracle.mxtool.junit.MxJUnitWrapper"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: aload 2
ldc Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: aload 1
aload 2
invokestatic org.graalvm.compiler.test.SubprocessUtil.java:(Ljava/util/List;Ljava/util/List;)Lorg/graalvm/compiler/test/SubprocessUtil$Subprocess;
astore 3
start local 3 12: getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.VERBOSE:Z
ifeq 14
13: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 3
invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
14: StackMap locals: java.util.List java.util.List org.graalvm.compiler.test.SubprocessUtil$Subprocess
StackMap stack:
ldc "Expected non-zero exit status"
lconst_0
aload 3
getfield org.graalvm.compiler.test.SubprocessUtil$Subprocess.exitCode:I
i2l
invokestatic org.junit.Assert.assertNotEquals:(Ljava/lang/String;JJ)V
15: aload 3
getfield org.graalvm.compiler.test.SubprocessUtil$Subprocess.output:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
start local 4 16: iconst_0
istore 5
start local 5 17: goto 27
18: StackMap locals: java.util.Iterator int
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 19: aload 6
ldc "Problematic frame:"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 27
20: aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
21: goto 42
22: StackMap locals: java.lang.String
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
23: aload 6
new java.lang.StringBuilder
dup
ldc Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".test"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 26
24: iconst_1
istore 5
25: goto 42
26: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Unexpected stack trace: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
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
end local 6 27: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
28: goto 42
29: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 30: aload 6
ldc "An error report file with more information is saved as:"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 42
31: aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
32: goto 43
33: StackMap locals: java.lang.String
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
34: ldc "^# (.*hs_err_pid.*log)$"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 7
start local 7 35: aload 7
aload 6
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 8
start local 8 36: aload 8
invokevirtual java.util.regex.Matcher.matches:()Z
ifeq 42
37: new java.io.File
dup
aload 8
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 9
start local 9 38: aload 9
invokevirtual java.io.File.exists:()Z
ifeq 42
39: getstatic org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest.VERBOSE:Z
ifeq 41
40: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Deleting error report file:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
41: StackMap locals: java.util.regex.Pattern java.util.regex.Matcher java.io.File
StackMap stack:
aload 9
invokevirtual java.io.File.delete:()Z
pop
end local 9 end local 8 end local 7 end local 6 42: StackMap locals: org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest java.util.List java.util.List org.graalvm.compiler.test.SubprocessUtil$Subprocess java.util.Iterator int
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 29
43: StackMap locals:
StackMap stack:
ldc "Could not find method in output:%n%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
iload 5
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
44: 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 45 0 this Lorg/graalvm/compiler/hotspot/lir/test/BenchmarkCounterOverflowTest;
2 45 1 vmArgs Ljava/util/List<Ljava/lang/String;>;
9 45 2 mainClassAndArgs Ljava/util/List<Ljava/lang/String;>;
12 45 3 proc Lorg/graalvm/compiler/test/SubprocessUtil$Subprocess;
16 45 4 it Ljava/util/Iterator<Ljava/lang/String;>;
17 45 5 foundProblematicFrame Z
19 27 6 line Ljava/lang/String;
30 42 6 line Ljava/lang/String;
35 42 7 pattern Ljava/util/regex/Pattern;
36 42 8 matcher Ljava/util/regex/Matcher;
38 42 9 hserrFile Ljava/io/File;
Exceptions:
throws java.io.IOException, java.lang.InterruptedException
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "BenchmarkCounterOverflowTest.java"
NestMembers:
org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest$1
InnerClasses:
public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
public Options = org.graalvm.compiler.hotspot.debug.BenchmarkCounters$Options of org.graalvm.compiler.hotspot.debug.BenchmarkCounters
org.graalvm.compiler.hotspot.lir.test.BenchmarkCounterOverflowTest$1
public abstract LIRIntrinsic = org.graalvm.compiler.lir.jtt.LIRTest$LIRIntrinsic of org.graalvm.compiler.lir.jtt.LIRTest
public Subprocess = org.graalvm.compiler.test.SubprocessUtil$Subprocess of org.graalvm.compiler.test.SubprocessUtil