public abstract class com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode extends com.oracle.truffle.js.nodes.function.JSBuiltinNode
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode
super_class: com.oracle.truffle.js.nodes.function.JSBuiltinNode
{
public void <init>(com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.js.nodes.function.JSBuiltin);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode this
start local 1 // com.oracle.truffle.js.runtime.JSContext context
start local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
0: .line 1606
aload 0 /* this */
aload 1 /* context */
aload 2 /* builtin */
invokespecial com.oracle.truffle.js.nodes.function.JSBuiltinNode.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
1: .line 1607
return
end local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
end local 1 // com.oracle.truffle.js.runtime.JSContext context
end local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/builtins/GlobalBuiltins$JSGlobalReadBufferNode;
0 2 1 context Lcom/oracle/truffle/js/runtime/JSContext;
0 2 2 builtin Lcom/oracle/truffle/js/nodes/function/JSBuiltin;
MethodParameters:
Name Flags
context
builtin
protected final com.oracle.truffle.api.object.DynamicObject readbuffer(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/object/DynamicObject;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=6, args_size=2
start local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode this
start local 1 // java.lang.Object fileParam
0: .line 1612
aload 1 /* fileParam */
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
invokevirtual com.oracle.truffle.js.runtime.JSRealm.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
invokestatic com.oracle.truffle.js.builtins.GlobalBuiltins.getFileFromArgument:(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/TruffleFile;
astore 2 /* file */
start local 2 // com.oracle.truffle.api.TruffleFile file
1: .line 1615
aload 2 /* file */
invokevirtual com.oracle.truffle.api.TruffleFile.readAllBytes:()[B
astore 3 /* bytes */
start local 3 // byte[] bytes
2: .line 1618
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
invokevirtual com.oracle.truffle.js.runtime.JSContext.isOptionDirectByteBuffer:()Z
ifeq 8
3: .line 1619
aload 3 /* bytes */
arraylength
invokestatic java.nio.ByteBuffer.allocateDirect:(I)Ljava/nio/ByteBuffer;
astore 5 /* buffer */
start local 5 // java.nio.ByteBuffer buffer
4: .line 1620
aload 5 /* buffer */
aload 3 /* bytes */
invokevirtual java.nio.ByteBuffer.put:([B)Ljava/nio/ByteBuffer;
pop
5: .line 1621
aload 5 /* buffer */
invokestatic com.oracle.truffle.js.runtime.util.BufferUtil.asBaseBuffer:(Ljava/nio/Buffer;)Ljava/nio/Buffer;
invokevirtual java.nio.Buffer.rewind:()Ljava/nio/Buffer;
pop
6: .line 1622
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
aload 5 /* buffer */
invokestatic com.oracle.truffle.js.runtime.builtins.JSArrayBuffer.createDirectArrayBuffer:(Lcom/oracle/truffle/js/runtime/JSContext;Ljava/nio/ByteBuffer;)Lcom/oracle/truffle/api/object/DynamicObject;
astore 4 /* arrayBuffer */
end local 5 // java.nio.ByteBuffer buffer
start local 4 // com.oracle.truffle.api.object.DynamicObject arrayBuffer
7: .line 1623
goto 9
end local 4 // com.oracle.truffle.api.object.DynamicObject arrayBuffer
8: .line 1624
StackMap locals: com.oracle.truffle.api.TruffleFile byte[]
StackMap stack:
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
aload 3 /* bytes */
invokestatic com.oracle.truffle.js.runtime.builtins.JSArrayBuffer.createArrayBuffer:(Lcom/oracle/truffle/js/runtime/JSContext;[B)Lcom/oracle/truffle/api/object/DynamicObject;
astore 4 /* arrayBuffer */
start local 4 // com.oracle.truffle.api.object.DynamicObject arrayBuffer
9: .line 1626
StackMap locals: com.oracle.truffle.api.object.DynamicObject
StackMap stack:
aload 4 /* arrayBuffer */
10: areturn
end local 4 // com.oracle.truffle.api.object.DynamicObject arrayBuffer
end local 3 // byte[] bytes
11: .line 1627
StackMap locals: com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode java.lang.Object com.oracle.truffle.api.TruffleFile
StackMap stack: java.lang.Exception
astore 3 /* ex */
start local 3 // java.lang.Exception ex
12: .line 1628
aload 3 /* ex */
invokestatic com.oracle.truffle.js.runtime.Errors.createErrorFromException:(Ljava/lang/Throwable;)Lcom/oracle/truffle/js/runtime/JSException;
athrow
end local 3 // java.lang.Exception ex
end local 2 // com.oracle.truffle.api.TruffleFile file
end local 1 // java.lang.Object fileParam
end local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/oracle/truffle/js/builtins/GlobalBuiltins$JSGlobalReadBufferNode;
0 13 1 fileParam Ljava/lang/Object;
1 13 2 file Lcom/oracle/truffle/api/TruffleFile;
2 11 3 bytes [B
7 8 4 arrayBuffer Lcom/oracle/truffle/api/object/DynamicObject;
9 11 4 arrayBuffer Lcom/oracle/truffle/api/object/DynamicObject;
4 7 5 buffer Ljava/nio/ByteBuffer;
12 13 3 ex Ljava/lang/Exception;
Exception table:
from to target type
1 10 11 Class java.lang.Exception
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary(transferToInterpreterOnException = false)
MethodParameters:
Name Flags
fileParam
}
SourceFile: "GlobalBuiltins.java"
NestHost: com.oracle.truffle.js.builtins.GlobalBuiltins
InnerClasses:
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public abstract JSGlobalReadBufferNode = com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalReadBufferNode of com.oracle.truffle.js.builtins.GlobalBuiltins