public class com.oracle.truffle.sl.test.SLDebugTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.sl.test.SLDebugTest
super_class: java.lang.Object
{
private com.oracle.truffle.tck.DebuggerTester tester;
descriptor: Lcom/oracle/truffle/tck/DebuggerTester;
flags: (0x0002) ACC_PRIVATE
private static volatile int[] $SWITCH_TABLE$com$oracle$truffle$sl$test$SLDebugTest$StepDepth;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/sl/test/SLDebugTest;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.sl.test.SLDebugTest.$assertionsDisabled:Z
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/sl/test/SLDebugTest;
public void before();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
new com.oracle.truffle.tck.DebuggerTester
dup
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;
invokespecial com.oracle.truffle.tck.DebuggerTester.<init>:(Lorg/graalvm/polyglot/Context$Builder;)V
putfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public void dispose();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
invokevirtual com.oracle.truffle.tck.DebuggerTester.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
RuntimeVisibleAnnotations:
org.junit.After()
private void startEval(org.graalvm.polyglot.Source);
descriptor: (Lorg/graalvm/polyglot/Source;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
aload 1
invokevirtual com.oracle.truffle.tck.DebuggerTester.startEval:(Lorg/graalvm/polyglot/Source;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 code Lorg/graalvm/polyglot/Source;
MethodParameters:
Name Flags
code
private static org.graalvm.polyglot.Source slCode(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc "sl"
aload 0
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 code Ljava/lang/String;
MethodParameters:
Name Flags
code
private com.oracle.truffle.api.debug.DebuggerSession startSession();
descriptor: ()Lcom/oracle/truffle/api/debug/DebuggerSession;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
invokevirtual com.oracle.truffle.tck.DebuggerTester.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
private com.oracle.truffle.api.debug.DebuggerSession startSession(com.oracle.truffle.api.debug.SourceElement[]);
descriptor: ([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/DebuggerSession;
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
aload 1
invokevirtual com.oracle.truffle.tck.DebuggerTester.startSession:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/DebuggerSession;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 1 1 sourceElements [Lcom/oracle/truffle/api/debug/SourceElement;
MethodParameters:
Name Flags
sourceElements
private java.lang.String expectDone();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
invokevirtual com.oracle.truffle.tck.DebuggerTester.expectDone:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
private void expectSuspended(com.oracle.truffle.api.debug.SuspendedCallback);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
aload 1
invokevirtual com.oracle.truffle.tck.DebuggerTester.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 callback Lcom/oracle/truffle/api/debug/SuspendedCallback;
MethodParameters:
Name Flags
callback
protected com.oracle.truffle.api.debug.SuspendedEvent checkState(com.oracle.truffle.api.debug.SuspendedEvent, java.lang.String, int, boolean, java.lang.String, java.lang.String[]);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=4, locals=10, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
istore 7
start local 7 1: iload 3
i2l
iload 7
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getCharacters:()Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
astore 8
start local 8 3: aload 5
aload 8
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
4: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
if_acmpne 5
iconst_1
goto 6
StackMap locals: int java.lang.String
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 9
start local 9 7: iload 4
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iload 9
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: aload 0
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
aload 2
aload 6
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
9: aload 1
areturn
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 10 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 10 1 suspendedEvent Lcom/oracle/truffle/api/debug/SuspendedEvent;
0 10 2 name Ljava/lang/String;
0 10 3 expectedLineNumber I
0 10 4 expectedIsBefore Z
0 10 5 expectedCode Ljava/lang/String;
0 10 6 expectedFrame [Ljava/lang/String;
1 10 7 actualLineNumber I
3 10 8 actualCode Ljava/lang/String;
7 10 9 actualIsBefore Z
MethodParameters:
Name Flags
suspendedEvent
name
expectedLineNumber final
expectedIsBefore final
expectedCode final
expectedFrame final
protected void checkStack(com.oracle.truffle.api.debug.DebugStackFrame, java.lang.String, java.lang.String[]);
descriptor: (Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
1: ldc "variables"
aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
aload 3
invokestatic com.oracle.truffle.sl.test.SLDebugTest.checkDebugValues:(Ljava/lang/String;Lcom/oracle/truffle/api/debug/DebugScope;[Ljava/lang/String;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 3 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
0 3 2 name Ljava/lang/String;
0 3 3 expectedFrame [Ljava/lang/String;
MethodParameters:
Name Flags
frame
name
expectedFrame
private static void checkDebugValues(java.lang.String, com.oracle.truffle.api.debug.DebugScope, java.lang.String[]);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/debug/DebugScope;[Ljava/lang/String;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 3
start local 3 1: aload 1
astore 4
start local 4 2: goto 8
3: StackMap locals: java.util.Map com.oracle.truffle.api.debug.DebugScope
StackMap stack:
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: java.lang.String com.oracle.truffle.api.debug.DebugScope java.lang.String[] java.util.Map com.oracle.truffle.api.debug.DebugScope top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 5
start local 5 5: aload 3
aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 4
invokevirtual com.oracle.truffle.api.debug.DebugScope.getParent:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 4
8: StackMap locals: java.lang.String com.oracle.truffle.api.debug.DebugScope java.lang.String[] java.util.Map com.oracle.truffle.api.debug.DebugScope
StackMap stack:
aload 4
ifnonnull 3
9: aload 0
aload 3
aload 2
invokestatic com.oracle.truffle.sl.test.SLDebugTest.checkDebugValues:(Ljava/lang/String;Ljava/util/Map;[Ljava/lang/String;)V
10: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 msg Ljava/lang/String;
0 11 1 scope Lcom/oracle/truffle/api/debug/DebugScope;
0 11 2 expected [Ljava/lang/String;
1 11 3 valMap Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/api/debug/DebugValue;>;
2 11 4 currentScope Lcom/oracle/truffle/api/debug/DebugScope;
5 6 5 value Lcom/oracle/truffle/api/debug/DebugValue;
MethodParameters:
Name Flags
msg
scope
expected
private static void checkDebugValues(java.lang.String, java.util.Map<java.lang.String, com.oracle.truffle.api.debug.DebugValue>, java.lang.String[]);
descriptor: (Ljava/lang/String;Ljava/util/Map;[Ljava/lang/String;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: ldc "Frame %s expected %s got %s"
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 2
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
aastore
dup
iconst_2
aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 3
start local 3 1: aload 3
aload 2
arraylength
iconst_2
idiv
i2l
aload 1
invokeinterface java.util.Map.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/String;JJ)V
2: iconst_0
istore 4
start local 4 3: goto 10
4: StackMap locals: java.lang.String int
StackMap stack:
aload 2
iload 4
aaload
astore 5
start local 5 5: aload 2
iload 4
iconst_1
iadd
aaload
astore 6
start local 6 6: aload 1
aload 5
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 7
start local 7 7: aload 7
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
8: aload 6
aload 7
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 end local 6 end local 5 9: iinc 4 2
StackMap locals:
StackMap stack:
10: iload 4
aload 2
arraylength
if_icmplt 4
end local 4 11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 msg Ljava/lang/String;
0 12 1 valMap Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/api/debug/DebugValue;>;
0 12 2 expected [Ljava/lang/String;
1 12 3 message Ljava/lang/String;
3 11 4 i I
5 9 5 expectedIdentifier Ljava/lang/String;
6 9 6 expectedValue Ljava/lang/String;
7 9 7 value Lcom/oracle/truffle/api/debug/DebugValue;
Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/api/debug/DebugValue;>;[Ljava/lang/String;)V
MethodParameters:
Name Flags
msg
valMap
expected
public void testBreakpoint();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: ldc "function main() {\n return fac(5);\n}\nfunction fac(n) {\n if (n <= 1) {\n return 1;\n }\n return n * fac(n - 1);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
4: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 6
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
astore 5
start local 5 5: aload 0
aload 0
aload 5
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$0(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$1(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$2(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$3(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$4(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
10: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$5(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
11: ldc "120"
aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 5 12: aload 4
ifnull 18
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 18
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
13: astore 2
aload 4
ifnull 14
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
14: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 3
aload 2
ifnonnull 16
aload 3
astore 2
goto 17
StackMap locals:
StackMap stack:
16: aload 2
aload 3
if_acmpeq 17
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 2
athrow
18: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 19 1 factorial Lorg/graalvm/polyglot/Source;
3 14 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
5 12 5 breakpoint Lcom/oracle/truffle/api/debug/Breakpoint;
Exception table:
from to target type
3 12 13 any
2 15 15 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testGuestFunctionBreakpoints();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: ldc "function main() {\n a = fac;\n return fac(5);\n}\nfunction fac(n) {\n if (n <= 1) {\n return 1;\n }\n return n * facMin1(n);\n}\nfunction facMin1(n) {\n m = n - 1;\n return fac(m);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: iconst_1
anewarray com.oracle.truffle.api.debug.Breakpoint
astore 5
start local 5 6: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$6(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
aload 4
aload 5
invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/DebuggerSession;[Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$7(Lcom/oracle/truffle/api/debug/DebuggerSession;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$8(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
aload 5
invokedynamic onSuspend([Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$9([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
10: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
end local 5 11: aload 4
ifnull 17
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 17
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
12: astore 2
aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
13: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 3
aload 2
ifnonnull 15
aload 3
astore 2
goto 16
StackMap locals:
StackMap stack:
15: aload 2
aload 3
if_acmpeq 16
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 2
athrow
17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 18 1 functions Lorg/graalvm/polyglot/Source;
3 13 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
6 11 5 functionBreakpoint [Lcom/oracle/truffle/api/debug/Breakpoint;
Exception table:
from to target type
3 11 12 any
2 14 14 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testBuiltInFunctionBreakpoints();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: ldc "function main() {\n a = isNull;\n b = nanoTime;\n isNull(a);\n isExecutable(a);\n isNull(b);\n nanoTime();\n isNull(a);\n nanoTime();\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: iconst_1
anewarray com.oracle.truffle.api.debug.Breakpoint
astore 5
start local 5 6: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$10(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
aload 4
aload 5
invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/DebuggerSession;[Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$11(Lcom/oracle/truffle/api/debug/DebuggerSession;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
aload 5
aload 4
invokedynamic onSuspend([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$12([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
aload 5
invokedynamic onSuspend([Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$13([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
10: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
end local 5 11: aload 4
ifnull 17
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 17
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
12: astore 2
aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
13: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 3
aload 2
ifnonnull 15
aload 3
astore 2
goto 16
StackMap locals:
StackMap stack:
15: aload 2
aload 3
if_acmpeq 16
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 2
athrow
17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 18 1 functions Lorg/graalvm/polyglot/Source;
3 13 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
6 11 5 functionBreakpoint [Lcom/oracle/truffle/api/debug/Breakpoint;
Exception table:
from to target type
3 11 12 any
2 14 14 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testStepInOver();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: ldc "function main() {\n return fac(5);\n}\nfunction fac(n) {\n if (n <= 1) {\n return 1;\n }\n return n * fac(n - 1);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$14(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$15(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$16(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$17(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
10: aload 4
ifnull 16
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 16
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
11: astore 2
aload 4
ifnull 12
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 17 1 factorial Lorg/graalvm/polyglot/Source;
3 12 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 10 11 any
2 13 13 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSuspendHereFromHost();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: ldc "function foo(hostCall) {\n hostCall();\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
4: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
5: new com.oracle.truffle.sl.test.SLDebugTest$HostFunction
dup
aload 4
invokespecial com.oracle.truffle.sl.test.SLDebugTest$HostFunction.<init>:(Lcom/oracle/truffle/api/debug/DebuggerSession;)V
astore 5
start local 5 6: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
aload 5
invokedynamic apply(Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;)Ljava/util/function/Function;
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;)Ljava/lang/Object;
com/oracle/truffle/sl/test/SLDebugTest.lambda$18(Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/Value; (6)
(Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/Value;
invokevirtual com.oracle.truffle.tck.DebuggerTester.startExecute:(Ljava/util/function/Function;)V
7: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$19(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
end local 5 9: aload 4
ifnull 15
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 15
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
10: astore 2
aload 4
ifnull 11
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
11: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 3
aload 2
ifnonnull 13
aload 3
astore 2
goto 14
StackMap locals:
StackMap stack:
13: aload 2
aload 3
if_acmpeq 14
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 2
athrow
15: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 16 1 testSource Lorg/graalvm/polyglot/Source;
3 11 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
6 9 5 hostFunction Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;
Exception table:
from to target type
3 9 10 any
2 12 12 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testStepFromSuspendHere();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: ldc "function foo(hostCall) {\n hostCall();\n x = 5;\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
4: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
5: new com.oracle.truffle.sl.test.SLDebugTest$HostFunction
dup
aload 4
invokespecial com.oracle.truffle.sl.test.SLDebugTest$HostFunction.<init>:(Lcom/oracle/truffle/api/debug/DebuggerSession;)V
astore 5
start local 5 6: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
aload 5
invokedynamic apply(Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;)Ljava/util/function/Function;
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;)Ljava/lang/Object;
com/oracle/truffle/sl/test/SLDebugTest.lambda$20(Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/Value; (6)
(Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/Value;
invokevirtual com.oracle.truffle.tck.DebuggerTester.startExecute:(Ljava/util/function/Function;)V
7: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$21(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$22(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
end local 5 10: aload 4
ifnull 16
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 16
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
11: astore 2
aload 4
ifnull 12
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 17 1 testSource Lorg/graalvm/polyglot/Source;
3 12 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
6 10 5 hostFunction Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;
Exception table:
from to target type
3 10 11 any
2 13 13 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDebugger();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: ldc "function main() {\n return fac(5);\n}\nfunction fac(n) {\n if (n <= 1) {\n debugger; return 1;\n }\n return n * fac(n - 1);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
4: aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getBreakpoints:()Ljava/util/List;
pop
5: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$23(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
7: aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 13
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
8: astore 2
aload 4
ifnull 9
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
9: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 3
aload 2
ifnonnull 11
aload 3
astore 2
goto 12
StackMap locals:
StackMap stack:
11: aload 2
aload 3
if_acmpeq 12
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 2
athrow
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 14 1 factorial Lorg/graalvm/polyglot/Source;
3 9 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 7 8 any
2 10 10 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testTimeboxing();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=1
start local 0 0: ldc "function main() {\n i = 1; \n while(i > 0) {\n i = i + 1;\n }\n return i; \n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "sl"
aastore
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 2
start local 2 2: aload 2
invokevirtual org.graalvm.polyglot.Context.getEngine:()Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Engine.getInstruments:()Ljava/util/Map;
ldc "debugger"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.polyglot.Instrument
ldc Lcom/oracle/truffle/api/debug/Debugger;
invokevirtual org.graalvm.polyglot.Instrument.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.Debugger
astore 3
start local 3 3: new java.util.Timer
dup
invokespecial java.util.Timer.<init>:()V
astore 4
start local 4 4: aload 4
new com.oracle.truffle.sl.test.SLDebugTest$1
dup
aload 0
aload 3
invokespecial com.oracle.truffle.sl.test.SLDebugTest$1.<init>:(Lcom/oracle/truffle/sl/test/SLDebugTest;Lcom/oracle/truffle/api/debug/Debugger;)V
5: lconst_0
ldc 10
6: invokevirtual java.util.Timer.schedule:(Ljava/util/TimerTask;JJ)V
7: aload 2
aload 1
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
pop
8: invokestatic org.junit.Assert.fail:()V
9: goto 12
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source org.graalvm.polyglot.Context com.oracle.truffle.api.debug.Debugger java.util.Timer
StackMap stack: org.graalvm.polyglot.PolyglotException
10: astore 5
start local 5 11: aload 5
invokevirtual org.graalvm.polyglot.PolyglotException.isCancelled:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
end local 5 12: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.util.Timer.cancel:()V
13: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 14 1 endlessLoop Lorg/graalvm/polyglot/Source;
2 14 2 context Lorg/graalvm/polyglot/Context;
3 14 3 debugger Lcom/oracle/truffle/api/debug/Debugger;
4 14 4 timer Ljava/util/Timer;
11 12 5 pex Lorg/graalvm/polyglot/PolyglotException;
Exception table:
from to target type
7 9 10 Class org.graalvm.polyglot.PolyglotException
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testNull();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: ldc "function main() {\n res = doNull();\n return res;\n}\nfunction doNull() {}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$24(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$25(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: ldc "NULL"
aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: aload 4
ifnull 14
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 14
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
9: astore 2
aload 4
ifnull 10
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
10: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 3
aload 2
ifnonnull 12
aload 3
astore 2
goto 13
StackMap locals:
StackMap stack:
12: aload 2
aload 3
if_acmpeq 13
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 2
athrow
14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 15 1 factorial Lorg/graalvm/polyglot/Source;
3 10 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 8 9 any
2 11 11 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDebugValue();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: ldc "function main() {\n a = doNull();\n b = 10 == 10;\n c = 10;\n d = \"str\";\n e = new();\n e.p1 = 1;\n e.p2 = new();\n e.p2.p21 = 21;\n return;\n}\nfunction doNull() {}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 10
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$26(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
7: aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 13
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
8: astore 2
aload 4
ifnull 9
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
9: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 3
aload 2
ifnonnull 11
aload 3
astore 2
goto 12
StackMap locals:
StackMap stack:
11: aload 2
aload 3
if_acmpeq 12
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 2
athrow
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 14 1 varsSource Lorg/graalvm/polyglot/Source;
3 9 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 7 8 any
2 10 10 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testValuesScope();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: ldc "function main() {\n a = 1;\n if (a > 0) {\n b = 10;\n println(b);\n }\n println(b);\n println(a);\n println(\"END.\");\n}"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$27(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$28(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$29(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$30(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$31(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
10: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
11: aload 4
ifnull 17
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 17
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
12: astore 2
aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
13: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 3
aload 2
ifnonnull 15
aload 3
astore 2
goto 16
StackMap locals:
StackMap stack:
15: aload 2
aload 3
if_acmpeq 16
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 2
athrow
17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 18 1 varsSource Lorg/graalvm/polyglot/Source;
3 13 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 11 12 any
2 14 14 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testMetaObjects();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: ldc "function main() {\n a = doNull();\n b = 10 == 10;\n c = 10;\n cBig = 1000000000*1000000000*1000000000*1000000000;\n d = \"str\";\n e = new();\n f = doNull;\n return;\n}\nfunction doNull() {}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 9
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$32(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
7: aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 13
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
8: astore 2
aload 4
ifnull 9
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
9: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 3
aload 2
ifnonnull 11
aload 3
astore 2
goto 12
StackMap locals:
StackMap stack:
11: aload 2
aload 3
if_acmpeq 12
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 2
athrow
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 14 1 varsSource Lorg/graalvm/polyglot/Source;
3 9 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 7 8 any
2 10 10 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testSourceLocation();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: ldc "function main() {\n a = doNull();\n c = 10;\n d = \"str\";\n e = new();\n f = doNull;\n return;\n}\nfunction doNull() {}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 7
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$33(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
7: aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 13
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
8: astore 2
aload 4
ifnull 9
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
9: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 3
aload 2
ifnonnull 11
aload 3
astore 2
goto 12
StackMap locals:
StackMap stack:
11: aload 2
aload 3
if_acmpeq 12
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 2
athrow
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 14 1 varsSource Lorg/graalvm/polyglot/Source;
3 9 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 7 8 any
2 10 10 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testStack();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: ldc "function main() {\n return fac(10);\n}\nfunction fac(n) {\n if (n <= 1) {\n return 1;\n }\n return n * fac(n - 1);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 6
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$34(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
7: aload 4
ifnull 13
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 13
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
8: astore 2
aload 4
ifnull 9
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
9: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 3
aload 2
ifnonnull 11
aload 3
astore 2
goto 12
StackMap locals:
StackMap stack:
11: aload 2
aload 3
if_acmpeq 12
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 2
athrow
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 14 1 stackSource Lorg/graalvm/polyglot/Source;
3 9 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 7 8 any
2 10 10 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testStackInterop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=1
start local 0 0: ldc "function fac(n, multiply) {\n if (n <= 1) {\n debugger;\n return 1;\n }\n return multiply.multiply(n, fac, n - 1);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "sl"
aastore
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
astore 2
start local 2 2: aload 2
aload 1
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
pop
3: aload 2
ldc "sl"
invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
ldc "fac"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 4: new com.oracle.truffle.sl.test.SLDebugTest$Multiply
dup
invokespecial com.oracle.truffle.sl.test.SLDebugTest$Multiply.<init>:()V
astore 4
start local 4 5: aload 2
invokevirtual org.graalvm.polyglot.Context.getEngine:()Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Engine.getInstruments:()Ljava/util/Map;
ldc "debugger"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.polyglot.Instrument
ldc Lcom/oracle/truffle/api/debug/Debugger;
invokevirtual org.graalvm.polyglot.Instrument.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.Debugger
astore 5
start local 5 6: iconst_1
newarray 4
astore 6
start local 6 7: aconst_null
astore 7
aconst_null
astore 8
8: aload 5
aload 6
invokedynamic onSuspend([Z)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$35([ZLcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.api.debug.Debugger.startSession:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 9
start local 9 9: aload 9
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
10: aload 3
iconst_2
anewarray java.lang.Object
dup
iconst_0
bipush 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 4
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 10
start local 10 11: aload 10
invokevirtual org.graalvm.polyglot.Value.asLong:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
ldc 3628800.0
invokestatic com.oracle.truffle.sl.test.SLDebugTest.assertNumber:(Ljava/lang/Object;D)V
end local 10 12: aload 9
ifnull 18
aload 9
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 18
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source org.graalvm.polyglot.Context org.graalvm.polyglot.Value java.lang.Object com.oracle.truffle.api.debug.Debugger boolean[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
13: astore 7
aload 9
ifnull 14
aload 9
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 9 StackMap locals:
StackMap stack:
14: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 8
aload 7
ifnonnull 16
aload 8
astore 7
goto 17
StackMap locals:
StackMap stack:
16: aload 7
aload 8
if_acmpeq 17
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 7
athrow
18: StackMap locals:
StackMap stack:
aload 6
iconst_0
baload
invokestatic org.junit.Assert.assertTrue:(Z)V
19: 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 20 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 20 1 stackSource Lorg/graalvm/polyglot/Source;
2 20 2 context Lorg/graalvm/polyglot/Context;
4 20 3 fac Lorg/graalvm/polyglot/Value;
5 20 4 multiply Ljava/lang/Object;
6 20 5 debugger Lcom/oracle/truffle/api/debug/Debugger;
7 20 6 done [Z
9 14 9 session Lcom/oracle/truffle/api/debug/DebuggerSession;
11 12 10 ret Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
9 12 13 any
8 15 15 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testUnwindAndReenter();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: ldc "function main() {\n return fac(10);\n}\nfunction fac(n) {\n if (n <= 1) {\n return 1;\n }\n return n * fac(n - 1);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 6
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$36(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$37(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$38(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$39(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
10: aload 4
ifnull 16
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 16
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
11: astore 2
aload 4
ifnull 12
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 17 1 source Lorg/graalvm/polyglot/Source;
3 12 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 10 11 any
2 13 13 any
RuntimeVisibleAnnotations:
org.junit.Test()
public void testArgumentsAndValues();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: ldc "function main() {\n i = 10;\n return fnc(i = i + 1, 20);\n}\nfunction fnc(n, m) {\n x = n + m;\n n = m - n;\n m = m / 2;\n x = x + n * m;\n return x;\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: aload 4
aload 1
invokestatic com.oracle.truffle.tck.DebuggerTester.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
bipush 6
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
4: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
5: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$40(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
6: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$41(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$42(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
aload 0
invokedynamic onSuspend(Lcom/oracle/truffle/sl/test/SLDebugTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$43(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: ldc "121"
aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: aload 4
ifnull 16
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 16
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
11: astore 2
aload 4
ifnull 12
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 17 1 source Lorg/graalvm/polyglot/Source;
3 12 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
Exception table:
from to target type
3 10 11 any
2 13 13 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testMisplacedLineBreakpoints();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
ldc "// A comment\nfunction invocable(n) {\n if (R3_n <= 1) {\n R4-6_one \n =\n 1;\n R7-9_return\n one;\n } else {\n // A comment\n while (\n R10-12_n > 0\n ) { \n R13-16_one \n = \n 2;\n R17-20_n = n -\n one *\n one;\n }\n R21_n =\n n - 1; R22_n = n + 1;\n R23-27_return\n n * n;\n \n }\n}\n\nfunction\n main()\n {\n R31-33_return invocable(1) + invocable(2);\n}\n\n"
new com.oracle.truffle.sl.test.SLDebugTest$2
dup
aload 0
invokespecial com.oracle.truffle.sl.test.SLDebugTest$2.<init>:(Lcom/oracle/truffle/sl/test/SLDebugTest;)V
1: ldc "R"
ldc "sl"
2: invokevirtual com.oracle.truffle.tck.DebuggerTester.assertLineBreakpointsResolution:(Ljava/lang/String;Lcom/oracle/truffle/tck/DebuggerTester$PositionPredicate;Ljava/lang/String;Ljava/lang/String;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testMisplacedColumnBreakpoints();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
ldc "// A comment\nfunction invocable(B3_n) {\n if (R3_n <= 1) B4_ B5_{B6_\n R4-7_one \n =\n B7_1;\n R8_return\n one;\n B8_}B9_ else B10_ {\n // A commentB11_\n while (\n R9-11_n > 0\n ) B12_ { \n R12_one \n = \n 2;\n R13-14_n = n -\n one *\n one;\n B13_ B14_}B15_\n R15-16_return\n n * n;\n \n }B16_\n}\n\nfunction\n main()\n {\n return invocable(1) + invocable(2);\n}\n\n"
ldc "B"
ldc "R"
ldc "sl"
invokevirtual com.oracle.truffle.tck.DebuggerTester.assertColumnBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
public void testBreakpointEverywhereBreaks();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: ldc "sl"
ldc "// A comment\nfunction invocable(n) {\n if (n <= 1) {\n one \n =\n 1;\n return\n one;\n } else {\n // A comment\n while (\n n > 0\n ) { \n one \n = \n 2;\n n = n -\n one *\n one;\n }\n return\n n * n;\n \n }\n}\n\nfunction\n main()\n {\n return invocable(1) + invocable(2);\n}\n\n"
ldc "testBreakpointsAnywhere.sl"
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aload 0
getfield com.oracle.truffle.sl.test.SLDebugTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
aload 1
new com.oracle.truffle.sl.test.SLDebugTest$3
dup
aload 0
invokespecial com.oracle.truffle.sl.test.SLDebugTest$3.<init>:(Lcom/oracle/truffle/sl/test/SLDebugTest;)V
invokevirtual com.oracle.truffle.tck.DebuggerTester.assertBreakpointsBreakEverywhere:(Lorg/graalvm/polyglot/Source;Lcom/oracle/truffle/tck/DebuggerTester$PositionPredicate;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 3 1 source Lorg/graalvm/polyglot/Source;
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
private void checkExpressionStepPositions(java.lang.String, boolean, com.oracle.truffle.sl.test.SLDebugTest$StepDepth[]);
descriptor: (Ljava/lang/String;Z[Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=5, locals=17, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc "function main() {\n x = 2;\n while (x >= 0 && 5 >= 0) {\n a = 2 * x;\n b = (a * a) / (x * x + 1);\n x = x - transform(a, b);\n }\n return x / 1;\n}\nfunction transform(a, b) {\n return (1 + 1) * (a + b);\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 4
start local 4 1: iload 2
ifeq 4
2: iconst_2
anewarray com.oracle.truffle.api.debug.SourceElement
dup
iconst_0
getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
aastore
dup
iconst_1
getstatic com.oracle.truffle.api.debug.SourceElement.STATEMENT:Lcom/oracle/truffle/api/debug/SourceElement;
aastore
astore 5
start local 5 3: goto 5
end local 5 4: StackMap locals: org.graalvm.polyglot.Source
StackMap stack:
iconst_1
anewarray com.oracle.truffle.api.debug.SourceElement
dup
iconst_0
getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
aastore
astore 5
start local 5 5: StackMap locals: com.oracle.truffle.api.debug.SourceElement[]
StackMap stack:
aconst_null
astore 6
aconst_null
astore 7
6: aload 0
aload 5
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 8
start local 8 7: aload 8
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
8: aload 0
aload 4
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
9: aload 3
iconst_0
aaload
astore 9
start local 9 10: iconst_0
istore 10
start local 10 11: invokestatic com.oracle.truffle.api.debug.StepConfig.newBuilder:()Lcom/oracle/truffle/api/debug/StepConfig$Builder;
aload 5
invokevirtual com.oracle.truffle.api.debug.StepConfig$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/StepConfig$Builder;
invokevirtual com.oracle.truffle.api.debug.StepConfig$Builder.build:()Lcom/oracle/truffle/api/debug/StepConfig;
astore 11
start local 11 12: aload 1
ldc "\n"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 15
arraylength
istore 14
iconst_0
istore 13
goto 19
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest java.lang.String int com.oracle.truffle.sl.test.SLDebugTest$StepDepth[] org.graalvm.polyglot.Source com.oracle.truffle.api.debug.SourceElement[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.sl.test.SLDebugTest$StepDepth int com.oracle.truffle.api.debug.StepConfig top int int java.lang.String[]
StackMap stack:
13: aload 15
iload 13
aaload
astore 12
start local 12 14: iload 10
aload 3
arraylength
if_icmpge 16
15: aload 3
iload 10
iinc 10 1
aaload
astore 9
16: StackMap locals: com.oracle.truffle.sl.test.SLDebugTest java.lang.String int com.oracle.truffle.sl.test.SLDebugTest$StepDepth[] org.graalvm.polyglot.Source com.oracle.truffle.api.debug.SourceElement[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.sl.test.SLDebugTest$StepDepth int com.oracle.truffle.api.debug.StepConfig java.lang.String int int java.lang.String[]
StackMap stack:
aload 9
astore 16
start local 16 17: aload 0
iload 2
aload 12
aload 16
aload 11
invokedynamic onSuspend(ZLjava/lang/String;Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;Lcom/oracle/truffle/api/debug/StepConfig;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$44(ZLjava/lang/String;Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;Lcom/oracle/truffle/api/debug/StepConfig;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
end local 16 end local 12 18: iinc 13 1
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest java.lang.String int com.oracle.truffle.sl.test.SLDebugTest$StepDepth[] org.graalvm.polyglot.Source com.oracle.truffle.api.debug.SourceElement[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.sl.test.SLDebugTest$StepDepth int com.oracle.truffle.api.debug.StepConfig top int int java.lang.String[]
StackMap stack:
19: iload 13
iload 14
if_icmplt 13
20: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
pop
end local 11 end local 10 end local 9 21: aload 8
ifnull 27
aload 8
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 27
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest java.lang.String int com.oracle.truffle.sl.test.SLDebugTest$StepDepth[] org.graalvm.polyglot.Source com.oracle.truffle.api.debug.SourceElement[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
22: astore 6
aload 8
ifnull 23
aload 8
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 8 StackMap locals:
StackMap stack:
23: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
24: astore 7
aload 6
ifnonnull 25
aload 7
astore 6
goto 26
StackMap locals:
StackMap stack:
25: aload 6
aload 7
if_acmpeq 26
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
26: aload 6
athrow
27: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 28 1 stepPositions Ljava/lang/String;
0 28 2 includeStatements Z
0 28 3 steps [Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
1 28 4 source Lorg/graalvm/polyglot/Source;
3 4 5 elements [Lcom/oracle/truffle/api/debug/SourceElement;
5 28 5 elements [Lcom/oracle/truffle/api/debug/SourceElement;
7 23 8 session Lcom/oracle/truffle/api/debug/DebuggerSession;
10 21 9 lastStep Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
11 21 10 stepIndex I
12 21 11 expressionStepConfig Lcom/oracle/truffle/api/debug/StepConfig;
14 18 12 stepPos Ljava/lang/String;
17 18 16 stepDepth Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
Exception table:
from to target type
7 21 22 any
6 24 24 any
MethodParameters:
Name Flags
stepPositions
includeStatements
steps
public void testExpressionStepInto();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "<2:3 - 2:7> <none>\n<2:7 - 2:7> <none>\n<2:7 - 2:7> () 2\n<2:3 - 2:7> (2) 2\n<3:10 - 3:25> <none>\n<3:10 - 3:15> <none>\n<3:10 - 3:10> <none>\n<3:10 - 3:10> () 2\n<3:15 - 3:15> <none>\n<3:15 - 3:15> () 0\n<3:10 - 3:15> (2,0) true\n<3:20 - 3:25> <none>\n<3:20 - 3:20> <none>\n<3:20 - 3:20> () 5\n<3:25 - 3:25> <none>\n<3:25 - 3:25> () 0\n<3:20 - 3:25> (5,0) true\n<3:10 - 3:25> (true,true) true\n<4:5 - 4:13> <none>\n<4:9 - 4:13> <none>\n<4:9 - 4:9> <none>\n<4:9 - 4:9> () 2\n<4:13 - 4:13> <none>\n<4:13 - 4:13> () 2\n<4:9 - 4:13> (2,2) 4\n<4:5 - 4:13> (4) 4\n<5:5 - 5:29> <none>\n<5:9 - 5:29> <none>\n<5:10 - 5:14> <none>\n<5:10 - 5:10> <none>\n<5:10 - 5:10> () 4\n<5:14 - 5:14> <none>\n<5:14 - 5:14> () 4\n<5:10 - 5:14> (4,4) 16\n<5:20 - 5:28> <none>\n<5:20 - 5:24> <none>\n<5:20 - 5:20> <none>\n<5:20 - 5:20> () 2\n<5:24 - 5:24> <none>\n<5:24 - 5:24> () 2\n<5:20 - 5:24> (2,2) 4\n<5:28 - 5:28> <none>\n<5:28 - 5:28> () 1\n<5:20 - 5:28> (4,1) 5\n<5:9 - 5:29> () 3\n<5:5 - 5:29> (3) 3\n<6:5 - 6:27> <none>\n<6:9 - 6:27> <none>\n<6:9 - 6:9> <none>\n<6:9 - 6:9> () 2\n<6:13 - 6:27> <none>\n<6:13 - 6:21> <none>\n<6:13 - 6:21> () transform\n<6:23 - 6:23> <none>\n<6:23 - 6:23> () 4\n<6:26 - 6:26> <none>\n<6:26 - 6:26> () 3\n<11:10 - 11:26> <none>\n<11:11 - 11:15> <none>\n<11:11 - 11:11> <none>\n<11:11 - 11:11> () 1\n<11:15 - 11:15> <none>\n<11:15 - 11:15> () 1\n<11:11 - 11:15> (1,1) 2\n<11:21 - 11:25> <none>\n<11:21 - 11:21> <none>\n<11:21 - 11:21> () 4\n<11:25 - 11:25> <none>\n<11:25 - 11:25> () 3\n<11:21 - 11:25> (4,3) 7\n<11:10 - 11:26> () 14\n<6:13 - 6:27> (transform,4,3) 14\n<6:9 - 6:27> (2,14) -12\n<6:5 - 6:27> (-12) -12\n<3:10 - 3:25> <none>\n<3:10 - 3:15> <none>\n<3:10 - 3:10> <none>\n<3:10 - 3:10> () -12\n<3:15 - 3:15> <none>\n<3:15 - 3:15> () 0\n<3:10 - 3:15> (-12,0) false\n<3:10 - 3:25> (false,null) false\n<8:10 - 8:14> <none>\n<8:10 - 8:10> <none>\n<8:10 - 8:10> () -12\n<8:14 - 8:14> <none>\n<8:14 - 8:14> () 1\n<8:10 - 8:14> (-12,1) -12"
iconst_0
iconst_1
anewarray com.oracle.truffle.sl.test.SLDebugTest$StepDepth
dup
iconst_0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkExpressionStepPositions:(Ljava/lang/String;Z[Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testExpressionStepOver();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "<2:3 - 2:7> <none>\n<2:7 - 2:7> <none>\n<2:7 - 2:7> () 2\n<2:3 - 2:7> (2) 2\n<3:10 - 3:25> <none>\n<3:10 - 3:25> (true,true) true\n<4:5 - 4:13> <none>\n<4:5 - 4:13> (4) 4\n<5:5 - 5:29> <none>\n<5:5 - 5:29> (3) 3\n<6:5 - 6:27> <none>\n<6:5 - 6:27> (-12) -12\n<3:10 - 3:25> <none>\n<3:10 - 3:25> (false,null) false\n<8:10 - 8:14> <none>\n<8:10 - 8:14> (-12,1) -12"
iconst_0
iconst_2
anewarray com.oracle.truffle.sl.test.SLDebugTest$StepDepth
dup
iconst_0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_1
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OVER:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkExpressionStepPositions:(Ljava/lang/String;Z[Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testExpressionStepOut();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "<2:3 - 2:7> <none>\n<2:7 - 2:7> <none>\n<2:7 - 2:7> () 2\n<2:3 - 2:7> (2) 2\n<3:10 - 3:25> <none>\n<3:10 - 3:15> <none>\n<3:10 - 3:15> (2,0) true\n<3:10 - 3:25> (true,true) true\n"
iconst_0
bipush 6
anewarray com.oracle.truffle.sl.test.SLDebugTest$StepDepth
dup
iconst_0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_1
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OVER:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_2
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OVER:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_3
1: getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_4
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_5
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OUT:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
2: invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkExpressionStepPositions:(Ljava/lang/String;Z[Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testStatementAndExpressionStepOver();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "<2:3 - 2:7> <none>\n<2:7 - 2:7> <none>\n<2:7 - 2:7> () 2\n<2:3 - 2:7> (2) 2\n<3:10 - 3:25> <none>\n<3:10 - 3:25> (true,true) true\n<4:5 - 4:13> <none>\n<4:5 - 4:13> (4) 4\n<5:5 - 5:29> <none>\n<5:5 - 5:29> (3) 3\n<6:5 - 6:27> <none>\n<6:5 - 6:27> (-12) -12\n<3:10 - 3:25> <none>\n<3:10 - 3:25> (false,null) false\n<8:3 - 8:14> <none>\n<8:10 - 8:14> <none>\n<8:10 - 8:14> (-12,1) -12\n"
iconst_1
iconst_2
anewarray com.oracle.truffle.sl.test.SLDebugTest$StepDepth
dup
iconst_0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
dup
iconst_1
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OVER:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkExpressionStepPositions:(Ljava/lang/String;Z[Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testExceptions();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: ldc "function main() {\n i = \"0\";\n return invert(i);\n}\nfunction invert(n) {\n x = 10 / n;\n return x;\n}\n"
invokestatic com.oracle.truffle.sl.test.SLDebugTest.slCode:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
astore 4
start local 4 3: iconst_1
iconst_1
invokestatic com.oracle.truffle.api.debug.Breakpoint.newExceptionBuilder:(ZZ)Lcom/oracle/truffle/api/debug/Breakpoint$ExceptionBuilder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$ExceptionBuilder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
astore 5
start local 5 4: aload 4
aload 5
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
5: aload 0
aload 1
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.startEval:(Lorg/graalvm/polyglot/Source;)V
6: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$45(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
7: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$46(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
8: aload 0
invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
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:
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
com/oracle/truffle/sl/test/SLDebugTest.lambda$47(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
9: ldc "5"
aload 0
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.expectDone:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 5 10: aload 4
ifnull 16
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
goto 16
StackMap locals: com.oracle.truffle.sl.test.SLDebugTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
StackMap stack: java.lang.Throwable
11: astore 2
aload 4
ifnull 12
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
1 17 1 source Lorg/graalvm/polyglot/Source;
3 12 4 session Lcom/oracle/truffle/api/debug/DebuggerSession;
4 10 5 excBreakpoint Lcom/oracle/truffle/api/debug/Breakpoint;
Exception table:
from to target type
3 10 11 any
2 13 13 any
RuntimeVisibleAnnotations:
org.junit.Test()
private static void assertNumber(java.lang.Object, double);
descriptor: (Ljava/lang/Object;D)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
instanceof java.lang.Number
ifeq 3
1: dload 1
aload 0
checkcast java.lang.Number
invokevirtual java.lang.Number.doubleValue:()D
ldc 0.1
invokestatic org.junit.Assert.assertEquals:(DDD)V
2: goto 4
3: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Expecting a number "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 real Ljava/lang/Object;
0 5 1 expected D
MethodParameters:
Name Flags
real
expected
static int[] $SWITCH_TABLE$com$oracle$truffle$sl$test$SLDebugTest$StepDepth();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.oracle.truffle.sl.test.SLDebugTest.$SWITCH_TABLE$com$oracle$truffle$sl$test$SLDebugTest$StepDepth:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.values:()[Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.INTO:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
invokevirtual com.oracle.truffle.sl.test.SLDebugTest$StepDepth.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OUT:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
invokevirtual com.oracle.truffle.sl.test.SLDebugTest$StepDepth.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic com.oracle.truffle.sl.test.SLDebugTest$StepDepth.OVER:Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;
invokevirtual com.oracle.truffle.sl.test.SLDebugTest$StepDepth.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic com.oracle.truffle.sl.test.SLDebugTest.$SWITCH_TABLE$com$oracle$truffle$sl$test$SLDebugTest$StepDepth:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
private void lambda$0(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=5, args_size=3
start local 0 start local 2 0: aload 0
aload 2
ldc "fac"
bipush 6
iconst_1
ldc "return 1"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "1"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getStackFrames:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 2: iconst_1
istore 4
start local 4 3: goto 6
4: StackMap locals: java.util.Iterator int
StackMap stack:
aload 0
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
ldc "fac"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
iload 4
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
5: iinc 4 1
StackMap locals:
StackMap stack:
6: iload 4
iconst_5
if_icmple 4
end local 4 7: aload 0
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
ldc "main"
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
8: aload 1
aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
9: aload 2
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 3 10: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 11 2 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
2 10 3 sfi Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugStackFrame;>;
3 7 4 i I
private void lambda$1(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
bipush 8
iconst_0
ldc "fac(n - 1)"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "2"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "1"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOut:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$2(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
bipush 8
iconst_0
ldc "fac(n - 1)"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "3"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "2"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOut:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$3(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
bipush 8
iconst_0
ldc "fac(n - 1)"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "4"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "6"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOut:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$4(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
bipush 8
iconst_0
ldc "fac(n - 1)"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "5"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "24"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOut:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$5(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "main"
iconst_2
iconst_0
ldc "fac(5)"
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "120"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 1
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOut:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$6(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$7(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=3
start local 2 0: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "a"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
start local 3 1: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/SourceSection;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
iconst_1
anewarray com.oracle.truffle.api.debug.SourceElement
dup
iconst_0
getstatic com.oracle.truffle.api.debug.SourceElement.ROOT:Lcom/oracle/truffle/api/debug/SourceElement;
aastore
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
aload 3
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
astore 4
start local 4 2: aload 0
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
3: aload 1
iconst_0
aload 4
aastore
4: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
end local 4 end local 3 5: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 6 2 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 5 3 fac Lcom/oracle/truffle/api/debug/DebugValue;
2 5 4 breakpoint Lcom/oracle/truffle/api/debug/Breakpoint;
private static void lambda$8(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc 5
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: ldc 5
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "n"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.asInt:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$9(com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: ([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 1 0: ldc 5
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: ldc 4
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "n"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.asInt:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 0
iconst_0
aaload
invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
3: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
4: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$10(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$11(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=3
start local 2 0: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "a"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
start local 3 1: aconst_null
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Ljava/net/URI;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
iconst_1
anewarray com.oracle.truffle.api.debug.SourceElement
dup
iconst_0
getstatic com.oracle.truffle.api.debug.SourceElement.ROOT:Lcom/oracle/truffle/api/debug/SourceElement;
aastore
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
aload 3
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
astore 4
start local 4 2: aload 0
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
3: aload 1
iconst_0
aload 4
aastore
4: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
end local 4 end local 3 5: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 6 2 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 5 3 isNull Lcom/oracle/truffle/api/debug/DebugValue;
2 5 4 breakpoint Lcom/oracle/truffle/api/debug/Breakpoint;
private static void lambda$12(com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: ([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=7, args_size=3
start local 2 0: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.isAvailable:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
1: ldc "isNull"
aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getStackFrames:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
pop
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 4
start local 4 5: ldc 4
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: aload 0
iconst_0
aaload
invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
7: aload 4
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "b"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 5
start local 5 8: aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/SourceSection;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
iconst_1
anewarray com.oracle.truffle.api.debug.SourceElement
dup
iconst_0
getstatic com.oracle.truffle.api.debug.SourceElement.ROOT:Lcom/oracle/truffle/api/debug/SourceElement;
aastore
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
aload 5
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
astore 6
start local 6 9: aload 1
aload 6
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
pop
10: aload 0
iconst_0
aload 6
aastore
11: aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
end local 6 end local 5 end local 4 end local 3 12: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 13 2 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
3 12 3 frames Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugStackFrame;>;
5 12 4 mainFrame Lcom/oracle/truffle/api/debug/DebugStackFrame;
8 12 5 nanoTime Lcom/oracle/truffle/api/debug/DebugValue;
9 12 6 breakpoint Lcom/oracle/truffle/api/debug/Breakpoint;
private static void lambda$13(com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: ([Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=2
start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.isAvailable:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
1: ldc "nanoTime"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getStackFrames:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 2
start local 2 3: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
pop
4: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 3
start local 3 5: ldc 7
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
6: aload 0
iconst_0
aaload
invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
7: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
end local 3 end local 2 8: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 9 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
3 8 2 frames Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugStackFrame;>;
5 8 3 mainFrame Lcom/oracle/truffle/api/debug/DebugStackFrame;
private void lambda$14(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "main"
iconst_2
iconst_1
ldc "return fac(5)"
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$15(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
iconst_5
iconst_1
ldc "n <= 1"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "5"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$16(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
bipush 8
iconst_1
ldc "return n * fac(n - 1)"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "5"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$17(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "main"
iconst_2
iconst_0
ldc "fac(5)"
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "120"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 3 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static org.graalvm.polyglot.Value lambda$18(com.oracle.truffle.sl.test.SLDebugTest$HostFunction, org.graalvm.polyglot.Context);
descriptor: (Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/Value;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=3, args_size=2
start local 1 0: aload 1
ldc "sl"
invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
ldc "foo"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 2
start local 2 1: aload 2
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 context Lorg/graalvm/polyglot/Context;
1 2 2 foo Lorg/graalvm/polyglot/Value;
private void lambda$19(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "foo"
iconst_2
iconst_1
ldc "hostCall()"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "hostCall"
aastore
dup
iconst_1
ldc "Function"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
1: ldc "foo"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 3 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static org.graalvm.polyglot.Value lambda$20(com.oracle.truffle.sl.test.SLDebugTest$HostFunction, org.graalvm.polyglot.Context);
descriptor: (Lcom/oracle/truffle/sl/test/SLDebugTest$HostFunction;Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/Value;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=3, args_size=2
start local 1 0: aload 1
ldc "sl"
invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
ldc "foo"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 2
start local 2 1: aload 2
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 context Lorg/graalvm/polyglot/Context;
1 2 2 foo Lorg/graalvm/polyglot/Value;
private void lambda$21(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "foo"
iconst_2
iconst_1
ldc "hostCall()"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "hostCall"
aastore
dup
iconst_1
ldc "Function"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: ldc "foo"
aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 3 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$22(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "foo"
iconst_3
iconst_1
ldc "x = 5"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "hostCall"
aastore
dup
iconst_1
ldc "Function"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$23(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "fac"
bipush 6
iconst_1
ldc "debugger"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "1"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$24(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "main"
iconst_2
iconst_1
ldc "res = doNull()"
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$25(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "main"
iconst_3
iconst_1
ldc "return res"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "res"
aastore
dup
iconst_1
ldc "NULL"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;Ljava/lang/String;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 2 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$26(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=14, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
ldc "a"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
start local 3 3: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.isArray:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
4: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getArray:()Ljava/util/List;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
5: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperties:()Ljava/util/Collection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
6: aload 2
ldc "b"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 4
start local 4 7: aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.isArray:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getArray:()Ljava/util/List;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
9: aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperties:()Ljava/util/Collection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
10: aload 2
ldc "c"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 5
start local 5 11: aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.isArray:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
12: ldc "10"
aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
13: aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.getArray:()Ljava/util/List;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
14: aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperties:()Ljava/util/Collection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
15: aload 2
ldc "d"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 6
start local 6 16: aload 6
invokevirtual com.oracle.truffle.api.debug.DebugValue.isArray:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
17: ldc "str"
aload 6
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
18: aload 6
invokevirtual com.oracle.truffle.api.debug.DebugValue.getArray:()Ljava/util/List;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
19: aload 6
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperties:()Ljava/util/Collection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
20: aload 2
ldc "e"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 7
start local 7 21: aload 7
invokevirtual com.oracle.truffle.api.debug.DebugValue.isArray:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
22: aload 7
invokevirtual com.oracle.truffle.api.debug.DebugValue.getArray:()Ljava/util/List;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
23: aload 2
aload 7
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
24: aload 7
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperties:()Ljava/util/Collection;
astore 8
start local 8 25: ldc 2
aload 8
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: aload 8
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 9
start local 9 27: aload 9
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
28: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 10
start local 10 29: ldc "p1"
aload 10
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
30: ldc "1"
aload 10
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
31: aload 10
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
32: aload 9
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
33: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 11
start local 11 34: ldc "p2"
aload 11
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
35: aload 11
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
36: aload 9
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
37: aload 11
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperties:()Ljava/util/Collection;
astore 8
38: lconst_1
aload 8
invokeinterface java.util.Collection.size:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
39: aload 8
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 9
40: aload 9
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
41: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 12
start local 12 42: ldc "p21"
aload 12
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
43: ldc "21"
aload 12
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
44: aload 12
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
45: aload 9
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
46: aload 7
ldc "p1"
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperty:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 13
start local 13 47: ldc "1"
aload 13
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
48: aload 13
aload 12
invokevirtual com.oracle.truffle.api.debug.DebugValue.set:(Lcom/oracle/truffle/api/debug/DebugValue;)V
49: ldc "21"
aload 13
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
50: aload 7
ldc "NonExisting"
invokevirtual com.oracle.truffle.api.debug.DebugValue.getProperty:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
end local 13 end local 12 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 end local 1 51: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 52 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 51 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 51 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 51 3 a Lcom/oracle/truffle/api/debug/DebugValue;
7 51 4 b Lcom/oracle/truffle/api/debug/DebugValue;
11 51 5 c Lcom/oracle/truffle/api/debug/DebugValue;
16 51 6 d Lcom/oracle/truffle/api/debug/DebugValue;
21 51 7 e Lcom/oracle/truffle/api/debug/DebugValue;
25 51 8 propertyValues Ljava/util/Collection<Lcom/oracle/truffle/api/debug/DebugValue;>;
27 51 9 propertiesIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugValue;>;
29 51 10 p1 Lcom/oracle/truffle/api/debug/DebugValue;
34 51 11 p2 Lcom/oracle/truffle/api/debug/DebugValue;
42 51 12 p21 Lcom/oracle/truffle/api/debug/DebugValue;
47 51 13 ep1 Lcom/oracle/truffle/api/debug/DebugValue;
private static void lambda$27(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
2: aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 1 3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 3 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
private static void lambda$28(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 3: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 4
start local 4 5: ldc "a"
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 2
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 4 end local 3 end local 2 end local 1 9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 9 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 9 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 9 3 varIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugValue;>;
5 9 4 a Lcom/oracle/truffle/api/debug/DebugValue;
private static void lambda$29(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getParent:()Lcom/oracle/truffle/api/debug/DebugScope;
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 3: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 4
start local 4 5: ldc "a"
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getParent:()Lcom/oracle/truffle/api/debug/DebugScope;
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 4 end local 3 end local 2 end local 1 9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 9 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 9 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 9 3 varIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugValue;>;
5 9 4 a Lcom/oracle/truffle/api/debug/DebugValue;
private static void lambda$30(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 3: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 4
start local 4 5: ldc "b"
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 2
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getParent:()Lcom/oracle/truffle/api/debug/DebugScope;
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
9: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
10: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 5
start local 5 11: ldc "a"
aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
12: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getParent:()Lcom/oracle/truffle/api/debug/DebugScope;
aload 5
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
13: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
14: aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 5 end local 4 end local 3 end local 2 end local 1 15: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 15 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 15 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 15 3 varIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugValue;>;
5 15 4 b Lcom/oracle/truffle/api/debug/DebugValue;
11 15 5 a Lcom/oracle/truffle/api/debug/DebugValue;
private static void lambda$31(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValues:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 3: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugValue
astore 4
start local 4 5: ldc "a"
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 2
aload 4
invokevirtual com.oracle.truffle.api.debug.DebugValue.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: aload 3
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
8: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
end local 4 end local 3 end local 2 end local 1 9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 9 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 9 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 9 3 varIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugValue;>;
5 9 4 a Lcom/oracle/truffle/api/debug/DebugValue;
private static void lambda$32(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
ldc "a"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
start local 3 3: ldc "NULL"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
4: aload 2
ldc "b"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
5: ldc "Boolean"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 2
ldc "c"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
7: ldc "Number"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: aload 2
ldc "cBig"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
9: ldc "Number"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: aload 2
ldc "d"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
11: ldc "String"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
12: aload 2
ldc "e"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
13: ldc "Object"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
14: aload 2
ldc "f"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
15: ldc "Function"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getMetaObject:()Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 3 end local 2 end local 1 16: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 16 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 16 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 16 3 v Lcom/oracle/truffle/api/debug/DebugValue;
private static void lambda$33(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
astore 2
start local 2 2: aload 2
ldc "a"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
start local 3 3: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
4: aload 2
ldc "c"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
5: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
6: aload 2
ldc "d"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
7: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
8: aload 2
ldc "e"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
9: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
10: aload 2
ldc "f"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
astore 3
11: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
astore 4
start local 4 12: aload 4
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
13: ldc 9
aload 4
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
14: ldc 9
aload 4
invokevirtual com.oracle.truffle.api.source.SourceSection.getEndLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
15: ldc "doNull() {}"
aload 4
invokevirtual com.oracle.truffle.api.source.SourceSection.getCharacters:()Ljava/lang/CharSequence;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 4 end local 3 end local 2 end local 1 16: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 16 1 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
2 16 2 scope Lcom/oracle/truffle/api/debug/DebugScope;
3 16 3 v Lcom/oracle/truffle/api/debug/DebugValue;
12 16 4 sourceLocation Lcom/oracle/truffle/api/source/SourceSection;
private static void lambda$34(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getStackFrames:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 1
start local 1 1: aload 1
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
2: aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 2
start local 2 3: ldc "fac"
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
4: ldc 6
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
6: bipush 9
istore 3
start local 3 7: iconst_0
istore 4
start local 4 8: goto 15
9: StackMap locals: com.oracle.truffle.api.debug.SuspendedEvent java.util.Iterator com.oracle.truffle.api.debug.DebugStackFrame int int
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
10: aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 2
11: ldc "fac"
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
12: ldc 8
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
13: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
14: iinc 4 1
StackMap locals:
StackMap stack:
15: iload 4
iload 3
if_icmplt 9
end local 4 16: aload 1
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
17: aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 2
18: ldc "main"
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
19: ldc 2
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
20: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
21: goto 24
22: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 2
23: aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
24: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
end local 3 end local 2 end local 1 25: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 25 1 sfIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugStackFrame;>;
3 25 2 dsf Lcom/oracle/truffle/api/debug/DebugStackFrame;
7 25 3 numStacksAt8 I
8 16 4 i I
private static void lambda$35(boolean[], com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: ([ZLcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=8, args_size=2
start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getStackFrames:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 2
start local 2 1: aload 2
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
2: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 3
start local 3 3: ldc "fac"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
4: ldc 3
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
6: bipush 9
istore 4
start local 4 7: iconst_0
istore 5
start local 5 8: iconst_0
istore 6
start local 6 9: goto 24
10: StackMap locals: boolean[] com.oracle.truffle.api.debug.SuspendedEvent java.util.Iterator com.oracle.truffle.api.debug.DebugStackFrame int int int
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
11: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
astore 3
12: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
ifnull 13
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
ifne 13
iconst_1
goto 14
StackMap locals:
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: istore 7
start local 7 15: iload 7
ifeq 21
16: ldc "fac"
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
17: ldc 6
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
18: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
19: iinc 6 1
20: goto 24
21: StackMap locals: int
StackMap stack:
aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
22: aload 3
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.isInternal:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
23: iinc 5 1
end local 7 24: StackMap locals:
StackMap stack:
iload 6
iload 4
if_icmplt 10
end local 6 25: lconst_0
iload 5
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
26: aload 2
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
27: aload 0
iconst_0
iconst_1
bastore
end local 5 end local 4 end local 3 end local 2 28: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 29 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 28 2 sfIt Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugStackFrame;>;
3 28 3 dsf Lcom/oracle/truffle/api/debug/DebugStackFrame;
7 28 4 numStacksAt6 I
8 28 5 numInteropStacks I
9 25 6 i I
15 24 7 inFac Z
private static void lambda$36(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: ldc 6
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getStackFrames:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 1
start local 1 2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: java.util.Iterator int
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
pop
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
iconst_5
if_icmplt 4
end local 2 7: aload 0
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.debug.DebugStackFrame
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareUnwindFrame:(Lcom/oracle/truffle/api/debug/DebugStackFrame;)V
end local 1 8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
2 8 1 frames Ljava/util/Iterator<Lcom/oracle/truffle/api/debug/DebugStackFrame;>;
3 7 2 i I
private static void lambda$37(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc 8
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: ldc "7"
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "n"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$38(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc 5
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: ldc "6"
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "n"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$39(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc 6
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private void lambda$40(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 2
start local 2 1: ldc 6
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 0
aload 2
ldc "fnc"
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "11"
aastore
dup
iconst_2
ldc "m"
aastore
dup
iconst_3
ldc "20"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
3: aload 1
iconst_4
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 2 4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 4 2 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
private void lambda$41(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 2
start local 2 1: ldc 10
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 0
aload 2
ldc "fnc"
bipush 6
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "9"
aastore
dup
iconst_2
ldc "m"
aastore
dup
iconst_3
ldc "10"
aastore
dup
iconst_4
ldc "x"
aastore
dup
iconst_5
ldc "121"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
3: aload 1
aload 2
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareUnwindFrame:(Lcom/oracle/truffle/api/debug/DebugStackFrame;)V
end local 2 4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 5 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 4 2 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
private void lambda$42(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 2
start local 2 1: ldc 3
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 0
aload 2
ldc "main"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "i"
aastore
dup
iconst_1
ldc "11"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
end local 2 3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 4 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 3 2 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
private void lambda$43(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
astore 2
start local 2 1: ldc 6
aload 2
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
2: aload 0
aload 2
ldc "fnc"
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "n"
aastore
dup
iconst_1
ldc "11"
aastore
dup
iconst_2
ldc "m"
aastore
dup
iconst_3
ldc "20"
aastore
invokevirtual com.oracle.truffle.sl.test.SLDebugTest.checkStack:(Lcom/oracle/truffle/api/debug/DebugStackFrame;Ljava/lang/String;[Ljava/lang/String;)V
end local 2 3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/sl/test/SLDebugTest;
0 4 1 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 3 2 frame Lcom/oracle/truffle/api/debug/DebugStackFrame;
private static void lambda$44(boolean, java.lang.String, com.oracle.truffle.sl.test.SLDebugTest$StepDepth, com.oracle.truffle.api.debug.StepConfig, com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (ZLjava/lang/String;Lcom/oracle/truffle/sl/test/SLDebugTest$StepDepth;Lcom/oracle/truffle/api/debug/StepConfig;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=13, args_size=5
start local 4 0: iload 0
ifne 3
1: ldc "Needs to be an expression"
aload 4
getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.hasSourceElement:(Lcom/oracle/truffle/api/debug/SourceElement;)Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
2: goto 7
3: StackMap locals:
StackMap stack:
ldc "Needs to be an expression or statement"
4: aload 4
getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.hasSourceElement:(Lcom/oracle/truffle/api/debug/SourceElement;)Z
ifne 5
aload 4
getstatic com.oracle.truffle.api.debug.SourceElement.STATEMENT:Lcom/oracle/truffle/api/debug/SourceElement;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.hasSourceElement:(Lcom/oracle/truffle/api/debug/SourceElement;)Z
ifne 5
iconst_0
goto 6
StackMap locals:
StackMap stack: java.lang.String
5: iconst_1
6: StackMap locals: int java.lang.String com.oracle.truffle.sl.test.SLDebugTest$StepDepth com.oracle.truffle.api.debug.StepConfig com.oracle.truffle.api.debug.SuspendedEvent
StackMap stack: java.lang.String int
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
7: StackMap locals:
StackMap stack:
aload 4
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
astore 5
start local 5 8: aload 4
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getInputValues:()[Lcom/oracle/truffle/api/debug/DebugValue;
astore 6
start local 6 9: ldc ""
astore 7
start local 7 10: aload 6
ifnull 24
11: new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 8
start local 8 12: aload 6
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 21
StackMap locals: int java.lang.String com.oracle.truffle.sl.test.SLDebugTest$StepDepth com.oracle.truffle.api.debug.StepConfig com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.source.SourceSection com.oracle.truffle.api.debug.DebugValue[] java.lang.String java.lang.StringBuilder top int int com.oracle.truffle.api.debug.DebugValue[]
StackMap stack:
13: aload 12
iload 10
aaload
astore 9
start local 9 14: aload 8
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
if_icmple 16
15: aload 8
bipush 44
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
16: StackMap locals: int java.lang.String com.oracle.truffle.sl.test.SLDebugTest$StepDepth com.oracle.truffle.api.debug.StepConfig com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.source.SourceSection com.oracle.truffle.api.debug.DebugValue[] java.lang.String java.lang.StringBuilder com.oracle.truffle.api.debug.DebugValue int int com.oracle.truffle.api.debug.DebugValue[]
StackMap stack:
aload 9
ifnull 19
17: aload 8
aload 9
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: goto 20
19: StackMap locals:
StackMap stack:
aload 8
ldc "null"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 9 20: StackMap locals: int java.lang.String com.oracle.truffle.sl.test.SLDebugTest$StepDepth com.oracle.truffle.api.debug.StepConfig com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.source.SourceSection com.oracle.truffle.api.debug.DebugValue[] java.lang.String java.lang.StringBuilder top int int com.oracle.truffle.api.debug.DebugValue[]
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
21: iload 10
iload 11
if_icmplt 13
22: aload 8
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
23: aload 8
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
end local 8 24: StackMap locals: int java.lang.String com.oracle.truffle.sl.test.SLDebugTest$StepDepth com.oracle.truffle.api.debug.StepConfig com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.source.SourceSection com.oracle.truffle.api.debug.DebugValue[] java.lang.String
StackMap stack:
aload 4
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
astore 8
start local 8 25: aload 8
ifnull 26
aload 8
invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
goto 27
StackMap locals: com.oracle.truffle.api.debug.DebugValue
StackMap stack:
26: ldc "<none>"
StackMap locals:
StackMap stack: java.lang.String
27: astore 9
start local 9 28: new java.lang.StringBuilder
dup
ldc "<"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartColumn:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " - "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual com.oracle.truffle.api.source.SourceSection.getEndLine:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual com.oracle.truffle.api.source.SourceSection.getEndColumn:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "> "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 10
start local 10 29: aload 1
aload 10
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
30: invokestatic com.oracle.truffle.sl.test.SLDebugTest.$SWITCH_TABLE$com$oracle$truffle$sl$test$SLDebugTest$StepDepth:()[I
aload 2
invokevirtual com.oracle.truffle.sl.test.SLDebugTest$StepDepth.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 31
2: 33
3: 35
default: 36
}
31: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 4
aload 3
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(Lcom/oracle/truffle/api/debug/StepConfig;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
32: goto 36
33: StackMap locals:
StackMap stack:
aload 4
aload 3
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(Lcom/oracle/truffle/api/debug/StepConfig;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
34: goto 36
35: StackMap locals:
StackMap stack:
aload 4
aload 3
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOut:(Lcom/oracle/truffle/api/debug/StepConfig;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 36: StackMap locals: int java.lang.String com.oracle.truffle.sl.test.SLDebugTest$StepDepth com.oracle.truffle.api.debug.StepConfig com.oracle.truffle.api.debug.SuspendedEvent
StackMap stack:
return
end local 4 LocalVariableTable:
Start End Slot Name Signature
0 37 4 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
8 36 5 ss Lcom/oracle/truffle/api/source/SourceSection;
9 36 6 inputValues [Lcom/oracle/truffle/api/debug/DebugValue;
10 36 7 input Ljava/lang/String;
12 24 8 inputBuilder Ljava/lang/StringBuilder;
14 20 9 v Lcom/oracle/truffle/api/debug/DebugValue;
25 36 8 returnValue Lcom/oracle/truffle/api/debug/DebugValue;
28 36 9 ret Ljava/lang/String;
29 36 10 actualPos Ljava/lang/String;
private static void lambda$45(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getException:()Lcom/oracle/truffle/api/debug/DebugException;
astore 1
start local 1 1: aload 1
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
2: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugException.getMessage:()Ljava/lang/String;
aload 1
invokevirtual com.oracle.truffle.api.debug.DebugException.getMessage:()Ljava/lang/String;
ldc "Type error"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
3: aload 1
invokevirtual com.oracle.truffle.api.debug.DebugException.getThrowLocation:()Lcom/oracle/truffle/api/source/SourceSection;
astore 2
start local 2 4: ldc 6
aload 2
invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
5: aload 0
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareUnwindFrame:(Lcom/oracle/truffle/api/debug/DebugStackFrame;)V
end local 2 end local 1 6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
1 6 1 exception Lcom/oracle/truffle/api/debug/DebugException;
4 6 2 throwLocation Lcom/oracle/truffle/api/source/SourceSection;
private static void lambda$46(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.sl.test.SLDebugTest.$assertionsDisabled:Z
ifne 1
aload 0
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
pop
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
private static void lambda$47(com.oracle.truffle.api.debug.SuspendedEvent);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.getScope:()Lcom/oracle/truffle/api/debug/DebugScope;
ldc "n"
invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
aload 0
invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getTopStackFrame:()Lcom/oracle/truffle/api/debug/DebugStackFrame;
ldc "function main() {return 2;}"
invokevirtual com.oracle.truffle.api.debug.DebugStackFrame.eval:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
invokevirtual com.oracle.truffle.api.debug.DebugValue.set:(Lcom/oracle/truffle/api/debug/DebugValue;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 event Lcom/oracle/truffle/api/debug/SuspendedEvent;
}
SourceFile: "SLDebugTest.java"
NestMembers:
com.oracle.truffle.sl.test.SLDebugTest$1 com.oracle.truffle.sl.test.SLDebugTest$1$1 com.oracle.truffle.sl.test.SLDebugTest$2 com.oracle.truffle.sl.test.SLDebugTest$3 com.oracle.truffle.sl.test.SLDebugTest$Fac com.oracle.truffle.sl.test.SLDebugTest$HostFunction com.oracle.truffle.sl.test.SLDebugTest$Multiply com.oracle.truffle.sl.test.SLDebugTest$StepDepth
InnerClasses:
public final Builder = com.oracle.truffle.api.debug.Breakpoint$Builder of com.oracle.truffle.api.debug.Breakpoint
public final ExceptionBuilder = com.oracle.truffle.api.debug.Breakpoint$ExceptionBuilder of com.oracle.truffle.api.debug.Breakpoint
public final Builder = com.oracle.truffle.api.debug.StepConfig$Builder of com.oracle.truffle.api.debug.StepConfig
com.oracle.truffle.sl.test.SLDebugTest$1
com.oracle.truffle.sl.test.SLDebugTest$2
com.oracle.truffle.sl.test.SLDebugTest$3
public abstract Fac = com.oracle.truffle.sl.test.SLDebugTest$Fac of com.oracle.truffle.sl.test.SLDebugTest
public HostFunction = com.oracle.truffle.sl.test.SLDebugTest$HostFunction of com.oracle.truffle.sl.test.SLDebugTest
public Multiply = com.oracle.truffle.sl.test.SLDebugTest$Multiply of com.oracle.truffle.sl.test.SLDebugTest
private final StepDepth = com.oracle.truffle.sl.test.SLDebugTest$StepDepth of com.oracle.truffle.sl.test.SLDebugTest
public abstract PositionPredicate = com.oracle.truffle.tck.DebuggerTester$PositionPredicate of com.oracle.truffle.tck.DebuggerTester
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