public class org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest extends org.graalvm.compiler.truffle.test.TestWithSynchronousCompiling
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest
super_class: org.graalvm.compiler.truffle.test.TestWithSynchronousCompiling
{
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.TestWithSynchronousCompiling.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
public void testVisibleOptions();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: invokestatic org.graalvm.polyglot.Engine.create:()Lorg/graalvm/polyglot/Engine;
astore 1
start local 1 1: aload 1
invokevirtual org.graalvm.polyglot.Engine.getOptions:()Lorg/graalvm/options/OptionDescriptors;
ldc "engine.CompilationThreshold"
invokeinterface org.graalvm.options.OptionDescriptors.get:(Ljava/lang/String;)Lorg/graalvm/options/OptionDescriptor;
astore 2
start local 2 2: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
3: aload 1
invokevirtual org.graalvm.polyglot.Engine.close:()V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
1 5 1 engine Lorg/graalvm/polyglot/Engine;
2 5 2 compilationThreshold Lorg/graalvm/options/OptionDescriptor;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testCompilationThreshold();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: ldc 2
ldc 2
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.truffle.api.nodes.RootNode.createConstantNode:(Ljava/lang/Object;)Lcom/oracle/truffle/api/nodes/RootNode;
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 1
start local 1 2: aload 0
invokedynamic run(Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;)Ljava/lang/Runnable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()V
org/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest.lambda$0()V (7)
()V
astore 2
start local 2 3: aload 0
bipush 42
ldc "42"
aload 2
invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.testCompilationThreshold:(ILjava/lang/String;Ljava/lang/Runnable;)V
4: aload 0
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.CompilationThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aconst_null
aload 2
invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.testCompilationThreshold:(ILjava/lang/String;Ljava/lang/Runnable;)V
5: aload 0
iconst_2
ldc "2"
aload 2
invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.testCompilationThreshold:(ILjava/lang/String;Ljava/lang/Runnable;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
2 7 1 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
3 7 2 doWhile Ljava/lang/Runnable;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testPolyglotCompilerOptionsAreUsed();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
bipush 12
anewarray java.lang.String
dup
iconst_0
ldc "engine.CompilationThreshold"
aastore
dup
iconst_1
ldc "27"
aastore
dup
iconst_2
1: ldc "engine.TraceCompilation"
aastore
dup
iconst_3
ldc "true"
aastore
dup
iconst_4
2: ldc "engine.TraceCompilationDetails"
aastore
dup
iconst_5
ldc "true"
aastore
dup
bipush 6
3: ldc "engine.Inlining"
aastore
dup
bipush 7
ldc "false"
aastore
dup
bipush 8
4: ldc "engine.Splitting"
aastore
dup
bipush 9
ldc "false"
aastore
dup
bipush 10
5: ldc "engine.Mode"
aastore
dup
bipush 11
ldc "latency"
aastore
6: invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.setupContext:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
pop
7: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.truffle.api.nodes.RootNode.createConstantNode:(Ljava/lang/Object;)Lcom/oracle/truffle/api/nodes/RootNode;
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 1
start local 1 8: ldc 27
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.CompilationThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.TraceCompilation:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.TraceCompilationDetails:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
11: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.Inlining:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
12: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.Splitting:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
13: getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions$EngineModeEnum.LATENCY:Lorg/graalvm/compiler/truffle/options/PolyglotCompilerOptions$EngineModeEnum;
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.Mode:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
14: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
8 15 1 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testEngineModeLatency();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: getstatic org.graalvm.options.OptionStability.STABLE:Lorg/graalvm/options/OptionStability;
invokestatic org.graalvm.polyglot.Engine.create:()Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Engine.getOptions:()Lorg/graalvm/options/OptionDescriptors;
ldc "engine.Mode"
invokeinterface org.graalvm.options.OptionDescriptors.get:(Ljava/lang/String;)Lorg/graalvm/options/OptionDescriptor;
invokevirtual org.graalvm.options.OptionDescriptor.getStability:()Lorg/graalvm/options/OptionStability;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
1: aload 0
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "engine.Mode"
aastore
dup
iconst_1
ldc "latency"
aastore
invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.setupContext:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
pop
2: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.truffle.api.nodes.RootNode.createConstantNode:(Ljava/lang/Object;)Lcom/oracle/truffle/api/nodes/RootNode;
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 1
start local 1 3: getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions$EngineModeEnum.LATENCY:Lorg/graalvm/compiler/truffle/options/PolyglotCompilerOptions$EngineModeEnum;
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.Mode:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
4: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 1
getfield org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.engine:Lorg/graalvm/compiler/truffle/runtime/EngineData;
getfield org.graalvm.compiler.truffle.runtime.EngineData.inlining:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
5: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 1
getfield org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.engine:Lorg/graalvm/compiler/truffle/runtime/EngineData;
getfield org.graalvm.compiler.truffle.runtime.EngineData.splitting:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
3 7 1 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testParseUnknownMode();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
1: iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Context$Builder;
2: ldc "engine.Mode"
ldc "anUnknownMode"
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;
pop
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
RuntimeVisibleAnnotations:
org.junit.Test(expected = Ljava/lang/IllegalArgumentException;)
private void testCompilationThreshold(int, java.lang.String, java.lang.Runnable);
descriptor: (ILjava/lang/String;Ljava/lang/Runnable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
ifnonnull 1
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "engine.MultiTier"
aastore
dup
iconst_1
ldc "false"
aastore
goto 2
1: StackMap locals:
StackMap stack: org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "engine.CompilationThreshold"
aastore
dup
iconst_1
aload 2
aastore
dup
iconst_2
ldc "engine.MultiTier"
aastore
dup
iconst_3
ldc "false"
aastore
2: StackMap locals: org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest int java.lang.String java.lang.Runnable
StackMap stack: org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest java.lang.String[]
invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.setupContext:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 4
start local 4 3: aload 4
ldc "sl"
ldc "function test() {}"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
pop
4: invokestatic com.oracle.truffle.sl.SLLanguage.getCurrentContext:()Lcom/oracle/truffle/sl/runtime/SLContext;
invokevirtual com.oracle.truffle.sl.runtime.SLContext.getFunctionRegistry:()Lcom/oracle/truffle/sl/runtime/SLFunctionRegistry;
ldc "test"
invokevirtual com.oracle.truffle.sl.runtime.SLFunctionRegistry.getFunction:(Ljava/lang/String;)Lcom/oracle/truffle/sl/runtime/SLFunction;
astore 5
start local 5 5: aload 5
invokestatic org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.isExecuteCompiled:(Lcom/oracle/truffle/sl/runtime/SLFunction;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
6: iconst_0
istore 6
start local 6 7: goto 11
8: StackMap locals: org.graalvm.polyglot.Context com.oracle.truffle.sl.runtime.SLFunction int
StackMap stack:
aload 5
invokestatic org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.isExecuteCompiled:(Lcom/oracle/truffle/sl/runtime/SLFunction;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
9: aload 5
invokevirtual com.oracle.truffle.sl.runtime.SLFunction.getCallTarget:()Lcom/oracle/truffle/api/RootCallTarget;
iconst_0
anewarray java.lang.Object
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
10: iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
iload 1
iconst_1
isub
if_icmplt 8
end local 6 12: aload 3
ifnull 14
13: aload 3
invokeinterface java.lang.Runnable.run:()V
14: StackMap locals:
StackMap stack:
aload 5
invokestatic org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.isExecuteCompiled:(Lcom/oracle/truffle/sl/runtime/SLFunction;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
15: aload 5
invokevirtual com.oracle.truffle.sl.runtime.SLFunction.getCallTarget:()Lcom/oracle/truffle/api/RootCallTarget;
iconst_0
anewarray java.lang.Object
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
16: aload 5
invokestatic org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.isExecuteCompiled:(Lcom/oracle/truffle/sl/runtime/SLFunction;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
17: aload 5
invokevirtual com.oracle.truffle.sl.runtime.SLFunction.getCallTarget:()Lcom/oracle/truffle/api/RootCallTarget;
iconst_0
anewarray java.lang.Object
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
18: aload 5
invokestatic org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.isExecuteCompiled:(Lcom/oracle/truffle/sl/runtime/SLFunction;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
19: 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 20 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
0 20 1 iterations I
0 20 2 compilationThresholdOption Ljava/lang/String;
0 20 3 doWhile Ljava/lang/Runnable;
3 20 4 ctx Lorg/graalvm/polyglot/Context;
5 20 5 test Lcom/oracle/truffle/sl/runtime/SLFunction;
7 12 6 i I
MethodParameters:
Name Flags
iterations
compilationThresholdOption
doWhile
private static boolean isExecuteCompiled(com.oracle.truffle.sl.runtime.SLFunction);
descriptor: (Lcom/oracle/truffle/sl/runtime/SLFunction;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.sl.runtime.SLFunction.getCallTarget:()Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 value Lcom/oracle/truffle/sl/runtime/SLFunction;
MethodParameters:
Name Flags
value
private void lambda$0();
descriptor: ()V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
bipush 50
ldc "50"
aconst_null
invokevirtual org.graalvm.compiler.truffle.test.PolyglotEngineOptionsTest.testCompilationThreshold:(ILjava/lang/String;Ljava/lang/Runnable;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/PolyglotEngineOptionsTest;
}
SourceFile: "PolyglotEngineOptionsTest.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final EngineModeEnum = org.graalvm.compiler.truffle.options.PolyglotCompilerOptions$EngineModeEnum of org.graalvm.compiler.truffle.options.PolyglotCompilerOptions
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context