class com.oracle.truffle.api.debug.DebuggerSession$SteppingNode extends com.oracle.truffle.api.debug.DebuggerNode implements com.oracle.truffle.api.debug.DebuggerNode$InputValuesProvider
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.debug.DebuggerSession$SteppingNode
super_class: com.oracle.truffle.api.debug.DebuggerNode
{
final com.oracle.truffle.api.debug.DebuggerSession this$0;
descriptor: Lcom/oracle/truffle/api/debug/DebuggerSession;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.instrumentation.EventContext);
descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/instrumentation/EventContext;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
1: aload 0
aload 2
invokespecial com.oracle.truffle.api.debug.DebuggerNode.<init>:(Lcom/oracle/truffle/api/instrumentation/EventContext;)V
2: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 3 2 context Lcom/oracle/truffle/api/instrumentation/EventContext;
MethodParameters:
Name Flags
this$0 final
context
boolean isStepNode();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
protected void onEnter(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.stepping:Lcom/oracle/truffle/api/debug/DebuggerSession$StableBoolean;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$StableBoolean.get:()Z
ifeq 2
1: aload 0
aload 1
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.materialize:()Lcom/oracle/truffle/api/frame/MaterializedFrame;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.doStepBefore:(Lcom/oracle/truffle/api/frame/MaterializedFrame;)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 3 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
MethodParameters:
Name Flags
frame
protected void onReturnValue(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.stepping:Lcom/oracle/truffle/api/debug/DebuggerSession$StableBoolean;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$StableBoolean.get:()Z
ifeq 5
1: aload 0
aload 1
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.materialize:()Lcom/oracle/truffle/api/frame/MaterializedFrame;
aload 2
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.doStepAfter:(Lcom/oracle/truffle/api/frame/MaterializedFrame;Ljava/lang/Object;)Ljava/lang/Object;
astore 3
start local 3 2: aload 3
aload 2
if_acmpeq 5
3: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
4: aload 0
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.getContext:()Lcom/oracle/truffle/api/instrumentation/EventContext;
new com.oracle.truffle.api.debug.ChangedReturnInfo
dup
aload 3
invokespecial com.oracle.truffle.api.debug.ChangedReturnInfo.<init>:(Ljava/lang/Object;)V
invokevirtual com.oracle.truffle.api.instrumentation.EventContext.createUnwind:(Ljava/lang/Object;)Ljava/lang/ThreadDeath;
athrow
end local 3 5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 6 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 6 2 result Ljava/lang/Object;
2 5 3 newResult Ljava/lang/Object;
MethodParameters:
Name Flags
frame
result
protected void onReturnExceptional(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Throwable);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Throwable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.stepping:Lcom/oracle/truffle/api/debug/DebuggerSession$StableBoolean;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$StableBoolean.get:()Z
ifeq 2
1: aload 0
aload 1
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.materialize:()Lcom/oracle/truffle/api/frame/MaterializedFrame;
aload 2
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.doStepAfter:(Lcom/oracle/truffle/api/frame/MaterializedFrame;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 3 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 3 2 exception Ljava/lang/Throwable;
MethodParameters:
Name Flags
frame
exception
protected void onInputValue(com.oracle.truffle.api.frame.VirtualFrame, com.oracle.truffle.api.instrumentation.EventContext, int, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/api/instrumentation/EventContext;ILjava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.stepping:Lcom/oracle/truffle/api/debug/DebuggerSession$StableBoolean;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$StableBoolean.get:()Z
ifeq 2
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.hasExpressionElement:Z
ifeq 2
1: aload 0
aload 1
iload 3
aload 4
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.saveInputValue:(Lcom/oracle/truffle/api/frame/VirtualFrame;ILjava/lang/Object;)V
2: StackMap locals:
StackMap stack:
return
end local 4 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/api/debug/DebuggerSession$SteppingNode;
0 3 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 3 2 inputContext Lcom/oracle/truffle/api/instrumentation/EventContext;
0 3 3 inputIndex I
0 3 4 inputValue Ljava/lang/Object;
MethodParameters:
Name Flags
frame
inputContext
inputIndex
inputValue
private void doStepBefore(com.oracle.truffle.api.frame.MaterializedFrame);
descriptor: (Lcom/oracle/truffle/api/frame/MaterializedFrame;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=4, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
astore 2
start local 2 1: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.suspendNext:Z
ifne 3
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
getfield com.oracle.truffle.api.debug.DebuggerSession.suspendAll:Z
ifne 3
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getSteppingStrategy:(Ljava/lang/Thread;)Lcom/oracle/truffle/api/debug/SteppingStrategy;
dup
astore 3
start local 3 2: ifnull 4
aload 3
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.context:Lcom/oracle/truffle/api/instrumentation/EventContext;
aload 2
invokevirtual com.oracle.truffle.api.debug.SteppingStrategy.isActiveOnStepTo:(Lcom/oracle/truffle/api/instrumentation/EventContext;Lcom/oracle/truffle/api/debug/SuspendAnchor;)Z
ifeq 4
end local 3 3: StackMap locals: com.oracle.truffle.api.debug.SuspendAnchor
StackMap stack:
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.context:Lcom/oracle/truffle/api/instrumentation/EventContext;
aload 0
aload 1
aload 2
aconst_null
aconst_null
aconst_null
aconst_null
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.notifyCallback:(Lcom/oracle/truffle/api/instrumentation/EventContext;Lcom/oracle/truffle/api/debug/DebuggerNode;Lcom/oracle/truffle/api/frame/MaterializedFrame;Lcom/oracle/truffle/api/debug/SuspendAnchor;Lcom/oracle/truffle/api/debug/DebuggerNode$InputValuesProvider;Ljava/lang/Object;Lcom/oracle/truffle/api/debug/DebugException;Lcom/oracle/truffle/api/debug/Breakpoint$BreakpointConditionFailure;)Ljava/lang/Object;
pop
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 5 1 frame Lcom/oracle/truffle/api/frame/MaterializedFrame;
1 5 2 anchor Lcom/oracle/truffle/api/debug/SuspendAnchor;
2 3 3 steppingStrategy Lcom/oracle/truffle/api/debug/SteppingStrategy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
frame
protected final java.lang.Object doStepAfter(com.oracle.truffle.api.frame.MaterializedFrame, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/MaterializedFrame;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=9, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
astore 3
start local 3 1: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getSteppingStrategy:(Ljava/lang/Thread;)Lcom/oracle/truffle/api/debug/SteppingStrategy;
astore 4
start local 4 2: aload 4
ifnull 4
aload 4
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.context:Lcom/oracle/truffle/api/instrumentation/EventContext;
aload 3
invokevirtual com.oracle.truffle.api.debug.SteppingStrategy.isActiveOnStepTo:(Lcom/oracle/truffle/api/instrumentation/EventContext;Lcom/oracle/truffle/api/debug/SuspendAnchor;)Z
ifeq 4
3: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.context:Lcom/oracle/truffle/api/instrumentation/EventContext;
aload 0
aload 1
aload 3
aload 0
aload 2
aconst_null
aconst_null
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.notifyCallback:(Lcom/oracle/truffle/api/instrumentation/EventContext;Lcom/oracle/truffle/api/debug/DebuggerNode;Lcom/oracle/truffle/api/frame/MaterializedFrame;Lcom/oracle/truffle/api/debug/SuspendAnchor;Lcom/oracle/truffle/api/debug/DebuggerNode$InputValuesProvider;Ljava/lang/Object;Lcom/oracle/truffle/api/debug/DebugException;Lcom/oracle/truffle/api/debug/Breakpoint$BreakpointConditionFailure;)Ljava/lang/Object;
areturn
4: StackMap locals: com.oracle.truffle.api.debug.SuspendAnchor com.oracle.truffle.api.debug.SteppingStrategy
StackMap stack:
aload 2
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 5 1 frame Lcom/oracle/truffle/api/frame/MaterializedFrame;
0 5 2 result Ljava/lang/Object;
1 5 3 anchor Lcom/oracle/truffle/api/debug/SuspendAnchor;
2 5 4 steppingStrategy Lcom/oracle/truffle/api/debug/SteppingStrategy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
frame
result
public java.lang.Object[] getDebugInputValues(com.oracle.truffle.api.frame.MaterializedFrame);
descriptor: (Lcom/oracle/truffle/api/frame/MaterializedFrame;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.getSavedInputValues:(Lcom/oracle/truffle/api/frame/VirtualFrame;)[Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 1 1 frame Lcom/oracle/truffle/api/frame/MaterializedFrame;
MethodParameters:
Name Flags
frame
java.util.Set<com.oracle.truffle.api.debug.SuspendAnchor> getSuspendAnchors();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.debug.DebuggerSession.ANCHOR_SET_ALL:Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
Signature: ()Ljava/util/Set<Lcom/oracle/truffle/api/debug/SuspendAnchor;>;
boolean isActiveAt(com.oracle.truffle.api.debug.SuspendAnchor);
descriptor: (Lcom/oracle/truffle/api/debug/SuspendAnchor;)Z
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.this$0:Lcom/oracle/truffle/api/debug/DebuggerSession;
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getSteppingStrategy:(Ljava/lang/Thread;)Lcom/oracle/truffle/api/debug/SteppingStrategy;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
aload 0
getfield com.oracle.truffle.api.debug.DebuggerSession$SteppingNode.context:Lcom/oracle/truffle/api/instrumentation/EventContext;
aload 1
invokevirtual com.oracle.truffle.api.debug.SteppingStrategy.isActive:(Lcom/oracle/truffle/api/instrumentation/EventContext;Lcom/oracle/truffle/api/debug/SuspendAnchor;)Z
ireturn
3: StackMap locals: com.oracle.truffle.api.debug.SteppingStrategy
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/debug/DebuggerSession$SteppingNode;
0 4 1 anchor Lcom/oracle/truffle/api/debug/SuspendAnchor;
1 4 2 steppingStrategy Lcom/oracle/truffle/api/debug/SteppingStrategy;
MethodParameters:
Name Flags
anchor
}
SourceFile: "DebuggerSession.java"
NestHost: com.oracle.truffle.api.debug.DebuggerSession
InnerClasses:
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
final BreakpointConditionFailure = com.oracle.truffle.api.debug.Breakpoint$BreakpointConditionFailure of com.oracle.truffle.api.debug.Breakpoint
abstract InputValuesProvider = com.oracle.truffle.api.debug.DebuggerNode$InputValuesProvider of com.oracle.truffle.api.debug.DebuggerNode
final StableBoolean = com.oracle.truffle.api.debug.DebuggerSession$StableBoolean of com.oracle.truffle.api.debug.DebuggerSession
private SteppingNode = com.oracle.truffle.api.debug.DebuggerSession$SteppingNode of com.oracle.truffle.api.debug.DebuggerSession