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