public class org.graalvm.compiler.truffle.test.PerformanceWarningTest extends org.graalvm.compiler.truffle.test.TruffleCompilerImplTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.PerformanceWarningTest
super_class: org.graalvm.compiler.truffle.test.TruffleCompilerImplTest
{
private static final java.lang.String[] EMPTY_PERF_WARNINGS;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject1 object1;
descriptor: Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$VirtualObject1;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject2 object2;
descriptor: Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$VirtualObject2;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.truffle.test.PerformanceWarningTest$SubClass object3;
descriptor: Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$SubClass;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9a object4;
descriptor: Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$L9a;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9b object5;
descriptor: Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$L9b;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.Boolean inFirstTier;
descriptor: Ljava/lang/Boolean;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.io.ByteArrayOutputStream outContent;
descriptor: Ljava/io/ByteArrayOutputStream;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: iconst_0
anewarray java.lang.String
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.EMPTY_PERF_WARNINGS:[Ljava/lang/String;
1: new org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject1
dup
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject1.<init>:()V
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.object1:Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$VirtualObject1;
2: new org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject2
dup
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject2.<init>:()V
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.object2:Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$VirtualObject2;
3: new org.graalvm.compiler.truffle.test.PerformanceWarningTest$SubClass
dup
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$SubClass.<init>:()V
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.object3:Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$SubClass;
4: new org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9a
dup
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9a.<init>:()V
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.object4:Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$L9a;
5: new org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9b
dup
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9b.<init>:()V
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.object5:Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$L9b;
6: invokestatic org.graalvm.compiler.truffle.runtime.GraalCompilerDirectives.inFirstTier:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
putstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.inFirstTier:Ljava/lang/Boolean;
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.truffle.test.TruffleCompilerImplTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
public void setUp();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
putfield org.graalvm.compiler.truffle.test.PerformanceWarningTest.outContent:Ljava/io/ByteArrayOutputStream;
1: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield org.graalvm.compiler.truffle.test.PerformanceWarningTest.outContent:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.logHandler:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowAllAccess:(Z)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Context$Builder;
ldc "engine.TracePerformanceWarnings"
ldc "all"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
2: ldc "engine.TreatPerformanceWarningsAsErrors"
ldc "all"
3: invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
4: ldc "engine.CompilationFailureAction"
ldc "ExitVM"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
5: invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.setupContext:(Lorg/graalvm/polyglot/Context;)V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public void testVirtualCall();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeVirtualCall
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeVirtualCall.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_1
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "perf warn"
aastore
dup
iconst_1
ldc "execute"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDeepStack();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepStack
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepStack.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_1
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "perf warn"
aastore
dup
iconst_1
ldc "foo"
aastore
dup
iconst_2
ldc "bar"
aastore
dup
iconst_3
ldc "execute"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testInstanceOf();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInstanceOf
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInstanceOf.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_0
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "perf info"
aastore
dup
iconst_1
ldc "foo"
aastore
dup
iconst_2
ldc "bar"
aastore
dup
iconst_3
ldc "execute"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testCombined();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeCombined
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeCombined.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_1
iconst_5
anewarray java.lang.String
dup
iconst_0
ldc "perf info"
aastore
dup
iconst_1
ldc "perf warn"
aastore
dup
iconst_2
ldc "foo"
aastore
dup
iconst_3
ldc "bar"
aastore
dup
iconst_4
ldc "execute"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testBoundaryCall();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryCall
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryCall.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_0
getstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.EMPTY_PERF_WARNINGS:[Ljava/lang/String;
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testBoundaryVirtualCall();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryVirtualCall
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryVirtualCall.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_0
getstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.EMPTY_PERF_WARNINGS:[Ljava/lang/String;
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testInterfaceCast();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceCast
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceCast.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_0
iconst_5
anewarray java.lang.String
dup
iconst_0
ldc "perf info"
aastore
dup
iconst_1
ldc Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$Interface;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_2
ldc "foo"
aastore
dup
iconst_3
ldc "bar"
aastore
dup
iconst_4
ldc "execute"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSingleImplementor();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: invokestatic org.graalvm.compiler.serviceprovider.GraalServices.hasLookupReferencedType:()Z
ifeq 2
1: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceSingleImplementorCall
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceSingleImplementorCall.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_0
getstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.EMPTY_PERF_WARNINGS:[Ljava/lang/String;
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSlowClassCast();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepClass
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepClass.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_0
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "perf info"
aastore
dup
iconst_1
ldc Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest$L8;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_2
ldc "foo"
aastore
dup
iconst_3
ldc "execute"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
private void testHelper(com.oracle.truffle.api.nodes.RootNode, boolean, java.lang.String[]);
descriptor: (Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=8, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: invokestatic org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.getRuntime:()Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
astore 5
start local 5 2: aload 5
aload 1
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 6
start local 6 3: new org.graalvm.compiler.debug.DebugContext$Builder
dup
aload 5
ldc Lorg/graalvm/compiler/options/OptionValues;
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.getGraalOptions:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.graalvm.compiler.options.OptionValues
invokespecial org.graalvm.compiler.debug.DebugContext$Builder.<init>:(Lorg/graalvm/compiler/options/OptionValues;)V
invokevirtual org.graalvm.compiler.debug.DebugContext$Builder.build:()Lorg/graalvm/compiler/debug/DebugContext;
astore 7
start local 7 4: aconst_null
astore 8
aconst_null
astore 9
5: aload 7
invokevirtual org.graalvm.compiler.debug.DebugContext.disableIntercept:()Lorg/graalvm/compiler/debug/DebugCloseable;
astore 10
start local 10 6: aload 7
ldc "PerformanceWarningTest"
invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 11
start local 11 7: aload 6
astore 12
start local 12 8: aload 0
aload 6
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.getTruffleCompiler:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerImpl;
aload 12
invokevirtual org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.createCompilationIdentifier:(Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;)Lorg/graalvm/compiler/truffle/compiler/TruffleCompilationIdentifier;
astore 13
start local 13 9: aload 0
aload 6
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.getTruffleCompiler:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerImpl;
aload 12
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValues:()Lorg/graalvm/options/OptionValues;
aload 7
aload 12
new org.graalvm.compiler.truffle.runtime.TruffleInlining
dup
invokespecial org.graalvm.compiler.truffle.runtime.TruffleInlining.<init>:()V
aload 13
aconst_null
aconst_null
invokevirtual org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compileAST:(Lorg/graalvm/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;Lorg/graalvm/compiler/truffle/common/TruffleMetaAccessProvider;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerImpl$CancellableTruffleCompilationTask;Lorg/graalvm/compiler/truffle/common/TruffleCompilerListener;)V
10: aload 12
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.assertTrue:(Z)V
end local 13 end local 12 11: aload 11
ifnull 14
aload 11
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
goto 14
StackMap locals: org.graalvm.compiler.truffle.test.PerformanceWarningTest com.oracle.truffle.api.nodes.RootNode int java.lang.String[] int org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime org.graalvm.compiler.truffle.runtime.OptimizedCallTarget org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable org.graalvm.compiler.debug.DebugContext$Scope
StackMap stack: java.lang.Throwable
12: astore 8
aload 11
ifnull 13
aload 11
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 11 StackMap locals:
StackMap stack:
13: aload 8
athrow
StackMap locals:
StackMap stack:
14: aload 10
ifnull 28
aload 10
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
goto 28
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 9
aload 8
ifnonnull 16
aload 9
astore 8
goto 17
StackMap locals:
StackMap stack:
16: aload 8
aload 9
if_acmpeq 17
aload 8
aload 9
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 10
ifnull 18
aload 10
invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
end local 10 StackMap locals:
StackMap stack:
18: aload 8
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 9
aload 8
ifnonnull 20
aload 9
astore 8
goto 21
StackMap locals:
StackMap stack:
20: aload 8
aload 9
if_acmpeq 21
aload 8
aload 9
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
21: aload 8
athrow
end local 7 end local 6 end local 5 22: StackMap locals: org.graalvm.compiler.truffle.test.PerformanceWarningTest com.oracle.truffle.api.nodes.RootNode int java.lang.String[] int
StackMap stack: java.lang.AssertionError
astore 5
start local 5 23: iconst_1
istore 4
24: iload 2
ifne 28
25: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Unexpected exception caught."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.graalvm.compiler.truffle.test.PerformanceWarningTest.outContent:Ljava/io/ByteArrayOutputStream;
invokevirtual java.io.ByteArrayOutputStream.size:()I
ifle 26
new java.lang.StringBuilder
dup
bipush 10
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.graalvm.compiler.truffle.test.PerformanceWarningTest.outContent:Ljava/io/ByteArrayOutputStream;
invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 27
StackMap locals: org.graalvm.compiler.truffle.test.PerformanceWarningTest com.oracle.truffle.api.nodes.RootNode int java.lang.String[] int java.lang.AssertionError
StackMap stack: new 25 new 25 java.lang.StringBuilder
26: ldc ""
StackMap locals: org.graalvm.compiler.truffle.test.PerformanceWarningTest com.oracle.truffle.api.nodes.RootNode int java.lang.String[] int java.lang.AssertionError
StackMap stack: new 25 new 25 java.lang.StringBuilder java.lang.String
27: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 28: StackMap locals:
StackMap stack:
iload 2
ifeq 30
iload 4
ifne 30
29: ldc "Expected exception not caught."
iconst_0
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
30: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.truffle.test.PerformanceWarningTest.outContent:Ljava/io/ByteArrayOutputStream;
invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
astore 5
start local 5 31: aload 3
getstatic org.graalvm.compiler.truffle.test.PerformanceWarningTest.EMPTY_PERF_WARNINGS:[Ljava/lang/String;
if_acmpne 34
32: ldc ""
aload 5
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
33: goto 39
34: StackMap locals: java.lang.String
StackMap stack:
aload 3
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 38
StackMap locals: org.graalvm.compiler.truffle.test.PerformanceWarningTest com.oracle.truffle.api.nodes.RootNode int java.lang.String[] int java.lang.String top int int java.lang.String[]
StackMap stack:
35: aload 9
iload 7
aaload
astore 6
start local 6 36: ldc "Root node class %s: \"%s\" not found in output \"%s\""
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 6
aastore
dup
iconst_2
aload 5
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 5
aload 6
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
end local 6 37: iinc 7 1
StackMap locals:
StackMap stack:
38: iload 7
iload 8
if_icmplt 35
39: StackMap locals: org.graalvm.compiler.truffle.test.PerformanceWarningTest com.oracle.truffle.api.nodes.RootNode int java.lang.String[] int java.lang.String
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 40 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
0 40 1 rootNode Lcom/oracle/truffle/api/nodes/RootNode;
0 40 2 expectException Z
0 40 3 outputStrings [Ljava/lang/String;
1 40 4 seenException Z
2 22 5 runtime Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
3 22 6 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
4 22 7 debug Lorg/graalvm/compiler/debug/DebugContext;
6 18 10 d Lorg/graalvm/compiler/debug/DebugCloseable;
7 13 11 s Lorg/graalvm/compiler/debug/DebugContext$Scope;
8 11 12 compilable Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
9 11 13 compilationId Lorg/graalvm/compiler/core/common/CompilationIdentifier;
23 28 5 e Ljava/lang/AssertionError;
31 40 5 output Ljava/lang/String;
36 37 6 s Ljava/lang/String;
Exception table:
from to target type
7 11 12 any
6 14 15 any
5 19 19 any
1 22 22 Class java.lang.AssertionError
MethodParameters:
Name Flags
rootNode
expectException
outputStrings
public void failedTrivial();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
new org.graalvm.compiler.truffle.test.PerformanceWarningTest$TrivialCallsInnerNode
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.PerformanceWarningTest$TrivialCallsInnerNode.<init>:(Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;)V
iconst_1
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "perf warn"
aastore
dup
iconst_1
ldc "trivial"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PerformanceWarningTest.testHelper:(Lcom/oracle/truffle/api/nodes/RootNode;Z[Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/PerformanceWarningTest;
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "PerformanceWarningTest.java"
NestMembers:
org.graalvm.compiler.truffle.test.PerformanceWarningTest$Interface org.graalvm.compiler.truffle.test.PerformanceWarningTest$L1 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L2 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L3 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L4 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L5 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L6 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L7 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L8 org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9a org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9b org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryCall org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryVirtualCall org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeCombined org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepClass org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepStack org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInstanceOf org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceCast org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceSingleImplementorCall org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeVirtualCall org.graalvm.compiler.truffle.test.PerformanceWarningTest$SingleImplementedInterface org.graalvm.compiler.truffle.test.PerformanceWarningTest$SingleImplementorClass org.graalvm.compiler.truffle.test.PerformanceWarningTest$SubClass org.graalvm.compiler.truffle.test.PerformanceWarningTest$TestRootNode org.graalvm.compiler.truffle.test.PerformanceWarningTest$TrivialCallsInnerNode org.graalvm.compiler.truffle.test.PerformanceWarningTest$TrivialCallsInnerNode$1 org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject1 org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject2
InnerClasses:
public Builder = org.graalvm.compiler.debug.DebugContext$Builder of org.graalvm.compiler.debug.DebugContext
public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext
private abstract Interface = org.graalvm.compiler.truffle.test.PerformanceWarningTest$Interface of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L1 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L1 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L2 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L2 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L3 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L3 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L4 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L4 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L5 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L5 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L6 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L6 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L7 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L7 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L8 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L8 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L9a = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9a of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private L9b = org.graalvm.compiler.truffle.test.PerformanceWarningTest$L9b of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeBoundaryCall = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryCall of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeBoundaryVirtualCall = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeBoundaryVirtualCall of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeCombined = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeCombined of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeDeepClass = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepClass of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeDeepStack = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeDeepStack of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeInstanceOf = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInstanceOf of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeInterfaceCast = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceCast of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeInterfaceSingleImplementorCall = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeInterfaceSingleImplementorCall of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private final RootNodeVirtualCall = org.graalvm.compiler.truffle.test.PerformanceWarningTest$RootNodeVirtualCall of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private abstract SingleImplementedInterface = org.graalvm.compiler.truffle.test.PerformanceWarningTest$SingleImplementedInterface of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private SingleImplementorClass = org.graalvm.compiler.truffle.test.PerformanceWarningTest$SingleImplementorClass of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private SubClass = org.graalvm.compiler.truffle.test.PerformanceWarningTest$SubClass of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private abstract TestRootNode = org.graalvm.compiler.truffle.test.PerformanceWarningTest$TestRootNode of org.graalvm.compiler.truffle.test.PerformanceWarningTest
protected TrivialCallsInnerNode = org.graalvm.compiler.truffle.test.PerformanceWarningTest$TrivialCallsInnerNode of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private VirtualObject1 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject1 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
private VirtualObject2 = org.graalvm.compiler.truffle.test.PerformanceWarningTest$VirtualObject2 of org.graalvm.compiler.truffle.test.PerformanceWarningTest
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
final CancellableTruffleCompilationTask = org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$CancellableTruffleCompilationTask of org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl