class com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode extends com.oracle.truffle.api.instrumentation.ExecutionEventNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode
super_class: com.oracle.truffle.api.instrumentation.ExecutionEventNode
{
private final com.oracle.truffle.api.nodes.Node instrumentedNode;
descriptor: Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile com.oracle.truffle.api.nodes.ExecutableNode inlineNode;
descriptor: Lcom/oracle/truffle/api/nodes/ExecutableNode;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
final com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory this$1;
descriptor: Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory, com.oracle.truffle.api.instrumentation.EventContext);
descriptor: (Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;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.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
aload 0
invokespecial com.oracle.truffle.api.instrumentation.ExecutionEventNode.<init>:()V
1: aload 0
aload 2
invokevirtual com.oracle.truffle.api.instrumentation.EventContext.getInstrumentedNode:()Lcom/oracle/truffle/api/nodes/Node;
putfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.instrumentedNode:Lcom/oracle/truffle/api/nodes/Node;
2: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 3 2 context Lcom/oracle/truffle/api/instrumentation/EventContext;
MethodParameters:
Name Flags
this$0 final
context
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
aload 1
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.executeSnippet:(Lcom/oracle/truffle/api/frame/VirtualFrame;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 2 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=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.executeSnippet:(Lcom/oracle/truffle/api/frame/VirtualFrame;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 2 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 2 2 result 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=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.executeSnippet:(Lcom/oracle/truffle/api/frame/VirtualFrame;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 2 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 2 2 exception Ljava/lang/Throwable;
MethodParameters:
Name Flags
frame
exception
private void executeSnippet(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.inlineNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
ifnonnull 11
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
2: aload 0
aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
invokestatic com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.access$0:(Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;)Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument;
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument.env:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.snippet:Lcom/oracle/truffle/api/source/Source;
aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.instrumentedNode:Lcom/oracle/truffle/api/nodes/Node;
aload 1
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.materialize:()Lcom/oracle/truffle/api/frame/MaterializedFrame;
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.parseInline:(Lcom/oracle/truffle/api/source/Source;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/MaterializedFrame;)Lcom/oracle/truffle/api/nodes/ExecutableNode;
putfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.inlineNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
3: goto 9
StackMap locals:
StackMap stack: java.lang.ThreadDeath
4: astore 2
start local 2 5: aload 2
athrow
end local 2 6: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
start local 2 7: aload 0
aload 2
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.verify:(Ljava/lang/Throwable;)V
8: aload 2
athrow
end local 2 9: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.inlineNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
pop
10: aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
iconst_1
putfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.snippetExecuted:Z
11: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.tck.instrumentation.VerifierInstrument.enter:()V
12: aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.inlineNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
aload 1
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 2
start local 2 13: aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.resultVerifier:Lcom/oracle/truffle/tck/common/inline/InlineVerifier$ResultVerifier;
ifnull 25
14: aload 0
aload 2
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.verify:(Ljava/lang/Object;)V
end local 2 15: goto 25
StackMap locals:
StackMap stack: java.lang.ThreadDeath
16: astore 2
start local 2 17: aload 2
athrow
end local 2 18: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
start local 2 19: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
20: aload 0
aload 2
invokevirtual com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.verify:(Ljava/lang/Throwable;)V
21: aload 2
athrow
end local 2 22: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
23: invokestatic com.oracle.truffle.tck.instrumentation.VerifierInstrument.leave:()V
24: aload 3
athrow
25: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.tck.instrumentation.VerifierInstrument.leave:()V
26: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 27 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
5 6 2 t Ljava/lang/ThreadDeath;
7 9 2 t Ljava/lang/Throwable;
13 15 2 ret Ljava/lang/Object;
17 18 2 t Ljava/lang/ThreadDeath;
19 22 2 t Ljava/lang/Throwable;
Exception table:
from to target type
2 3 4 Class java.lang.ThreadDeath
2 3 6 Class java.lang.Throwable
12 15 16 Class java.lang.ThreadDeath
12 15 18 Class java.lang.Throwable
12 22 22 any
MethodParameters:
Name Flags
frame
private void verify(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.tck.instrumentation.VerifierInstrument$TruffleTCKAccessor.engineAccess:()Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.snippet:Lcom/oracle/truffle/api/source/Source;
invokevirtual com.oracle.truffle.api.source.Source.getLanguage:()Ljava/lang/String;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.wrapGuestException:(Ljava/lang/String;Ljava/lang/Throwable;)Lorg/graalvm/polyglot/PolyglotException;
astore 2
start local 2 1: aload 0
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.resultVerifier:Lcom/oracle/truffle/tck/common/inline/InlineVerifier$ResultVerifier;
aload 2
invokeinterface com.oracle.truffle.tck.common.inline.InlineVerifier$ResultVerifier.verify:(Lorg/graalvm/polyglot/PolyglotException;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 3 1 exception Ljava/lang/Throwable;
1 3 2 pe Lorg/graalvm/polyglot/PolyglotException;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
exception final
private void verify(java.lang.Object);
descriptor: (Ljava/lang/Object;)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.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode.this$1:Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory;
getfield com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory.resultVerifier:Lcom/oracle/truffle/tck/common/inline/InlineVerifier$ResultVerifier;
aload 1
invokeinterface com.oracle.truffle.tck.common.inline.InlineVerifier$ResultVerifier.verify:(Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/tck/instrumentation/VerifierInstrument$InlineScriptFactory$InlineScriptNode;
0 2 1 result Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
result final
}
SourceFile: "VerifierInstrument.java"
NestHost: com.oracle.truffle.tck.instrumentation.VerifierInstrument
InnerClasses:
public abstract CompilationFinal = com.oracle.truffle.api.CompilerDirectives$CompilationFinal of com.oracle.truffle.api.CompilerDirectives
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
public abstract EngineSupport = com.oracle.truffle.api.impl.Accessor$EngineSupport of com.oracle.truffle.api.impl.Accessor
public final Env = com.oracle.truffle.api.instrumentation.TruffleInstrument$Env of com.oracle.truffle.api.instrumentation.TruffleInstrument
public abstract ResultVerifier = com.oracle.truffle.tck.common.inline.InlineVerifier$ResultVerifier of com.oracle.truffle.tck.common.inline.InlineVerifier
private InlineScriptFactory = com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory of com.oracle.truffle.tck.instrumentation.VerifierInstrument
private InlineScriptNode = com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory$InlineScriptNode of com.oracle.truffle.tck.instrumentation.VerifierInstrument$InlineScriptFactory
final TruffleTCKAccessor = com.oracle.truffle.tck.instrumentation.VerifierInstrument$TruffleTCKAccessor of com.oracle.truffle.tck.instrumentation.VerifierInstrument