public class com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
super_class: java.lang.Object
{
static final java.lang.String FIRST;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "ContextPreInitializationFirst"
static final java.lang.String SECOND;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "ContextPreInitializationSecond"
static final java.lang.String INTERNAL;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "ContextPreInitializationInternal"
static final java.lang.String SHARED;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "ContextPreInitializationShared"
private static final java.util.concurrent.atomic.AtomicInteger NEXT_ORDER_INDEX;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String SYS_OPTION1_KEY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "polyglot.ContextPreInitializationFirst.Option1"
private static final java.lang.String SYS_OPTION2_KEY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "polyglot.ContextPreInitializationFirst.Option2"
private static final java.util.List<com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext> emittedContexts;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
private static final java.util.Set<java.lang.String> patchableLanguages;
descriptor: Ljava/util/Set;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.NEXT_ORDER_INDEX:Ljava/util/concurrent/atomic/AtomicInteger;
1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
2: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.patchableLanguages:Ljava/util/Set;
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 java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
public void setUp();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: ldc "org.graalvm.polyglot.Engine$ImplHolder"
iconst_1
ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Before()
public void tearDown();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.callDependentLanguage:Z
1: iconst_0
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.callDependentLanguageInCreate:Z
2: iconst_0
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.callDependentLanguageInPatch:Z
3: iconst_0
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.lookupService:Z
4: aconst_null
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationFirstInstrument.actions:Ljava/util/Map;
5: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.actions:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
6: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdOutOutput:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
7: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdErrOutput:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
8: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.resetSystemPropertiesOptions:()V
9: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.resetLanguageHomes:()V
10: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.patchableLanguages:Ljava/util/Set;
invokeinterface java.util.Set.clear:()V
11: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokeinterface java.util.List.clear:()V
12: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.After()
public void testOutputNoLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: iconst_0
anewarray java.lang.String
1: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdOutOutput:Ljava/util/Map;
ldc "ContextPreInitializationFirst"
ldc "output"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdErrOutput:Ljava/util/Map;
ldc "ContextPreInitializationFirst"
ldc "error"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
iconst_0
anewarray java.lang.String
4: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
5: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 6: lconst_0
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
7: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 2
start local 2 8: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
start local 3 9: aconst_null
astore 4
aconst_null
astore 5
10: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 2
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
aload 3
invokevirtual org.graalvm.polyglot.Context$Builder.err:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 6
start local 6 11: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 12: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
13: ldc "output"
new java.lang.String
dup
aload 2
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
ldc "UTF-8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
14: ldc "error"
new java.lang.String
dup
aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
ldc "UTF-8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 15: aload 6
ifnull 21
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 21
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List java.io.ByteArrayOutputStream java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
16: astore 4
aload 6
ifnull 17
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
17: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
18: astore 5
aload 4
ifnonnull 19
aload 5
astore 4
goto 20
StackMap locals:
StackMap stack:
19: aload 4
aload 5
if_acmpeq 20
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
20: aload 4
athrow
StackMap locals:
StackMap stack:
21: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
6 22 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
8 22 2 out Ljava/io/ByteArrayOutputStream;
9 22 3 err Ljava/io/ByteArrayOutputStream;
11 17 6 ctx Lorg/graalvm/polyglot/Context;
12 15 7 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
11 15 16 any
10 18 18 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testOutputSingleLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdOutOutput:Ljava/util/Map;
ldc "ContextPreInitializationFirst"
ldc "first-output"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdErrOutput:Ljava/util/Map;
ldc "ContextPreInitializationFirst"
ldc "first-error"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdOutOutput:Ljava/util/Map;
ldc "ContextPreInitializationSecond"
ldc "second-output"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.parseStdErrOutput:Ljava/util/Map;
ldc "ContextPreInitializationSecond"
ldc "second-error"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
iconst_1
anewarray java.lang.String
dup
iconst_0
6: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
7: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 8: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 2
start local 2 10: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
start local 3 11: aconst_null
astore 4
aconst_null
astore 5
12: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 2
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
aload 3
invokevirtual org.graalvm.polyglot.Context$Builder.err:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 6
start local 6 13: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 14: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
15: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
16: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: ldc "first-output"
new java.lang.String
dup
aload 2
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
ldc "UTF-8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
18: ldc "first-error"
new java.lang.String
dup
aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
ldc "UTF-8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
19: aload 2
invokevirtual java.io.ByteArrayOutputStream.reset:()V
20: aload 3
invokevirtual java.io.ByteArrayOutputStream.reset:()V
21: aload 6
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
22: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
23: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
24: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: ldc "second-output"
new java.lang.String
dup
aload 2
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
ldc "UTF-8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
26: ldc "second-error"
new java.lang.String
dup
aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
ldc "UTF-8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 27: aload 6
ifnull 33
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 33
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List java.io.ByteArrayOutputStream java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
28: astore 4
aload 6
ifnull 29
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
29: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
30: astore 5
aload 4
ifnonnull 31
aload 5
astore 4
goto 32
StackMap locals:
StackMap stack:
31: aload 4
aload 5
if_acmpeq 32
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
32: aload 4
athrow
StackMap locals:
StackMap stack:
33: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
8 34 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
10 34 2 out Ljava/io/ByteArrayOutputStream;
11 34 3 err Ljava/io/ByteArrayOutputStream;
13 29 6 ctx Lorg/graalvm/polyglot/Context;
14 27 7 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
13 27 28 any
12 30 30 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testArgumentsSingleLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: iconst_0
anewarray java.lang.String
1: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_0
anewarray java.lang.String
2: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_0
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: aconst_null
astore 2
aconst_null
astore 3
6: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirst"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "a"
aastore
dup
iconst_1
ldc "b"
aastore
invokevirtual org.graalvm.polyglot.Context$Builder.arguments:(Ljava/lang/String;[Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 4
start local 4 7: aload 4
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 8: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
9: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
10: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 6
start local 6 12: aload 6
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
13: ldc "a"
aastore
dup
iconst_1
ldc "b"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.arguments:Ljava/util/List;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 6 end local 5 14: aload 4
ifnull 20
aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 20
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
15: astore 2
aload 4
ifnull 16
aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 4 StackMap locals:
StackMap stack:
16: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
17: astore 3
aload 2
ifnonnull 18
aload 3
astore 2
goto 19
StackMap locals:
StackMap stack:
18: aload 2
aload 3
if_acmpeq 19
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
19: aload 2
athrow
StackMap locals:
StackMap stack:
20: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 21 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 16 4 ctx Lorg/graalvm/polyglot/Context;
8 14 5 res Lorg/graalvm/polyglot/Value;
12 14 6 context Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
7 14 15 any
6 17 17 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testArgumentsSingleLanguagePreInitialization2();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: aconst_null
astore 2
aconst_null
astore 3
6: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirst"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "a"
aastore
dup
iconst_1
ldc "b"
aastore
invokevirtual org.graalvm.polyglot.Context$Builder.arguments:(Ljava/lang/String;[Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationSecond"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "c"
aastore
dup
iconst_1
ldc "d"
aastore
invokevirtual org.graalvm.polyglot.Context$Builder.arguments:(Ljava/lang/String;[Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 4
start local 4 7: aload 4
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 8: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
9: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
10: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 6
start local 6 12: aload 6
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
13: ldc "a"
aastore
dup
iconst_1
ldc "b"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.arguments:Ljava/util/List;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
14: aload 4
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
15: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
16: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
17: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 6
19: aload 6
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
20: ldc "c"
aastore
dup
iconst_1
ldc "d"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.arguments:Ljava/util/List;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 6 end local 5 21: aload 4
ifnull 27
aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 27
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
22: astore 2
aload 4
ifnull 23
aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 4 StackMap locals:
StackMap stack:
23: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
24: astore 3
aload 2
ifnonnull 25
aload 3
astore 2
goto 26
StackMap locals:
StackMap stack:
25: aload 2
aload 3
if_acmpeq 26
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
26: aload 2
athrow
StackMap locals:
StackMap stack:
27: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 28 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 23 4 ctx Lorg/graalvm/polyglot/Context;
8 21 5 res Lorg/graalvm/polyglot/Value;
12 21 6 context Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
7 21 22 any
6 24 24 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testNoLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: iconst_0
anewarray java.lang.String
1: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_0
anewarray java.lang.String
2: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_0
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 2
start local 2 6: aload 2
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 7: ldc "test"
aload 3
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
9: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 4
start local 4 11: aload 4
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
12: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: aload 2
invokevirtual org.graalvm.polyglot.Context.close:()V
19: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
20: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 27 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 27 2 ctx Lorg/graalvm/polyglot/Context;
7 27 3 res Lorg/graalvm/polyglot/Value;
11 27 4 context Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSingleLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
8: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 3
start local 3 14: aload 3
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 15: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
16: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
17: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: aload 3
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
25: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
26: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
27: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 5
start local 5 29: aload 5
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
30: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_0
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: lconst_0
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
40: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
41: lconst_0
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
43: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
44: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_0
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
55: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
56: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
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 57 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 57 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 57 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
14 57 3 ctx Lorg/graalvm/polyglot/Context;
15 57 4 res Lorg/graalvm/polyglot/Value;
29 57 5 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testMoreLanguagesPreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: iconst_2
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 8: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 4
start local 4 22: aload 4
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 23: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
24: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
25: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: aload 4
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
39: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
40: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
41: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
55: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
56: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
57: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
58: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
59: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
60: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
61: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
62: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
63: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
64: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
65: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
66: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
67: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
68: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
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 69 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 69 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 69 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
8 69 3 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
22 69 4 ctx Lorg/graalvm/polyglot/Context;
23 69 5 res Lorg/graalvm/polyglot/Value;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testMoreLanguagesPreInitializationFailedPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 8: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 4
start local 4 22: aload 4
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 23: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
24: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
25: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 6
start local 6 27: aload 6
aload 2
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
28: aload 6
invokeinterface java.util.Collection.isEmpty:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
29: aload 6
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 7
start local 7 30: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
40: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
41: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
49: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
55: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
56: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
57: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
58: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
59: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
60: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
61: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
62: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
63: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
64: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
65: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
66: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
67: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
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 68 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 68 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 68 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
8 68 3 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
22 68 4 ctx Lorg/graalvm/polyglot/Context;
23 68 5 res Lorg/graalvm/polyglot/Value;
27 68 6 firstLangCtxs Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
30 68 7 firstLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSystemPropertiesOptionsSuccessfulPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: ldc "polyglot.ContextPreInitializationFirst.Option1"
ldc "true"
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 5: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
6: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
9: ldc "polyglot.ContextPreInitializationFirst.Option1"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
10: ldc "polyglot.ContextPreInitializationFirst.Option2"
ldc "true"
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
11: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 3
start local 3 12: aload 3
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 13: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
14: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
15: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
16: aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
17: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 3
18: aload 3
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
19: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
20: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
21: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
22: aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
23: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 24 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
5 24 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
12 24 3 ctx Lorg/graalvm/polyglot/Context;
13 24 4 res Lorg/graalvm/polyglot/Value;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSystemPropertiesOptionsFailedPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: ldc "polyglot.ContextPreInitializationFirst.Option1"
ldc "true"
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
iconst_0
anewarray java.lang.String
1: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 5: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
6: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
9: ldc "polyglot.ContextPreInitializationFirst.Option1"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
10: ldc "polyglot.ContextPreInitializationFirst.Option2"
ldc "true"
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
11: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 3
start local 3 12: aload 3
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 13: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
14: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
15: aload 1
aload 2
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
16: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 5
start local 5 17: aload 5
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
18: aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
19: aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
20: aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
21: 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 22 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 22 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
5 22 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
12 22 3 ctx Lorg/graalvm/polyglot/Context;
13 22 4 res Lorg/graalvm/polyglot/Value;
17 22 5 firstLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testContextOptionsNoLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: iconst_0
anewarray java.lang.String
1: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_0
anewarray java.lang.String
2: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_0
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirst.Option1"
ldc "true"
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;
astore 2
start local 2 6: aload 2
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 7: ldc "test"
aload 3
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
9: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 4
start local 4 11: aload 4
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
12: aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
13: aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
14: aload 2
invokevirtual org.graalvm.polyglot.Context.close:()V
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 15 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 15 2 ctx Lorg/graalvm/polyglot/Context;
7 15 3 res Lorg/graalvm/polyglot/Value;
11 15 4 context Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testContextOptionsSingleLanguagePreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirst.Option1"
ldc "true"
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;
astore 3
start local 3 8: aload 3
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 9: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
11: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
13: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
14: aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 15 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 15 2 context Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
8 15 3 ctx Lorg/graalvm/polyglot/Context;
9 15 4 res Lorg/graalvm/polyglot/Value;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testContextOptionsCompatibleAfterSuccessfulPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=13, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationShared"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationShared"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: ldc "ContextPreInitializationShared"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 5: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.language:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseLanguage;
astore 3
start local 3 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
9: aconst_null
astore 4
aconst_null
astore 5
10: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationShared.Option1"
ldc "true"
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;
astore 6
start local 6 11: aload 6
ldc "ContextPreInitializationShared"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 12: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
13: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
14: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 8
start local 8 16: aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
17: aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
18: aload 3
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.language:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseLanguage;
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
19: aload 2
aload 8
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
20: aload 6
invokevirtual org.graalvm.polyglot.Context.enter:()V
21: aconst_null
astore 9
aconst_null
astore 10
22: aload 8
invokevirtual com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.environment:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.newContextBuilder:()Lcom/oracle/truffle/api/TruffleContext$Builder;
invokevirtual com.oracle.truffle.api.TruffleContext$Builder.build:()Lcom/oracle/truffle/api/TruffleContext;
astore 11
start local 11 23: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
24: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: aload 1
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 8
26: aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage.Option1:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
27: aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.optionValues:Ljava/util/Map;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage.Option2:Lorg/graalvm/options/OptionKey;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
28: ldc "Patched pre-initialized language should be shared with the second context since the options are compatible."
aload 3
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.language:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseLanguage;
invokestatic org.junit.Assert.assertSame:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
29: aload 11
ifnull 38
aload 11
invokevirtual com.oracle.truffle.api.TruffleContext.close:()V
goto 38
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context org.graalvm.polyglot.Value com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.TruffleContext
StackMap stack: java.lang.Throwable
30: astore 9
aload 11
ifnull 31
aload 11
invokevirtual com.oracle.truffle.api.TruffleContext.close:()V
end local 11 StackMap locals:
StackMap stack:
31: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
32: astore 10
aload 9
ifnonnull 33
aload 10
astore 9
goto 34
StackMap locals:
StackMap stack:
33: aload 9
aload 10
if_acmpeq 34
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
34: aload 9
athrow
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context org.graalvm.polyglot.Value com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
StackMap stack: java.lang.Throwable
35: astore 12
36: aload 6
invokevirtual org.graalvm.polyglot.Context.leave:()V
37: aload 12
athrow
38: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.graalvm.polyglot.Context.leave:()V
end local 8 end local 7 39: aload 6
ifnull 45
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 45
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
40: astore 4
aload 6
ifnull 41
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
41: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
42: astore 5
aload 4
ifnonnull 43
aload 5
astore 4
goto 44
StackMap locals:
StackMap stack:
43: aload 4
aload 5
if_acmpeq 44
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
44: aload 4
athrow
StackMap locals:
StackMap stack:
45: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 46 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 46 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
5 46 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
6 46 3 firstLang Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseLanguage;
11 41 6 ctx Lorg/graalvm/polyglot/Context;
12 39 7 res Lorg/graalvm/polyglot/Value;
16 39 8 langCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
23 31 11 truffleContext Lcom/oracle/truffle/api/TruffleContext;
Exception table:
from to target type
23 29 30 any
22 32 32 any
21 35 35 any
11 39 40 any
10 42 42 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDependentLanguagePreInitializationSuccessfulPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=1
start local 0 0: iconst_3
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationSecond"
aastore
dup
iconst_1
ldc "ContextPreInitializationFirst"
aastore
dup
iconst_2
ldc "ContextPreInitializationInternal"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.callDependentLanguageInCreate:Z
3: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.callDependentLanguage:Z
iconst_1
anewarray java.lang.String
dup
iconst_0
4: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
5: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 6: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
7: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 8: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 16: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
17: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: ldc "ContextPreInitializationInternal"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 4
start local 4 24: aload 4
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
25: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 5
start local 5 32: aload 5
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 6
start local 6 33: ldc "test"
aload 6
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
34: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
35: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
40: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
41: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextOrder:I
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextOrder:I
if_icmpge 55
iconst_1
goto 56
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext org.graalvm.polyglot.Context org.graalvm.polyglot.Value
StackMap stack:
55: iconst_0
StackMap locals:
StackMap stack: int
56: invokestatic org.junit.Assert.assertTrue:(Z)V
57: aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextOrder:I
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextOrder:I
if_icmpge 58
iconst_1
goto 59
StackMap locals:
StackMap stack:
58: iconst_0
StackMap locals:
StackMap stack: int
59: invokestatic org.junit.Assert.assertTrue:(Z)V
60: aload 5
invokevirtual org.graalvm.polyglot.Context.close:()V
61: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
62: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
63: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
64: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
65: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
66: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
67: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
68: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
69: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
70: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
71: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
72: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
73: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
74: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
75: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
76: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
77: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
78: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
79: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
80: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
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 81 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
6 81 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
8 81 2 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
16 81 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
24 81 4 internalLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
32 81 5 ctx Lorg/graalvm/polyglot/Context;
33 81 6 res Lorg/graalvm/polyglot/Value;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDependentLanguagePreInitializationFailedPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.callDependentLanguageInCreate:Z
3: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage.callDependentLanguage:Z
iconst_1
anewarray java.lang.String
dup
iconst_0
4: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
5: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 6: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
7: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 8: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 16: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
17: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: ldc "ContextPreInitializationInternal"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 4
start local 4 24: aload 4
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
25: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_0
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 5
start local 5 32: aload 5
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 6
start local 6 33: ldc "test"
aload 6
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
34: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
35: ldc 6
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 7
start local 7 37: aload 7
aload 2
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
38: lconst_1
aload 7
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: aload 7
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 8
start local 8 40: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 7
41: aload 7
aload 3
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
42: lconst_1
aload 7
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: aload 7
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 9
start local 9 44: ldc "ContextPreInitializationInternal"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 7
45: aload 7
aload 4
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
46: lconst_1
aload 7
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: aload 7
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 10
start local 10 48: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
55: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
56: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
57: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
58: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
59: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
60: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
61: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
62: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
63: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
64: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
65: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
66: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
67: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
68: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
69: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
70: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
71: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
72: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
73: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
74: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
75: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
76: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
77: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
78: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
79: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
80: lconst_0
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
81: lconst_0
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
82: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
83: lconst_0
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
84: aload 5
invokevirtual org.graalvm.polyglot.Context.close:()V
85: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
86: ldc 6
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
87: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
88: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
89: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
90: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
91: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
92: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
93: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
94: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
95: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
96: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
97: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
98: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
99: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
100: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
101: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
102: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
103: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
104: lconst_1
aload 4
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
105: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
106: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
107: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
108: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
109: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
110: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
111: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
112: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
113: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
114: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
115: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
116: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
117: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
118: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
119: lconst_0
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
120: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
121: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
122: lconst_1
aload 10
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
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 123 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
6 123 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
8 123 2 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
16 123 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
24 123 4 internalLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
32 123 5 ctx Lorg/graalvm/polyglot/Context;
33 123 6 res Lorg/graalvm/polyglot/Value;
37 123 7 ctxs Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
40 123 8 secondLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
44 123 9 firstLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
48 123 10 internalLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSingleLanguageExceptionFromContextPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
invokedynamic accept()Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$0(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 5: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 7: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: iconst_0
anewarray java.lang.String
15: invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
pop
16: ldc "Should not reach here."
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
17: goto 19
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
StackMap stack: org.graalvm.polyglot.PolyglotException
18: pop
19: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
20: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
5 27 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 27 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
14 17 18 Class org.graalvm.polyglot.PolyglotException
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testMoreLanguagesExceptionFromContextPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: iconst_2
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
invokedynamic accept()Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$1(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 5: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 7: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 9: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
10: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: iconst_0
anewarray java.lang.String
23: invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
pop
24: ldc "Should not reach here."
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
25: goto 27
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
StackMap stack: org.graalvm.polyglot.PolyglotException
26: pop
27: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
28: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
40: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
5 41 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 41 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
9 41 3 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
22 25 26 Class org.graalvm.polyglot.PolyglotException
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testLanguageHome();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc "/compile-graalvm/languages/%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 1
start local 1 3: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 1
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
iconst_1
anewarray java.lang.String
dup
iconst_0
4: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
5: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 6: lconst_1
aload 2
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
7: ldc "ContextPreInitializationFirst"
aload 2
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 8: aload 1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.languageHome:Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
9: ldc "/run-graalvm/languages/%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 1
10: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 1
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
11: aconst_null
astore 4
aconst_null
astore 5
12: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 6
start local 6 13: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 14: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
15: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
16: lconst_1
aload 2
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: aload 1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.languageHome:Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 18: aload 6
ifnull 24
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 24
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.lang.String java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
19: astore 4
aload 6
ifnull 20
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
20: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 5
aload 4
ifnonnull 22
aload 5
astore 4
goto 23
StackMap locals:
StackMap stack:
22: aload 4
aload 5
if_acmpeq 23
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
23: aload 4
athrow
StackMap locals:
StackMap stack:
24: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 25 1 expectedPath Ljava/lang/String;
6 25 2 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
8 25 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
13 20 6 ctx Lorg/graalvm/polyglot/Context;
14 18 7 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
13 18 19 any
12 21 21 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testTemporaryEngine();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
8: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: invokestatic org.graalvm.polyglot.Engine.create:()Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Engine.close:()V
14: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 3
start local 3 15: aload 3
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 16: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
17: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
18: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
26: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
27: lconst_1
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 34 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 34 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
15 34 3 ctx Lorg/graalvm/polyglot/Context;
16 34 4 res Lorg/graalvm/polyglot/Value;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testLogging();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=10, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: getstatic java.lang.System.err:Ljava/io/PrintStream;
astore 1
start local 1 3: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 2
start local 2 4: ldc "polyglot.log.file"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 5: aconst_null
astore 4
aconst_null
astore 5
6: new java.io.PrintStream
dup
aload 2
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
astore 6
start local 6 7: aload 6
invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
8: ldc "polyglot.log.engine.level"
ldc "FINE"
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
9: ldc "polyglot.log.file"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
iconst_1
anewarray java.lang.String
dup
iconst_0
10: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
11: aload 6
ifnull 23
aload 6
invokevirtual java.io.PrintStream.close:()V
goto 23
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.io.PrintStream java.io.ByteArrayOutputStream java.lang.String java.lang.Throwable java.lang.Throwable java.io.PrintStream
StackMap stack: java.lang.Throwable
12: astore 4
aload 6
ifnull 13
aload 6
invokevirtual java.io.PrintStream.close:()V
end local 6 StackMap locals:
StackMap stack:
13: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 5
aload 4
ifnonnull 15
aload 5
astore 4
goto 16
StackMap locals:
StackMap stack:
15: aload 4
aload 5
if_acmpeq 16
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 4
athrow
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.io.PrintStream java.io.ByteArrayOutputStream java.lang.String
StackMap stack: java.lang.Throwable
17: astore 7
18: aload 1
invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
19: ldc "polyglot.log.engine.level"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
20: aload 3
ifnull 22
21: ldc "polyglot.log.file"
aload 3
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
22: StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.io.PrintStream java.io.ByteArrayOutputStream java.lang.String top top top java.lang.Throwable
StackMap stack:
aload 7
athrow
23: StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.io.PrintStream java.io.ByteArrayOutputStream java.lang.String
StackMap stack:
aload 1
invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
24: ldc "polyglot.log.engine.level"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
25: aload 3
ifnull 27
26: ldc "polyglot.log.file"
aload 3
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
27: StackMap locals:
StackMap stack:
aload 2
ldc "UTF-8"
invokevirtual java.io.ByteArrayOutputStream.toString:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 28: aload 4
ldc "Pre-initialized context for language: ContextPreInitializationFirst"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
29: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 5
start local 5 30: lconst_1
aload 5
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: ldc "ContextPreInitializationFirst"
aload 5
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 6
start local 6 32: aload 6
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
33: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_0
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_0
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_0
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_0
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: new com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler
dup
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "engine.com.oracle.truffle.polyglot.PolyglotLanguageContext"
aastore
invokespecial com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler.<init>:([Ljava/lang/String;)V
astore 7
start local 7 40: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "log.engine.level"
ldc "FINE"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 7
invokevirtual org.graalvm.polyglot.Context$Builder.logHandler:(Ljava/util/logging/Handler;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 8
start local 8 41: aload 8
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 9
start local 9 42: ldc "test"
aload 9
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
43: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler.logs:Ljava/util/List;
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: ldc "ContextPreInitializationFirst"
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler.logs:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.util.logging.LogRecord
invokevirtual java.util.logging.LogRecord.getParameters:()[Ljava/lang/Object;
iconst_0
aaload
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
45: ldc "Successfully patched context of language: {0}"
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler.logs:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.util.logging.LogRecord
invokevirtual java.util.logging.LogRecord.getMessage:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
46: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 5
47: lconst_1
aload 5
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_0
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_0
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: aload 8
invokevirtual org.graalvm.polyglot.Context.close:()V
55: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 5
56: lconst_1
aload 5
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
57: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
58: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
59: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
60: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
61: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
62: lconst_1
aload 6
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
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 63 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 63 1 origErr Ljava/io/PrintStream;
4 63 2 preInitErr Ljava/io/ByteArrayOutputStream;
5 63 3 origLogFile Ljava/lang/String;
7 13 6 printStream Ljava/io/PrintStream;
28 63 4 preInitLog Ljava/lang/String;
30 63 5 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
32 63 6 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
40 63 7 testHandler Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$TestHandler;
41 63 8 ctx Lorg/graalvm/polyglot/Context;
42 63 9 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
7 11 12 any
6 14 14 any
5 17 17 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testFileSystemSwitch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=13, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc "testFileSystemSwitch"
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempDirectory:(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 1
start local 1 3: aload 1
ldc "build"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 2
start local 2 4: aload 1
ldc "exec"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 3
start local 3 5: aload 2
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
pop
6: aload 3
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
pop
7: aload 2
ldc "test"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_1
anewarray java.lang.CharSequence
dup
iconst_0
ldc "build"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.write:(Ljava/nio/file/Path;[Ljava/lang/CharSequence;)Ljava/nio/file/Path;
astore 4
start local 4 8: aload 3
ldc "test"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_1
anewarray java.lang.CharSequence
dup
iconst_0
ldc "exec"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.write:(Ljava/nio/file/Path;[Ljava/lang/CharSequence;)Ljava/nio/file/Path;
astore 5
start local 5 9: aload 1
ldc "test"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_1
anewarray java.lang.CharSequence
dup
iconst_0
ldc "abs"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.write:(Ljava/nio/file/Path;[Ljava/lang/CharSequence;)Ljava/nio/file/Path;
astore 6
start local 6 10: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 7
start local 7 11: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 4
aload 7
aload 6
invokedynamic accept(Ljava/nio/file/Path;Ljava/util/List;Ljava/nio/file/Path;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$2(Ljava/nio/file/Path;Ljava/util/List;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
12: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 7
aload 5
aload 6
invokedynamic accept(Ljava/util/List;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$3(Ljava/util/List;Ljava/nio/file/Path;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
13: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
iconst_1
anewarray java.lang.String
dup
iconst_0
14: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
15: aload 7
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
16: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 3
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
17: aconst_null
astore 8
aconst_null
astore 9
18: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowIO:(Z)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 10
start local 10 19: aload 10
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 11
start local 11 20: ldc "test"
aload 11
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 11 21: aload 10
ifnull 30
aload 10
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 30
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
22: astore 8
aload 10
ifnull 23
aload 10
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 10 StackMap locals:
StackMap stack:
23: aload 8
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
24: astore 9
aload 8
ifnonnull 25
aload 9
astore 8
goto 26
StackMap locals:
StackMap stack:
25: aload 8
aload 9
if_acmpeq 26
aload 8
aload 9
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
26: aload 8
athrow
end local 7 27: StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path
StackMap stack: java.lang.Throwable
astore 12
28: aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
29: aload 12
athrow
30: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
return
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 31 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 31 1 tmpDir Ljava/nio/file/Path;
4 31 2 buildHome Ljava/nio/file/Path;
5 31 3 execHome Ljava/nio/file/Path;
8 31 4 buildFile Ljava/nio/file/Path;
9 31 5 execFile Ljava/nio/file/Path;
10 31 6 noLangHomeFile Ljava/nio/file/Path;
11 27 7 files Ljava/util/List<Lcom/oracle/truffle/api/TruffleFile;>;
19 23 10 ctx Lorg/graalvm/polyglot/Context;
20 21 11 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
19 21 22 any
18 24 24 any
10 27 27 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testServiceLookupSuccessfulPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: iconst_2
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.lookupService:Z
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 5: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 7: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 15: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
getstatic org.graalvm.polyglot.PolyglotAccess.ALL:Lorg/graalvm/polyglot/PolyglotAccess;
invokevirtual org.graalvm.polyglot.Context$Builder.allowPolyglotAccess:(Lorg/graalvm/polyglot/PolyglotAccess;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirst.ServiceKind"
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service$Kind.IMAGE_EXECUTION_TIME:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$Service$Kind;
invokevirtual com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service$Kind.name:()Ljava/lang/String;
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;
astore 4
start local 4 23: aload 4
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 24: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
25: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
26: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
40: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
41: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
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 54 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
5 54 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 54 2 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
15 54 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
23 54 4 ctx Lorg/graalvm/polyglot/Context;
24 54 5 res Lorg/graalvm/polyglot/Value;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testServiceLookupFailedPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.lookupService:Z
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 5: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 7: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 15: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
getstatic org.graalvm.polyglot.PolyglotAccess.ALL:Lorg/graalvm/polyglot/PolyglotAccess;
invokevirtual org.graalvm.polyglot.Context$Builder.allowPolyglotAccess:(Lorg/graalvm/polyglot/PolyglotAccess;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirst.ServiceKind"
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service$Kind.IMAGE_EXECUTION_TIME:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$Service$Kind;
invokevirtual com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service$Kind.name:()Ljava/lang/String;
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;
astore 4
start local 4 23: aload 4
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 24: ldc "test"
aload 5
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
25: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
26: ldc 4
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 6
start local 6 28: aload 6
aload 2
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
29: lconst_1
aload 6
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: aload 6
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 7
start local 7 31: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 6
32: aload 6
aload 3
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
33: lconst_1
aload 6
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: aload 6
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 8
start local 8 35: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
40: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
41: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
49: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
50: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
51: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
52: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
53: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
54: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
55: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
56: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
57: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
58: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
59: aload 4
invokevirtual org.graalvm.polyglot.Context.close:()V
60: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
61: ldc 4
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
62: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
63: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
64: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
65: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
66: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
67: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
68: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
69: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
70: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
71: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
72: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
73: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
74: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
75: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
76: lconst_0
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
77: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
78: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
79: lconst_1
aload 7
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
80: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
81: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
82: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
83: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
84: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
85: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
return
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 86 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
5 86 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 86 2 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
15 86 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
23 86 4 ctx Lorg/graalvm/polyglot/Context;
24 86 5 res Lorg/graalvm/polyglot/Value;
28 86 6 ctxs Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
31 86 7 secondLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
35 86 8 firstLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testInstrumentsEvents();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: ldc "onLanguageContextInitialized"
aload 0
invokedynamic accept(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$4(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V (7)
(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V
invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationFirstInstrument.actions:Ljava/util/Map;
1: iconst_1
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.callDependentLanguageInPatch:Z
iconst_2
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: aconst_null
astore 1
aconst_null
astore 2
5: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirstInstrument"
ldc "true"
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;
astore 3
start local 3 6: aload 3
ldc "ContextPreInitializationSecond"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 7: ldc "test"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 4 8: aload 3
ifnull 14
aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 14
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
9: astore 1
aload 3
ifnull 10
aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 3 StackMap locals:
StackMap stack:
10: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 2
aload 1
ifnonnull 12
aload 2
astore 1
goto 13
StackMap locals:
StackMap stack:
12: aload 1
aload 2
if_acmpeq 13
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 1
athrow
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
6 10 3 ctx Lorg/graalvm/polyglot/Context;
7 8 4 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
6 8 9 any
5 11 11 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSingeInstrumentInstanceAfterContextPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
astore 1
start local 1 1: ldc "onCreate"
aload 1
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicInteger;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$5(Ljava/util/concurrent/atomic/AtomicInteger;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V (6)
(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V
invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationFirstInstrument.actions:Ljava/util/Map;
iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 5: lconst_1
aload 2
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: ldc "ContextPreInitializationFirst"
aload 2
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 7: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 1
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: aconst_null
astore 4
aconst_null
astore 5
12: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirstInstrument"
ldc "true"
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;
astore 6
start local 6 13: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 14: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
15: lconst_1
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_1
aload 1
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
end local 7 23: aload 6
ifnull 29
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 29
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.concurrent.atomic.AtomicInteger java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
24: astore 4
aload 6
ifnull 25
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
25: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
26: astore 5
aload 4
ifnonnull 27
aload 5
astore 4
goto 28
StackMap locals:
StackMap stack:
27: aload 4
aload 5
if_acmpeq 28
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
28: aload 4
athrow
29: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
1 30 1 instrumentCreateCount Ljava/util/concurrent/atomic/AtomicInteger;
5 30 2 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 30 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
13 25 6 ctx Lorg/graalvm/polyglot/Context;
14 23 7 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
13 23 24 any
12 26 26 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testInstrumentCreatedAfterFailedContextPatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
astore 1
start local 1 1: ldc "onCreate"
aload 1
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicInteger;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$6(Ljava/util/concurrent/atomic/AtomicInteger;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V (6)
(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V
invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
putstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationFirstInstrument.actions:Ljava/util/Map;
iconst_0
anewarray java.lang.String
2: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
4: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 5: lconst_1
aload 2
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: ldc "ContextPreInitializationFirst"
aload 2
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 7: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
9: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_0
aload 1
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: aconst_null
astore 4
aconst_null
astore 5
12: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "ContextPreInitializationFirstInstrument"
ldc "true"
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;
astore 6
start local 6 13: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 14: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
15: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
16: ldc 2
aload 2
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: aload 2
aload 3
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
18: ldc "ContextPreInitializationFirst"
aload 2
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 8
start local 8 19: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
28: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
29: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
30: lconst_0
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
31: lconst_1
aload 1
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
end local 8 end local 7 32: aload 6
ifnull 38
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 38
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.concurrent.atomic.AtomicInteger java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
33: astore 4
aload 6
ifnull 34
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
34: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
35: astore 5
aload 4
ifnonnull 36
aload 5
astore 4
goto 37
StackMap locals:
StackMap stack:
36: aload 4
aload 5
if_acmpeq 37
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
37: aload 4
athrow
38: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
1 39 1 instrumentCreateCount Ljava/util/concurrent/atomic/AtomicInteger;
5 39 2 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
7 39 3 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
13 34 6 ctx Lorg/graalvm/polyglot/Context;
14 32 7 res Lorg/graalvm/polyglot/Value;
19 32 8 newFirstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
13 32 33 any
12 35 35 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSetCurrentWorkingDirectory();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc "testSetCWD"
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempDirectory:(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 1
start local 1 3: ldc "testSetCWDAbs"
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempDirectory:(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 2
start local 2 4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 5: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 3
aload 2
invokedynamic accept(Ljava/util/List;Ljava/nio/file/Path;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$7(Ljava/util/List;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
6: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 1
aload 3
aload 2
invokedynamic accept(Ljava/nio/file/Path;Ljava/util/List;Ljava/nio/file/Path;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$8(Ljava/nio/file/Path;Ljava/util/List;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
7: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
8: aload 3
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
9: aconst_null
astore 4
aconst_null
astore 5
10: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowIO:(Z)Lorg/graalvm/polyglot/Context$Builder;
aload 1
invokevirtual org.graalvm.polyglot.Context$Builder.currentWorkingDirectory:(Ljava/nio/file/Path;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 6
start local 6 11: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 12: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 13: aload 6
ifnull 23
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 23
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path java.nio.file.Path java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
14: astore 4
aload 6
ifnull 15
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
15: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 5
aload 4
ifnonnull 17
aload 5
astore 4
goto 18
StackMap locals:
StackMap stack:
17: aload 4
aload 5
if_acmpeq 18
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 4
athrow
end local 3 19: StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path java.nio.file.Path
StackMap stack: java.lang.Throwable
astore 8
20: aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
21: aload 2
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
22: aload 8
athrow
23: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
24: aload 2
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 25 1 newCwd Ljava/nio/file/Path;
4 25 2 absoluteFolder Ljava/nio/file/Path;
5 19 3 filesFromPreInitialization Ljava/util/List<Lcom/oracle/truffle/api/TruffleFile;>;
11 15 6 ctx Lorg/graalvm/polyglot/Context;
12 13 7 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
11 13 14 any
10 16 16 any
4 19 19 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSourceInLanguageHome();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=16, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc "testSources"
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempDirectory:(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokeinterface java.nio.file.Path.toRealPath:([Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
astore 1
start local 1 3: aload 1
ldc "build"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "ContextPreInitializationFirst"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 2
start local 2 4: aload 2
ldc "testSourceInLanguageHome.test"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "test"
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
astore 3
start local 3 5: aload 1
ldc "exec"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "ContextPreInitializationFirst"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 4
start local 4 6: aload 3
aload 4
aload 3
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.CopyOption
invokestatic java.nio.file.Files.copy:(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;
astore 5
start local 5 7: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
8: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 6
start local 6 9: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 7
start local 7 10: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 6
aload 3
aload 7
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$9(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
11: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
12: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 8
start local 8 13: lconst_1
aload 8
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: ldc "ContextPreInitializationFirst"
aload 8
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 9
start local 9 15: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
17: aload 7
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
18: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 4
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
19: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 10
start local 10 20: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 11
start local 11 21: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 10
aload 5
aload 11
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$10(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
22: aconst_null
astore 12
aconst_null
astore 13
23: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 14
start local 14 24: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: aload 5
aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
26: aload 5
aload 7
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
27: aload 5
aload 11
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
28: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 10
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
29: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 7
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 30
iconst_1
goto 31
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.util.concurrent.atomic.AtomicReference java.util.concurrent.atomic.AtomicReference java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.util.concurrent.atomic.AtomicReference java.util.concurrent.atomic.AtomicReference java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack:
30: iconst_0
StackMap locals:
StackMap stack: int
31: invokestatic org.junit.Assert.assertFalse:(Z)V
32: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 11
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 33
iconst_1
goto 34
StackMap locals:
StackMap stack:
33: iconst_0
StackMap locals:
StackMap stack: int
34: invokestatic org.junit.Assert.assertFalse:(Z)V
35: aload 7
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 11
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 36
iconst_1
goto 37
StackMap locals:
StackMap stack:
36: iconst_0
StackMap locals:
StackMap stack: int
37: invokestatic org.junit.Assert.assertFalse:(Z)V
38: aload 14
ifnull 47
aload 14
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 47
StackMap locals:
StackMap stack: java.lang.Throwable
39: astore 12
aload 14
ifnull 40
aload 14
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 14 StackMap locals:
StackMap stack:
40: aload 12
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
41: astore 13
aload 12
ifnonnull 42
aload 13
astore 12
goto 43
StackMap locals:
StackMap stack:
42: aload 12
aload 13
if_acmpeq 43
aload 12
aload 13
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
43: aload 12
athrow
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 44: StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path
StackMap stack: java.lang.Throwable
astore 15
45: aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
46: aload 15
athrow
47: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 48 1 testFolder Ljava/nio/file/Path;
4 44 2 buildtimeHome Ljava/nio/file/Path;
5 44 3 buildtimeResource Ljava/nio/file/Path;
6 44 4 runtimeHome Ljava/nio/file/Path;
7 44 5 runtimeResource Ljava/nio/file/Path;
9 44 6 buildtimeCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
10 44 7 buildtimeUnCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
13 44 8 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
15 44 9 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
20 44 10 runtimeCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
21 44 11 runtimeUnCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
24 40 14 ctx Lorg/graalvm/polyglot/Context;
Exception table:
from to target type
24 38 39 any
23 41 41 any
3 44 44 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSourceOutsideLanguageHome();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=15, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc "testSources"
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempDirectory:(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokeinterface java.nio.file.Path.toRealPath:([Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
astore 1
start local 1 3: aload 1
ldc "build"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "ContextPreInitializationFirst"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 2
start local 2 4: aload 1
ldc "exec"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "ContextPreInitializationFirst"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 3
start local 3 5: aload 1
ldc "testSourceOutsideLanguageHome.test"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "test"
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
astore 4
start local 4 6: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
7: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 5
start local 5 8: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 6
start local 6 9: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 5
aload 4
aload 6
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$11(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
10: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
11: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 7
start local 7 12: lconst_1
aload 7
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: ldc "ContextPreInitializationFirst"
aload 7
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 8
start local 8 14: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
16: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
17: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 3
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
18: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 9
start local 9 19: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 10
start local 10 20: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 9
aload 4
aload 10
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$12(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
21: aconst_null
astore 11
aconst_null
astore 12
22: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowAllAccess:(Z)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 13
start local 13 23: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: aload 4
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
25: aload 4
aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
26: aload 4
aload 10
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.source.Source
invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
27: aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 9
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
28: aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 29
iconst_1
goto 30
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.file.Path java.util.concurrent.atomic.AtomicReference java.util.concurrent.atomic.AtomicReference java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.util.concurrent.atomic.AtomicReference java.util.concurrent.atomic.AtomicReference java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack:
29: iconst_0
StackMap locals:
StackMap stack: int
30: invokestatic org.junit.Assert.assertFalse:(Z)V
31: aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 10
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 32
iconst_1
goto 33
StackMap locals:
StackMap stack:
32: iconst_0
StackMap locals:
StackMap stack: int
33: invokestatic org.junit.Assert.assertFalse:(Z)V
34: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 10
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 35
iconst_1
goto 36
StackMap locals:
StackMap stack:
35: iconst_0
StackMap locals:
StackMap stack: int
36: invokestatic org.junit.Assert.assertFalse:(Z)V
37: aload 13
ifnull 46
aload 13
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 46
StackMap locals:
StackMap stack: java.lang.Throwable
38: astore 11
aload 13
ifnull 39
aload 13
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 13 StackMap locals:
StackMap stack:
39: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
40: astore 12
aload 11
ifnonnull 41
aload 12
astore 11
goto 42
StackMap locals:
StackMap stack:
41: aload 11
aload 12
if_acmpeq 42
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
42: aload 11
athrow
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 43: StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path
StackMap stack: java.lang.Throwable
astore 14
44: aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
45: aload 14
athrow
46: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 47 1 testFolder Ljava/nio/file/Path;
4 43 2 buildtimeHome Ljava/nio/file/Path;
5 43 3 runtimeHome Ljava/nio/file/Path;
6 43 4 resource Ljava/nio/file/Path;
8 43 5 buildtimeCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
9 43 6 buildtimeUnCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
12 43 7 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
14 43 8 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
19 43 9 runtimeCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
20 43 10 runtimeUnCachedSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
23 39 13 ctx Lorg/graalvm/polyglot/Context;
Exception table:
from to target type
23 37 38 any
22 40 40 any
3 43 43 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSourceNotPatchedContext();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc "testSources"
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempDirectory:(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokeinterface java.nio.file.Path.toRealPath:([Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
astore 1
start local 1 3: aload 1
ldc "build"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "ContextPreInitializationFirst"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 2
start local 2 4: aload 2
ldc "testSourceNotPatchedContext.test"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "test"
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
astore 3
start local 3 5: aload 1
ldc "exec"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "ContextPreInitializationFirst"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
astore 4
start local 4 6: aload 3
aload 4
aload 3
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.CopyOption
invokestatic java.nio.file.Files.copy:(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;
astore 5
start local 5 7: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
8: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 6
start local 6 9: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 6
aload 3
invokedynamic accept(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$13(Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
10: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
11: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 7
start local 7 12: lconst_1
aload 7
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: ldc "ContextPreInitializationFirst"
aload 7
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 8
start local 8 14: lconst_1
aload 8
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
16: ldc "org.graalvm.language.%s.home"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "ContextPreInitializationFirst"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 4
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
17: ldc "ContextPreInitializationFirst"
aload 5
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/io/File;)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
pop
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 18: goto 22
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.nio.file.Path
StackMap stack: java.lang.Throwable
19: astore 9
20: aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
21: aload 9
athrow
22: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
3 23 1 testFolder Ljava/nio/file/Path;
4 18 2 buildtimeHome Ljava/nio/file/Path;
5 18 3 buildtimeResource Ljava/nio/file/Path;
6 18 4 runtimeHome Ljava/nio/file/Path;
7 18 5 runtimeResource Ljava/nio/file/Path;
9 18 6 buildtimeSource Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/truffle/api/source/Source;>;
12 18 7 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
14 18 8 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
3 19 19 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testAccessPriviledgePatching();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: iconst_2
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: aconst_null
astore 1
aconst_null
astore 2
4: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "ContextPreInitializationSecond"
aastore
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 3
start local 3 5: aload 3
invokevirtual org.graalvm.polyglot.Context.enter:()V
6: invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage.getCurrentContext:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
astore 4
start local 4 7: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicLanguages:()Ljava/util/Map;
ldc "ContextPreInitializationFirst"
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalLanguages:()Ljava/util/Map;
ldc "ContextPreInitializationFirst"
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
end local 4 9: aload 3
ifnull 15
aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 15
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
10: astore 1
aload 3
ifnull 11
aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 3 StackMap locals:
StackMap stack:
11: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 2
aload 1
ifnonnull 13
aload 2
astore 1
goto 14
StackMap locals:
StackMap stack:
13: aload 1
aload 2
if_acmpeq 14
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 1
athrow
StackMap locals:
StackMap stack:
15: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
5 11 3 context Lorg/graalvm/polyglot/Context;
7 9 4 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
Exception table:
from to target type
5 9 10 any
4 12 12 any
Exceptions:
throws java.lang.ReflectiveOperationException
RuntimeVisibleAnnotations:
org.junit.Test()
public void testFailToLookupInstrumentDuringContextPreInitialization();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
2: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
invokedynamic accept()Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$14(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testIsSameFileAllowedIO();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_1
aconst_null
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.testIsSameFileImpl:(ZLorg/graalvm/polyglot/io/FileSystem;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
astore 1
start local 1 1: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
2: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
5: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
6: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
8: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
9: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
10: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
11: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
12: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
1 14 1 res Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testIsSameFileDeniedIO();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_0
aconst_null
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.testIsSameFileImpl:(ZLorg/graalvm/polyglot/io/FileSystem;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
astore 1
start local 1 1: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
2: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
4: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
5: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
6: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
8: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
9: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
10: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
11: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
12: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertFalse:(Z)V
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
1 14 1 res Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testIsSameFileCustomFileSystem();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_1
invokestatic org.graalvm.polyglot.io.FileSystem.newDefaultFileSystem:()Lorg/graalvm/polyglot/io/FileSystem;
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.testIsSameFileImpl:(ZLorg/graalvm/polyglot/io/FileSystem;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
astore 1
start local 1 1: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
2: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
5: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
6: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
8: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
9: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
10: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
11: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
12: aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
iconst_0
anewarray java.nio.file.LinkOption
invokevirtual com.oracle.truffle.api.TruffleFile.isSameFile:(Lcom/oracle/truffle/api/TruffleFile;[Ljava/nio/file/LinkOption;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
1 14 1 res Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
public void testEnvValidInFinalizeContext();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=1
start local 0 0: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_FINALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
invokedynamic accept()Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$15(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
1: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
iconst_2
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
dup
iconst_1
ldc "ContextPreInitializationSecond"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
3: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 4: ldc 2
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 2
start local 2 6: aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: ldc "ContextPreInitializationSecond"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 3
start local 3 8: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: lconst_0
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
16: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
17: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
19: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: lconst_0
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
21: aconst_null
astore 4
aconst_null
astore 5
22: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 6
start local 6 23: aload 6
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 24: ldc "test"
aload 7
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
25: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
26: ldc 3
aload 1
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
27: ldc "ContextPreInitializationFirst"
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 8
start local 8 28: aload 8
aload 2
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
29: aload 8
invokeinterface java.util.Collection.isEmpty:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
30: aload 8
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 9
start local 9 31: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
32: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
33: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
34: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
35: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
36: lconst_1
aload 2
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
37: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
38: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
40: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
41: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
42: lconst_1
aload 3
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
43: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
44: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
45: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
46: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
47: lconst_1
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
48: lconst_0
aload 9
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.disposeThreadCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
end local 9 end local 8 end local 7 49: aload 6
ifnull 55
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 55
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
50: astore 4
aload 6
ifnull 51
aload 6
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 6 StackMap locals:
StackMap stack:
51: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
52: astore 5
aload 4
ifnonnull 53
aload 5
astore 4
goto 54
StackMap locals:
StackMap stack:
53: aload 4
aload 5
if_acmpeq 54
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
54: aload 4
athrow
55: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
4 56 1 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
6 56 2 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
8 56 3 secondLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
23 51 6 ctx Lorg/graalvm/polyglot/Context;
24 49 7 res Lorg/graalvm/polyglot/Value;
28 49 8 firstLangCtxs Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
31 49 9 firstLangCtx2 Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Exception table:
from to target type
23 49 50 any
22 52 52 any
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.junit.Test()
private static com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult testIsSameFileImpl(boolean, org.graalvm.polyglot.io.FileSystem);
descriptor: (ZLorg/graalvm/polyglot/io/FileSystem;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=11, args_size=2
start local 0 start local 1 0: ldc "."
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 2
start local 2 1: iconst_1
anewarray java.lang.String
dup
iconst_0
2: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.setPatchable:([Ljava/lang/String;)V
3: new com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult
dup
invokespecial com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.<init>:()V
astore 3
start local 3 4: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_INITIALIZE_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 3
aload 2
invokedynamic accept(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;Ljava/lang/String;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$16(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;Ljava/lang/String;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
iconst_1
anewarray java.lang.String
dup
iconst_0
5: ldc "ContextPreInitializationFirst"
aastore
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.doContextPreinitialize:([Ljava/lang/String;)V
6: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 4
start local 4 7: lconst_1
aload 4
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
8: ldc "ContextPreInitializationFirst"
aload 4
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContext:(Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
astore 5
start local 5 9: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
10: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
11: lconst_0
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
12: ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage;
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind.ON_PATCH_CONTEXT:Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;
aload 3
aload 2
invokedynamic accept(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;Ljava/lang/String;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
com/oracle/truffle/api/test/polyglot/ContextPreInitializationTest.lambda$17(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;Ljava/lang/String;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage.registerAction:(Ljava/lang/Class;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$ActionKind;Ljava/util/function/Consumer;)V
13: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
iload 0
invokevirtual org.graalvm.polyglot.Context$Builder.allowIO:(Z)Lorg/graalvm/polyglot/Context$Builder;
astore 6
start local 6 14: aload 1
ifnull 16
15: aload 6
aload 1
invokevirtual org.graalvm.polyglot.Context$Builder.fileSystem:(Lorg/graalvm/polyglot/io/FileSystem;)Lorg/graalvm/polyglot/Context$Builder;
pop
16: StackMap locals: int org.graalvm.polyglot.io.FileSystem java.lang.String com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext org.graalvm.polyglot.Context$Builder
StackMap stack:
aconst_null
astore 7
aconst_null
astore 8
17: aload 6
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 9
start local 9 18: aload 9
ldc "ContextPreInitializationFirst"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
astore 10
start local 10 19: ldc "test"
aload 10
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
20: new java.util.ArrayList
dup
getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.emittedContexts:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 4
21: lconst_1
aload 4
invokeinterface java.util.List.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
22: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.createContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
23: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.initializeContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
24: lconst_1
aload 5
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.patchContextCount:I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
25: aload 3
26: aload 9
ifnull 27
aload 9
invokevirtual org.graalvm.polyglot.Context.close:()V
27: StackMap locals: int org.graalvm.polyglot.io.FileSystem java.lang.String com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext org.graalvm.polyglot.Context$Builder java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context org.graalvm.polyglot.Value
StackMap stack: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult
areturn
end local 10 StackMap locals: int org.graalvm.polyglot.io.FileSystem java.lang.String com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult java.util.List com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext org.graalvm.polyglot.Context$Builder java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
28: astore 7
29: aload 9
ifnull 30
aload 9
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 9 StackMap locals:
StackMap stack:
30: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
31: astore 8
aload 7
ifnonnull 32
aload 8
astore 7
goto 33
StackMap locals:
StackMap stack:
32: aload 7
aload 8
if_acmpeq 33
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
33: aload 7
athrow
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 34 0 allowIO Z
0 34 1 fs Lorg/graalvm/polyglot/io/FileSystem;
1 34 2 path Ljava/lang/String;
4 34 3 result Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;
7 34 4 contexts Ljava/util/List<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
9 34 5 firstLangCtx Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
14 34 6 builder Lorg/graalvm/polyglot/Context$Builder;
18 30 9 ctx Lorg/graalvm/polyglot/Context;
19 28 10 res Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
18 26 28 any
17 27 31 any
28 31 31 any
Exceptions:
throws java.lang.ReflectiveOperationException
MethodParameters:
Name Flags
allowIO
fs
private static com.oracle.truffle.api.source.Source createSource(com.oracle.truffle.api.TruffleLanguage$Env, java.nio.file.Path, boolean);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 3
start local 3 1: aload 3
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
2: ldc "ContextPreInitializationFirst"
aload 3
invokestatic com.oracle.truffle.api.source.Source.newBuilder:(Ljava/lang/String;Lcom/oracle/truffle/api/TruffleFile;)Lcom/oracle/truffle/api/source/Source$SourceBuilder;
iload 2
invokevirtual com.oracle.truffle.api.source.Source$SourceBuilder.cached:(Z)Lcom/oracle/truffle/api/source/Source$SourceBuilder;
invokevirtual com.oracle.truffle.api.source.Source$SourceBuilder.build:()Lcom/oracle/truffle/api/source/Source;
3: areturn
end local 3 4: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 5: new java.lang.AssertionError
dup
aload 3
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
0 6 1 resource Ljava/nio/file/Path;
0 6 2 cached Z
1 4 3 file Lcom/oracle/truffle/api/TruffleFile;
5 6 3 ioe Ljava/io/IOException;
Exception table:
from to target type
0 3 4 Class java.io.IOException
MethodParameters:
Name Flags
env
resource
cached
private static void delete(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 13
1: aconst_null
astore 1
aconst_null
astore 2
2: aload 0
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 3
start local 3 3: aload 3
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 5
goto 6
StackMap locals: java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 4
start local 4 5: aload 4
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.delete:(Ljava/nio/file/Path;)V
end local 4 6: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 3
ifnull 13
aload 3
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 13
StackMap locals: java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
8: astore 1
aload 3
ifnull 9
aload 3
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 3 StackMap locals:
StackMap stack:
9: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 2
aload 1
ifnonnull 11
aload 2
astore 1
goto 12
StackMap locals:
StackMap stack:
11: aload 1
aload 2
if_acmpeq 12
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 1
athrow
13: StackMap locals:
StackMap stack:
aload 0
invokestatic java.nio.file.Files.delete:(Ljava/nio/file/Path;)V
14: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 file Ljava/nio/file/Path;
3 9 3 stream Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
5 6 4 child Ljava/nio/file/Path;
Exception table:
from to target type
3 7 8 any
2 10 10 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
file
private static java.nio.file.Path write(java.nio.file.Path, java.lang.CharSequence[]);
descriptor: (Ljava/nio/file/Path;[Ljava/lang/CharSequence;)Ljava/nio/file/Path;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
iconst_2
anewarray java.nio.file.OpenOption
dup
iconst_0
getstatic java.nio.file.StandardOpenOption.WRITE:Ljava/nio/file/StandardOpenOption;
aastore
dup
iconst_1
getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
aastore
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
pop
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 path Ljava/nio/file/Path;
0 2 1 lines [Ljava/lang/CharSequence;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path
lines
private static java.lang.String read(com.oracle.truffle.api.TruffleFile);
descriptor: (Lcom/oracle/truffle/api/TruffleFile;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.String
dup
aload 0
invokevirtual com.oracle.truffle.api.TruffleFile.readAllBytes:()[B
invokespecial java.lang.String.<init>:([B)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 file Lcom/oracle/truffle/api/TruffleFile;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
file
private static void resetSystemPropertiesOptions();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "polyglot.image-build-time.PreinitializeContexts"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
1: ldc "polyglot.ContextPreInitializationFirst.Option1"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
2: ldc "polyglot.ContextPreInitializationFirst.Option2"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
3: return
LocalVariableTable:
Start End Slot Name Signature
private static void resetLanguageHomes();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=0
0: ldc "com.oracle.truffle.polyglot.LanguageCache"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 0
start local 0 1: aload 0
ldc "resetNativeImageCacheLanguageHomes"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 1
start local 1 2: aload 1
iconst_1
invokevirtual java.lang.reflect.Method.setAccessible:(Z)V
3: aload 1
aconst_null
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 5 0 languageCache Ljava/lang/Class<*>;
2 5 1 reset Ljava/lang/reflect/Method;
Exceptions:
throws java.lang.ReflectiveOperationException
private static void doContextPreinitialize(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=7, args_size=1
start local 0 0: ldc "org.graalvm.polyglot.Engine$ImplHolder"
iconst_1
ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 1
start local 1 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 2: aload 0
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 6
StackMap locals: java.lang.String[] java.lang.Class java.lang.StringBuilder top int int java.lang.String[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 2
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 44
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 3 5: iinc 4 1
StackMap locals:
StackMap stack:
6: iload 4
iload 5
if_icmplt 3
7: aload 2
invokevirtual java.lang.StringBuilder.length:()I
ifle 10
8: aload 2
aload 2
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
aload 2
invokevirtual java.lang.StringBuilder.length:()I
ldc ""
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
9: ldc "polyglot.image-build-time.PreinitializeContexts"
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
pop
10: StackMap locals: java.lang.String[] java.lang.Class java.lang.StringBuilder
StackMap stack:
aload 1
ldc "preInitializeEngine"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
start local 3 11: aload 3
iconst_1
invokevirtual java.lang.reflect.Method.setAccessible:(Z)V
12: aload 3
aconst_null
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
pop
13: goto 17
StackMap locals: java.lang.String[] java.lang.Class java.lang.StringBuilder java.lang.reflect.Method
StackMap stack: java.lang.Throwable
14: astore 4
15: ldc "polyglot.image-build-time.PreinitializeContexts"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
16: aload 4
athrow
17: StackMap locals:
StackMap stack:
ldc "polyglot.image-build-time.PreinitializeContexts"
invokestatic java.lang.System.clearProperty:(Ljava/lang/String;)Ljava/lang/String;
pop
18: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 languages [Ljava/lang/String;
1 19 1 holderClz Ljava/lang/Class<*>;
2 19 2 languagesOptionValue Ljava/lang/StringBuilder;
4 5 3 language Ljava/lang/String;
11 19 3 preInitMethod Ljava/lang/reflect/Method;
Exception table:
from to target type
12 14 14 any
Exceptions:
throws java.lang.ReflectiveOperationException
MethodParameters:
Name Flags
languages
private static java.util.Collection<? extends com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext> findContexts(java.lang.String, java.util.Collection<? extends com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext>);
descriptor: (Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: java.lang.String java.util.Collection java.util.Set top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
astore 3
start local 3 3: aload 3
invokevirtual com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext.getLanguageId:()Ljava/lang/String;
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: aload 2
aload 3
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 languageId Ljava/lang/String;
0 7 1 contexts Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
1 7 2 result Ljava/util/Set<Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
3 5 3 context Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
Signature: (Ljava/lang/String;Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;)Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
MethodParameters:
Name Flags
languageId final
contexts
private static com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext findContext(java.lang.String, java.util.Collection<? extends com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext>);
descriptor: (Ljava/lang/String;Ljava/util/Collection;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.findContexts:(Ljava/lang/String;Ljava/util/Collection;)Ljava/util/Collection;
astore 2
start local 2 1: aload 2
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 2
aconst_null
goto 3
StackMap locals: java.util.Collection
StackMap stack:
2: aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
StackMap locals:
StackMap stack: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 languageId Ljava/lang/String;
0 4 1 contexts Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
1 4 2 found Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;
Signature: (Ljava/lang/String;Ljava/util/Collection<+Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;>;)Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$CountingContext;
MethodParameters:
Name Flags
languageId final
contexts
static void setPatchable(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0088) ACC_STATIC, ACC_VARARGS
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.patchableLanguages:Ljava/util/Set;
invokeinterface java.util.Set.clear:()V
1: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.patchableLanguages:Ljava/util/Set;
aload 0
invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
pop
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 languageIds [Ljava/lang/String;
MethodParameters:
Name Flags
languageIds
private static int nextId();
descriptor: ()I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=0
0: getstatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.NEXT_ORDER_INDEX:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
istore 0
start local 0 1: iload 0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 2 0 id I
private static void lambda$0(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.RuntimeException
dup
ldc "patchContext() exception"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$1(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.RuntimeException
dup
ldc "patchContext() exception"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$2(java.nio.file.Path, java.util.List, java.nio.file.Path, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/nio/file/Path;Ljava/util/List;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=5, args_size=4
start local 3 0: aload 3
aload 0
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 4
start local 4 1: aload 1
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: aload 3
aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 4
3: aload 1
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 3
ldc "relative_file"
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 4
5: aload 1
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 4 6: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 7 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
1 6 4 f Lcom/oracle/truffle/api/TruffleFile;
private static void lambda$3(java.util.List, java.nio.file.Path, java.nio.file.Path, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/List;Ljava/nio/file/Path;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=4
start local 3 0: aload 0
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.isAbsolute:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
1: aload 1
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
aload 0
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: ldc "exec"
aload 0
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.read:(Lcom/oracle/truffle/api/TruffleFile;)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 0
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.isAbsolute:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
aload 0
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
5: ldc "abs"
aload 0
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.read:(Lcom/oracle/truffle/api/TruffleFile;)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 0
iconst_2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.isAbsolute:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
7: ldc "relative_file"
aload 0
iconst_2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: goto 11
StackMap locals:
StackMap stack: java.io.IOException
9: astore 4
start local 4 10: new java.lang.RuntimeException
dup
aload 4
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 11: StackMap locals:
StackMap stack:
return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 12 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
10 11 4 ioe Ljava/io/IOException;
Exception table:
from to target type
0 8 9 Class java.io.IOException
private void lambda$4(com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event);
descriptor: (Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: ldc "ContextPreInitializationFirst"
aload 1
getfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event.language:Lcom/oracle/truffle/api/nodes/LanguageInfo;
invokevirtual com.oracle.truffle.api.nodes.LanguageInfo.getId:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
1: new java.util.concurrent.CountDownLatch
dup
iconst_1
invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
astore 2
start local 2 2: new java.lang.Thread
dup
new com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$2
dup
aload 0
aload 1
aload 2
invokespecial com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$2.<init>:(Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;Ljava/util/concurrent/CountDownLatch;)V
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;)V
3: invokevirtual java.lang.Thread.start:()V
4: aload 2
invokevirtual java.util.concurrent.CountDownLatch.await:()V
5: goto 8
StackMap locals: com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event java.util.concurrent.CountDownLatch
StackMap stack: java.lang.InterruptedException
6: astore 3
start local 3 7: new java.lang.RuntimeException
dup
aload 3
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest;
0 9 1 e Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;
2 8 2 signal Ljava/util/concurrent/CountDownLatch;
7 8 3 ie Ljava/lang/InterruptedException;
Exception table:
from to target type
4 5 6 Class java.lang.InterruptedException
private static void lambda$5(java.util.concurrent.atomic.AtomicInteger, com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event);
descriptor: (Ljava/util/concurrent/atomic/AtomicInteger;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 e Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;
private static void lambda$6(java.util.concurrent.atomic.AtomicInteger, com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event);
descriptor: (Ljava/util/concurrent/atomic/AtomicInteger;Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 e Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$BaseInstrument$Event;
private static void lambda$7(java.util.List, java.nio.file.Path, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/List;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=4, args_size=3
start local 2 0: aload 2
ldc "relative"
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 3
start local 3 1: aload 0
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: aload 2
aload 1
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 3
3: aload 0
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 2
ldc "relative"
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 3
5: aload 0
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 2
aload 1
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
astore 3
7: aload 0
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 8: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 9 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
1 8 3 f Lcom/oracle/truffle/api/TruffleFile;
private static void lambda$8(java.nio.file.Path, java.util.List, java.nio.file.Path, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/nio/file/Path;Ljava/util/List;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=4
start local 3 0: aload 0
ldc "relative"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getAbsoluteFile:()Lcom/oracle/truffle/api/TruffleFile;
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
1: aload 2
aload 1
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getAbsoluteFile:()Lcom/oracle/truffle/api/TruffleFile;
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 0
ldc "relative"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
aload 1
iconst_2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getAbsoluteFile:()Lcom/oracle/truffle/api/TruffleFile;
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 2
aload 1
iconst_3
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleFile
invokevirtual com.oracle.truffle.api.TruffleFile.getAbsoluteFile:()Lcom/oracle/truffle/api/TruffleFile;
invokevirtual com.oracle.truffle.api.TruffleFile.getPath:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
4: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 5 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$9(java.util.concurrent.atomic.AtomicReference, java.nio.file.Path, java.util.concurrent.atomic.AtomicReference, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 3 0: aload 0
aload 3
aload 1
iconst_1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
1: aload 2
aload 3
aload 1
iconst_0
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
2: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 2
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 3
iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: invokestatic org.junit.Assert.assertFalse:(Z)V
5: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 6 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$10(java.util.concurrent.atomic.AtomicReference, java.nio.file.Path, java.util.concurrent.atomic.AtomicReference, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 3 0: aload 0
aload 3
aload 1
iconst_1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
1: aload 2
aload 3
aload 1
iconst_0
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
2: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 2
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 3
iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: invokestatic org.junit.Assert.assertFalse:(Z)V
5: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 6 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$11(java.util.concurrent.atomic.AtomicReference, java.nio.file.Path, java.util.concurrent.atomic.AtomicReference, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 3 0: aload 0
aload 3
aload 1
iconst_1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
1: aload 2
aload 3
aload 1
iconst_0
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
2: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 2
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
if_acmpne 3
iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: invokestatic org.junit.Assert.assertFalse:(Z)V
5: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 6 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$12(java.util.concurrent.atomic.AtomicReference, java.nio.file.Path, java.util.concurrent.atomic.AtomicReference, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Ljava/util/concurrent/atomic/AtomicReference;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 3 0: aload 0
aload 3
aload 1
iconst_1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
1: aload 2
aload 3
aload 1
iconst_0
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
2: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 3 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$13(java.util.concurrent.atomic.AtomicReference, java.nio.file.Path, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/nio/file/Path;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=3
start local 2 0: aload 0
aload 2
aload 1
iconst_1
invokestatic com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest.createSource:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/nio/file/Path;Z)Lcom/oracle/truffle/api/source/Source;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
1: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 2 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$14(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInstruments:()Ljava/util/Map;
ldc "ContextPreInitializationSecondInstrument"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.InstrumentInfo
astore 1
start local 1 1: ldc "Cannot find instrument ContextPreInitializationSecondInstrument"
aload 1
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/String;Ljava/lang/Object;)V
2: aload 0
aload 1
ldc Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$Service;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.lookup:(Lcom/oracle/truffle/api/InstrumentInfo;Ljava/lang/Class;)Ljava/lang/Object;
pop
3: ldc "Expected IllegalStateException"
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
4: goto 6
StackMap locals: com.oracle.truffle.api.TruffleLanguage$Env com.oracle.truffle.api.InstrumentInfo
StackMap stack: java.lang.IllegalStateException
5: pop
end local 1 6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
1 6 1 instrumentInfo Lcom/oracle/truffle/api/InstrumentInfo;
Exception table:
from to target type
2 4 5 Class java.lang.IllegalStateException
private static void lambda$15(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
ldc "ContextPreInitializationFirst"
ldc ""
ldc "onfinalize"
invokestatic com.oracle.truffle.api.source.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lcom/oracle/truffle/api/source/Source$LiteralBuilder;
invokevirtual com.oracle.truffle.api.source.Source$LiteralBuilder.build:()Lcom/oracle/truffle/api/source/Source;
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.parseInternal:(Lcom/oracle/truffle/api/source/Source;[Ljava/lang/String;)Lcom/oracle/truffle/api/CallTarget;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$16(com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult, java.lang.String, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;Ljava/lang/String;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 2 0: aload 0
aload 2
aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
putfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildInternalFile:Lcom/oracle/truffle/api/TruffleFile;
1: aload 0
aload 2
aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
putfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageBuildPublicFile:Lcom/oracle/truffle/api/TruffleFile;
2: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 3 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
private static void lambda$17(com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult, java.lang.String, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/test/polyglot/ContextPreInitializationTest$IsSameFileResult;Ljava/lang/String;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 2 0: aload 0
aload 2
aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
putfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecInternalFile:Lcom/oracle/truffle/api/TruffleFile;
1: aload 0
aload 2
aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getPublicTruffleFile:(Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
putfield com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult.imageExecPublicFile:Lcom/oracle/truffle/api/TruffleFile;
2: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 3 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
}
SourceFile: "ContextPreInitializationTest.java"
NestMembers:
com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$1 com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$2 com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage$1 com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage$2 com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationFirstInstrument com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationSecondInstrument com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationSecondInstrument$1 com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage$ServiceImpl com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestInternalLanguage com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service$Kind com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler
InnerClasses:
public final Builder = com.oracle.truffle.api.TruffleContext$Builder of com.oracle.truffle.api.TruffleContext
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public final LiteralBuilder = com.oracle.truffle.api.source.Source$LiteralBuilder of com.oracle.truffle.api.source.Source
public SourceBuilder = com.oracle.truffle.api.source.Source$SourceBuilder of com.oracle.truffle.api.source.Source
com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$2
final ActionKind = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ActionKind of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public abstract BaseInstrument = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
final Event = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument$Event of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseInstrument
BaseLanguage = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$BaseLanguage of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final ContextPreInitializationFirstInstrument = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationFirstInstrument of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final ContextPreInitializationSecondInstrument = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationSecondInstrument of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final ContextPreInitializationTestFirstLanguage = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestFirstLanguage of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final ContextPreInitializationTestInternalLanguage = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestInternalLanguage of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final ContextPreInitializationTestSecondLanguage = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSecondLanguage of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final ContextPreInitializationTestSharedLanguage = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$ContextPreInitializationTestSharedLanguage of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
CountingContext = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$CountingContext of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
private final IsSameFileResult = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$IsSameFileResult of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public abstract Service = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final Kind = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service$Kind of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$Service
private final TestHandler = com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest$TestHandler of com.oracle.truffle.api.test.polyglot.ContextPreInitializationTest
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source