public class sun.nio.ch.IOUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.nio.ch.IOUtil
  super_class: java.lang.Object
{
  static final int IOV_MAX;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  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=2, locals=0, args_size=0
         0: .line 37
            ldc Lsun/nio/ch/IOUtil;
            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 sun.nio.ch.IOUtil.$assertionsDisabled:Z
         3: .line 433
            new sun.nio.ch.IOUtil$1
            dup
            invokespecial sun.nio.ch.IOUtil$1.<init>:()V
         4: .line 432
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         5: .line 441
            invokestatic sun.nio.ch.IOUtil.initIDs:()V
         6: .line 443
            invokestatic sun.nio.ch.IOUtil.iovMax:()I
            putstatic sun.nio.ch.IOUtil.IOV_MAX:I
         7: .line 444
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.nio.ch.IOUtil this
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.nio.ch.IOUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/nio/ch/IOUtil;

  static int write(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer src
        start local 2 // long position
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 50
            aload 0 /* fd */
            aload 1 /* src */
            lload 2 /* position */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.write:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer src
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0        fd  Ljava/io/FileDescriptor;
            0    1     1       src  Ljava/nio/ByteBuffer;
            0    1     2  position  J
            0    1     4        nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      fd        
      src       
      position  
      nd        

  static int write(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=14, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer src
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 57
            aload 1 /* src */
            instanceof sun.nio.ch.DirectBuffer
            ifeq 4
         1: .line 58
            aload 0 /* fd */
            aload 1 /* src */
            lload 2 /* position */
         2: .line 59
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
         3: .line 58
            invokestatic sun.nio.ch.IOUtil.writeFromNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
         4: .line 63
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* pos */
        start local 7 // int pos
         5: .line 64
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 8 /* lim */
        start local 8 // int lim
         6: .line 65
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 7
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmple 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 66
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmpgt 8
            iload 8 /* lim */
            iload 7 /* pos */
            isub
            goto 9
      StackMap locals:
      StackMap stack:
         8: iconst_0
      StackMap locals:
      StackMap stack: int
         9: istore 9 /* rem */
        start local 9 // int rem
        10: .line 68
            iload 4 /* directIO */
            ifeq 14
        11: .line 69
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
        12: .line 70
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 10 /* bb */
        start local 10 // java.nio.ByteBuffer bb
        13: .line 71
            goto 15
        end local 10 // java.nio.ByteBuffer bb
        14: .line 72
      StackMap locals: int
      StackMap stack:
            iload 9 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 10 /* bb */
        start local 10 // java.nio.ByteBuffer bb
        15: .line 75
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 10 /* bb */
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        16: .line 76
            aload 10 /* bb */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        17: .line 78
            aload 1 /* src */
            iload 7 /* pos */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        18: .line 80
            aload 0 /* fd */
            aload 10 /* bb */
            lload 2 /* position */
        19: .line 81
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
        20: .line 80
            invokestatic sun.nio.ch.IOUtil.writeFromNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            istore 11 /* n */
        start local 11 // int n
        21: .line 82
            iload 11 /* n */
            ifle 23
        22: .line 84
            aload 1 /* src */
            iload 7 /* pos */
            iload 11 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        23: .line 86
      StackMap locals: int
      StackMap stack:
            iload 11 /* n */
            istore 13
        24: .line 88
            aload 10 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        25: .line 86
            iload 13
            ireturn
        end local 11 // int n
        26: .line 87
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher int int int java.nio.ByteBuffer
      StackMap stack: java.lang.Throwable
            astore 12
        27: .line 88
            aload 10 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        28: .line 89
            aload 12
            athrow
        end local 10 // java.nio.ByteBuffer bb
        end local 9 // int rem
        end local 8 // int lim
        end local 7 // int pos
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer src
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   29     0         fd  Ljava/io/FileDescriptor;
            0   29     1        src  Ljava/nio/ByteBuffer;
            0   29     2   position  J
            0   29     4   directIO  Z
            0   29     5  alignment  I
            0   29     6         nd  Lsun/nio/ch/NativeDispatcher;
            5   29     7        pos  I
            6   29     8        lim  I
           10   29     9        rem  I
           13   14    10         bb  Ljava/nio/ByteBuffer;
           15   29    10         bb  Ljava/nio/ByteBuffer;
           21   26    11          n  I
      Exception table:
        from    to  target  type
          15    24      26  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      src        
      position   
      directIO   
      alignment  
      nd         

  private static int writeFromNativeBuffer(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=11, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer bb
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 97
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* pos */
        start local 7 // int pos
         1: .line 98
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 8 /* lim */
        start local 8 // int lim
         2: .line 99
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 3
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmple 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 100
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmpgt 4
            iload 8 /* lim */
            iload 7 /* pos */
            isub
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 9 /* rem */
        start local 9 // int rem
         6: .line 102
            iload 4 /* directIO */
            ifeq 9
         7: .line 103
            aload 1 /* bb */
            iload 7 /* pos */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkBufferPositionAligned:(Ljava/nio/ByteBuffer;II)V
         8: .line 104
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
         9: .line 107
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 10 /* written */
        start local 10 // int written
        10: .line 108
            iload 9 /* rem */
            ifne 12
        11: .line 109
            iconst_0
            ireturn
        12: .line 110
      StackMap locals: int
      StackMap stack:
            lload 2 /* position */
            ldc -1
            lcmp
            ifeq 18
        13: .line 111
            aload 6 /* nd */
            aload 0 /* fd */
        14: .line 112
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
        15: .line 113
            iload 9 /* rem */
            lload 2 /* position */
        16: .line 111
            invokevirtual sun.nio.ch.NativeDispatcher.pwrite:(Ljava/io/FileDescriptor;JIJ)I
            istore 10 /* written */
        17: .line 114
            goto 19
        18: .line 115
      StackMap locals:
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
            iload 9 /* rem */
            invokevirtual sun.nio.ch.NativeDispatcher.write:(Ljava/io/FileDescriptor;JI)I
            istore 10 /* written */
        19: .line 117
      StackMap locals:
      StackMap stack:
            iload 10 /* written */
            ifle 21
        20: .line 118
            aload 1 /* bb */
            iload 7 /* pos */
            iload 10 /* written */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        21: .line 119
      StackMap locals:
      StackMap stack:
            iload 10 /* written */
            ireturn
        end local 10 // int written
        end local 9 // int rem
        end local 8 // int lim
        end local 7 // int pos
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer bb
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0         fd  Ljava/io/FileDescriptor;
            0   22     1         bb  Ljava/nio/ByteBuffer;
            0   22     2   position  J
            0   22     4   directIO  Z
            0   22     5  alignment  I
            0   22     6         nd  Lsun/nio/ch/NativeDispatcher;
            1   22     7        pos  I
            2   22     8        lim  I
            6   22     9        rem  I
           10   22    10    written  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bb         
      position   
      directIO   
      alignment  
      nd         

  static long write(java.io.FileDescriptor, java.nio.ByteBuffer[], sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;Lsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // sun.nio.ch.NativeDispatcher nd
         0: .line 125
            aload 0 /* fd */
            aload 1 /* bufs */
            iconst_0
            aload 1 /* bufs */
            arraylength
            iconst_0
            iconst_m1
            aload 2 /* nd */
            invokestatic sun.nio.ch.IOUtil.write:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 2 // sun.nio.ch.NativeDispatcher nd
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    fd  Ljava/io/FileDescriptor;
            0    1     1  bufs  [Ljava/nio/ByteBuffer;
            0    1     2    nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      bufs  
      nd    

  static long write(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 132
            aload 0 /* fd */
            aload 1 /* bufs */
            iload 2 /* offset */
            iload 3 /* length */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.write:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1    bufs  [Ljava/nio/ByteBuffer;
            0    1     2  offset  I
            0    1     3  length  I
            0    1     4      nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      bufs    
      offset  
      length  
      nd      

  static long write(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=26, args_size=7
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 139
            iload 3 /* length */
            invokestatic sun.nio.ch.IOVecWrapper.get:(I)Lsun/nio/ch/IOVecWrapper;
            astore 7 /* vec */
        start local 7 // sun.nio.ch.IOVecWrapper vec
         1: .line 141
            iconst_0
            istore 8 /* completed */
        start local 8 // boolean completed
         2: .line 142
            iconst_0
            istore 9 /* iov_len */
        start local 9 // int iov_len
         3: .line 146
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            istore 10 /* count */
        start local 10 // int count
         4: .line 147
            iload 2 /* offset */
            istore 11 /* i */
        start local 11 // int i
         5: .line 148
            goto 34
         6: .line 149
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            aload 1 /* bufs */
            iload 11 /* i */
            aaload
            astore 12 /* buf */
        start local 12 // java.nio.ByteBuffer buf
         7: .line 150
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        start local 13 // int pos
         8: .line 151
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 14 /* lim */
        start local 14 // int lim
         9: .line 152
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 10
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmple 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 153
      StackMap locals: java.nio.ByteBuffer int int
      StackMap stack:
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmpgt 11
            iload 14 /* lim */
            iload 13 /* pos */
            isub
            goto 12
      StackMap locals:
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 15 /* rem */
        start local 15 // int rem
        13: .line 154
            iload 4 /* directIO */
            ifeq 15
        14: .line 155
            iload 15 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
        15: .line 157
      StackMap locals: int
      StackMap stack:
            iload 15 /* rem */
            ifle 33
        16: .line 158
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            iload 13 /* pos */
            iload 15 /* rem */
            invokevirtual sun.nio.ch.IOVecWrapper.setBuffer:(ILjava/nio/ByteBuffer;II)V
        17: .line 161
            aload 12 /* buf */
            instanceof sun.nio.ch.DirectBuffer
            ifne 30
        18: .line 163
            iload 4 /* directIO */
            ifeq 23
        19: .line 164
            iload 15 /* rem */
        20: .line 165
            iload 5 /* alignment */
        21: .line 164
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        22: .line 165
            goto 24
        end local 16 // java.nio.ByteBuffer shadow
        23: .line 167
      StackMap locals:
      StackMap stack:
            iload 15 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        24: .line 168
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 16 /* shadow */
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        25: .line 169
            aload 16 /* shadow */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        26: .line 170
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 16 /* shadow */
            invokevirtual sun.nio.ch.IOVecWrapper.setShadow:(ILjava/nio/ByteBuffer;)V
        27: .line 171
            aload 12 /* buf */
            iload 13 /* pos */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        28: .line 172
            aload 16 /* shadow */
            astore 12 /* buf */
        29: .line 173
            aload 16 /* shadow */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        end local 16 // java.nio.ByteBuffer shadow
        30: .line 176
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 13 /* pos */
            i2l
            ladd
            invokevirtual sun.nio.ch.IOVecWrapper.putBase:(IJ)V
        31: .line 177
            aload 7 /* vec */
            iload 9 /* iov_len */
            iload 15 /* rem */
            i2l
            invokevirtual sun.nio.ch.IOVecWrapper.putLen:(IJ)V
        32: .line 178
            iinc 9 /* iov_len */ 1
        33: .line 180
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
        end local 15 // int rem
        end local 14 // int lim
        end local 13 // int pos
        end local 12 // java.nio.ByteBuffer buf
        34: .line 148
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            iload 11 /* i */
            iload 10 /* count */
            if_icmpge 35
            iload 9 /* iov_len */
            getstatic sun.nio.ch.IOUtil.IOV_MAX:I
            if_icmplt 6
        35: .line 182
      StackMap locals:
      StackMap stack:
            iload 9 /* iov_len */
            ifne 46
        36: .line 211
            iload 8 /* completed */
            ifne 45
        37: .line 212
            iconst_0
            istore 24 /* j */
        start local 24 // int j
        38: goto 44
        39: .line 213
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int top top top top top top top top top top top top int
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 25 /* shadow */
        start local 25 // java.nio.ByteBuffer shadow
        40: .line 214
            aload 25 /* shadow */
            ifnull 42
        41: .line 215
            aload 25 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        42: .line 216
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 25 // java.nio.ByteBuffer shadow
        43: .line 212
            iinc 24 /* j */ 1
      StackMap locals:
      StackMap stack:
        44: iload 24 /* j */
            iload 9 /* iov_len */
            if_icmplt 39
        end local 24 // int j
        45: .line 183
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            lconst_0
            lreturn
        46: .line 185
      StackMap locals:
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 7 /* vec */
            getfield sun.nio.ch.IOVecWrapper.address:J
            iload 9 /* iov_len */
            invokevirtual sun.nio.ch.NativeDispatcher.writev:(Ljava/io/FileDescriptor;JI)J
            lstore 12 /* bytesWritten */
        start local 12 // long bytesWritten
        47: .line 188
            lload 12 /* bytesWritten */
            lstore 14 /* left */
        start local 14 // long left
        48: .line 189
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        49: goto 64
        50: .line 190
      StackMap locals: long long int
      StackMap stack:
            lload 14 /* left */
            lconst_0
            lcmp
            ifle 59
        51: .line 191
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getBuffer:(I)Ljava/nio/ByteBuffer;
            astore 17 /* buf */
        start local 17 // java.nio.ByteBuffer buf
        52: .line 192
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getPosition:(I)I
            istore 18 /* pos */
        start local 18 // int pos
        53: .line 193
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getRemaining:(I)I
            istore 19 /* rem */
        start local 19 // int rem
        54: .line 194
            lload 14 /* left */
            iload 19 /* rem */
            i2l
            lcmp
            ifle 55
            iload 19 /* rem */
            goto 56
      StackMap locals: java.nio.ByteBuffer int int
      StackMap stack:
        55: lload 14 /* left */
            l2i
      StackMap locals:
      StackMap stack: int
        56: istore 20 /* n */
        start local 20 // int n
        57: .line 195
            aload 17 /* buf */
            iload 18 /* pos */
            iload 20 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        58: .line 196
            lload 14 /* left */
            iload 20 /* n */
            i2l
            lsub
            lstore 14 /* left */
        end local 20 // int n
        end local 19 // int rem
        end local 18 // int pos
        end local 17 // java.nio.ByteBuffer buf
        59: .line 199
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 17 /* shadow */
        start local 17 // java.nio.ByteBuffer shadow
        60: .line 200
            aload 17 /* shadow */
            ifnull 62
        61: .line 201
            aload 17 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        62: .line 202
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 17 // java.nio.ByteBuffer shadow
        63: .line 189
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        64: iload 16 /* j */
            iload 9 /* iov_len */
            if_icmplt 50
        end local 16 // int j
        65: .line 205
            iconst_1
            istore 8 /* completed */
        66: .line 206
            lload 12 /* bytesWritten */
            lstore 22
        67: .line 211
            iload 8 /* completed */
            ifne 76
        68: .line 212
            iconst_0
            istore 24 /* j */
        start local 24 // int j
        69: goto 75
        70: .line 213
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int long long top top top top top top long int
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 25 /* shadow */
        start local 25 // java.nio.ByteBuffer shadow
        71: .line 214
            aload 25 /* shadow */
            ifnull 73
        72: .line 215
            aload 25 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        73: .line 216
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 25 // java.nio.ByteBuffer shadow
        74: .line 212
            iinc 24 /* j */ 1
      StackMap locals:
      StackMap stack:
        75: iload 24 /* j */
            iload 9 /* iov_len */
            if_icmplt 70
        end local 24 // int j
        76: .line 206
      StackMap locals:
      StackMap stack:
            lload 22
            lreturn
        end local 14 // long left
        end local 12 // long bytesWritten
        end local 11 // int i
        end local 10 // int count
        77: .line 208
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int
      StackMap stack: java.lang.Throwable
            astore 21
        78: .line 211
            iload 8 /* completed */
            ifne 87
        79: .line 212
            iconst_0
            istore 24 /* j */
        start local 24 // int j
        80: goto 86
        81: .line 213
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top java.lang.Throwable top top int
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 25 /* shadow */
        start local 25 // java.nio.ByteBuffer shadow
        82: .line 214
            aload 25 /* shadow */
            ifnull 84
        83: .line 215
            aload 25 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        84: .line 216
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 25 // java.nio.ByteBuffer shadow
        85: .line 212
            iinc 24 /* j */ 1
      StackMap locals:
      StackMap stack:
        86: iload 24 /* j */
            iload 9 /* iov_len */
            if_icmplt 81
        end local 24 // int j
        87: .line 219
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 21
            athrow
        end local 9 // int iov_len
        end local 8 // boolean completed
        end local 7 // sun.nio.ch.IOVecWrapper vec
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   88     0            fd  Ljava/io/FileDescriptor;
            0   88     1          bufs  [Ljava/nio/ByteBuffer;
            0   88     2        offset  I
            0   88     3        length  I
            0   88     4      directIO  Z
            0   88     5     alignment  I
            0   88     6            nd  Lsun/nio/ch/NativeDispatcher;
            1   88     7           vec  Lsun/nio/ch/IOVecWrapper;
            2   88     8     completed  Z
            3   88     9       iov_len  I
            4   77    10         count  I
            5   77    11             i  I
            7   34    12           buf  Ljava/nio/ByteBuffer;
            8   34    13           pos  I
            9   34    14           lim  I
           13   34    15           rem  I
           22   23    16        shadow  Ljava/nio/ByteBuffer;
           24   30    16        shadow  Ljava/nio/ByteBuffer;
           47   77    12  bytesWritten  J
           48   77    14          left  J
           49   65    16             j  I
           52   59    17           buf  Ljava/nio/ByteBuffer;
           53   59    18           pos  I
           54   59    19           rem  I
           57   59    20             n  I
           60   63    17        shadow  Ljava/nio/ByteBuffer;
           38   45    24             j  I
           69   76    24             j  I
           80   87    24             j  I
           40   43    25        shadow  Ljava/nio/ByteBuffer;
           71   74    25        shadow  Ljava/nio/ByteBuffer;
           82   85    25        shadow  Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           3    36      77  any
          46    67      77  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bufs       
      offset     
      length     
      directIO   
      alignment  
      nd         

  static int read(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer dst
        start local 2 // long position
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 226
            aload 0 /* fd */
            aload 1 /* dst */
            lload 2 /* position */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.read:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0        fd  Ljava/io/FileDescriptor;
            0    1     1       dst  Ljava/nio/ByteBuffer;
            0    1     2  position  J
            0    1     4        nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      fd        
      dst       
      position  
      nd        

  static int read(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=12, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer dst
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 233
            aload 1 /* dst */
            invokevirtual java.nio.ByteBuffer.isReadOnly:()Z
            ifeq 2
         1: .line 234
            new java.lang.IllegalArgumentException
            dup
            ldc "Read-only buffer"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 235
      StackMap locals:
      StackMap stack:
            aload 1 /* dst */
            instanceof sun.nio.ch.DirectBuffer
            ifeq 6
         3: .line 236
            aload 0 /* fd */
            aload 1 /* dst */
            lload 2 /* position */
         4: .line 237
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
         5: .line 236
            invokestatic sun.nio.ch.IOUtil.readIntoNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
         6: .line 241
      StackMap locals:
      StackMap stack:
            aload 1 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 8 /* rem */
        start local 8 // int rem
         7: .line 242
            iload 4 /* directIO */
            ifeq 13
         8: .line 243
            iload 8 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
         9: .line 244
            iload 8 /* rem */
        10: .line 245
            iload 5 /* alignment */
        11: .line 244
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 7 /* bb */
        start local 7 // java.nio.ByteBuffer bb
        12: .line 246
            goto 14
        end local 7 // java.nio.ByteBuffer bb
        13: .line 247
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher top int
      StackMap stack:
            iload 8 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 7 /* bb */
        start local 7 // java.nio.ByteBuffer bb
        14: .line 250
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher java.nio.ByteBuffer int
      StackMap stack:
            aload 0 /* fd */
            aload 7 /* bb */
            lload 2 /* position */
        15: .line 251
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
        16: .line 250
            invokestatic sun.nio.ch.IOUtil.readIntoNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            istore 9 /* n */
        start local 9 // int n
        17: .line 252
            aload 7 /* bb */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        18: .line 253
            iload 9 /* n */
            ifle 20
        19: .line 254
            aload 1 /* dst */
            aload 7 /* bb */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        20: .line 255
      StackMap locals: int
      StackMap stack:
            iload 9 /* n */
            istore 11
        21: .line 257
            aload 7 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        22: .line 255
            iload 11
            ireturn
        end local 9 // int n
        23: .line 256
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher java.nio.ByteBuffer int
      StackMap stack: java.lang.Throwable
            astore 10
        24: .line 257
            aload 7 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        25: .line 258
            aload 10
            athrow
        end local 8 // int rem
        end local 7 // java.nio.ByteBuffer bb
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   26     0         fd  Ljava/io/FileDescriptor;
            0   26     1        dst  Ljava/nio/ByteBuffer;
            0   26     2   position  J
            0   26     4   directIO  Z
            0   26     5  alignment  I
            0   26     6         nd  Lsun/nio/ch/NativeDispatcher;
           12   13     7         bb  Ljava/nio/ByteBuffer;
           14   26     7         bb  Ljava/nio/ByteBuffer;
            7   26     8        rem  I
           17   23     9          n  I
      Exception table:
        from    to  target  type
          14    21      23  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      dst        
      position   
      directIO   
      alignment  
      nd         

  private static int readIntoNativeBuffer(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=11, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer bb
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 266
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* pos */
        start local 7 // int pos
         1: .line 267
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 8 /* lim */
        start local 8 // int lim
         2: .line 268
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 3
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmple 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 269
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmpgt 4
            iload 8 /* lim */
            iload 7 /* pos */
            isub
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 9 /* rem */
        start local 9 // int rem
         6: .line 271
            iload 4 /* directIO */
            ifeq 9
         7: .line 272
            aload 1 /* bb */
            iload 7 /* pos */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkBufferPositionAligned:(Ljava/nio/ByteBuffer;II)V
         8: .line 273
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
         9: .line 276
      StackMap locals: int
      StackMap stack:
            iload 9 /* rem */
            ifne 11
        10: .line 277
            iconst_0
            ireturn
        11: .line 278
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* n */
        start local 10 // int n
        12: .line 279
            lload 2 /* position */
            ldc -1
            lcmp
            ifeq 17
        13: .line 280
            aload 6 /* nd */
            aload 0 /* fd */
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
        14: .line 281
            iload 9 /* rem */
            lload 2 /* position */
        15: .line 280
            invokevirtual sun.nio.ch.NativeDispatcher.pread:(Ljava/io/FileDescriptor;JIJ)I
            istore 10 /* n */
        16: .line 282
            goto 18
        17: .line 283
      StackMap locals: int
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
            iload 9 /* rem */
            invokevirtual sun.nio.ch.NativeDispatcher.read:(Ljava/io/FileDescriptor;JI)I
            istore 10 /* n */
        18: .line 285
      StackMap locals:
      StackMap stack:
            iload 10 /* n */
            ifle 20
        19: .line 286
            aload 1 /* bb */
            iload 7 /* pos */
            iload 10 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        20: .line 287
      StackMap locals:
      StackMap stack:
            iload 10 /* n */
            ireturn
        end local 10 // int n
        end local 9 // int rem
        end local 8 // int lim
        end local 7 // int pos
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer bb
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0         fd  Ljava/io/FileDescriptor;
            0   21     1         bb  Ljava/nio/ByteBuffer;
            0   21     2   position  J
            0   21     4   directIO  Z
            0   21     5  alignment  I
            0   21     6         nd  Lsun/nio/ch/NativeDispatcher;
            1   21     7        pos  I
            2   21     8        lim  I
            6   21     9        rem  I
           12   21    10          n  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bb         
      position   
      directIO   
      alignment  
      nd         

  static long read(java.io.FileDescriptor, java.nio.ByteBuffer[], sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;Lsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // sun.nio.ch.NativeDispatcher nd
         0: .line 293
            aload 0 /* fd */
            aload 1 /* bufs */
            iconst_0
            aload 1 /* bufs */
            arraylength
            iconst_0
            iconst_m1
            aload 2 /* nd */
            invokestatic sun.nio.ch.IOUtil.read:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 2 // sun.nio.ch.NativeDispatcher nd
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    fd  Ljava/io/FileDescriptor;
            0    1     1  bufs  [Ljava/nio/ByteBuffer;
            0    1     2    nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      bufs  
      nd    

  static long read(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 300
            aload 0 /* fd */
            aload 1 /* bufs */
            iload 2 /* offset */
            iload 3 /* length */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.read:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1    bufs  [Ljava/nio/ByteBuffer;
            0    1     2  offset  I
            0    1     3  length  I
            0    1     4      nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      bufs    
      offset  
      length  
      nd      

  static long read(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=27, args_size=7
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 307
            iload 3 /* length */
            invokestatic sun.nio.ch.IOVecWrapper.get:(I)Lsun/nio/ch/IOVecWrapper;
            astore 7 /* vec */
        start local 7 // sun.nio.ch.IOVecWrapper vec
         1: .line 309
            iconst_0
            istore 8 /* completed */
        start local 8 // boolean completed
         2: .line 310
            iconst_0
            istore 9 /* iov_len */
        start local 9 // int iov_len
         3: .line 314
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            istore 10 /* count */
        start local 10 // int count
         4: .line 315
            iload 2 /* offset */
            istore 11 /* i */
        start local 11 // int i
         5: .line 316
            goto 33
         6: .line 317
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            aload 1 /* bufs */
            iload 11 /* i */
            aaload
            astore 12 /* buf */
        start local 12 // java.nio.ByteBuffer buf
         7: .line 318
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.isReadOnly:()Z
            ifeq 9
         8: .line 319
            new java.lang.IllegalArgumentException
            dup
            ldc "Read-only buffer"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 320
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        start local 13 // int pos
        10: .line 321
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 14 /* lim */
        start local 14 // int lim
        11: .line 322
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 12
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmple 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 323
      StackMap locals: int int
      StackMap stack:
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmpgt 13
            iload 14 /* lim */
            iload 13 /* pos */
            isub
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 15 /* rem */
        start local 15 // int rem
        15: .line 325
            iload 4 /* directIO */
            ifeq 17
        16: .line 326
            iload 15 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
        17: .line 328
      StackMap locals: int
      StackMap stack:
            iload 15 /* rem */
            ifle 32
        18: .line 329
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            iload 13 /* pos */
            iload 15 /* rem */
            invokevirtual sun.nio.ch.IOVecWrapper.setBuffer:(ILjava/nio/ByteBuffer;II)V
        19: .line 332
            aload 12 /* buf */
            instanceof sun.nio.ch.DirectBuffer
            ifne 29
        20: .line 334
            iload 4 /* directIO */
            ifeq 25
        21: .line 335
            iload 15 /* rem */
        22: .line 336
            iload 5 /* alignment */
        23: .line 335
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        24: .line 337
            goto 26
        end local 16 // java.nio.ByteBuffer shadow
        25: .line 338
      StackMap locals:
      StackMap stack:
            iload 15 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        26: .line 340
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 16 /* shadow */
            invokevirtual sun.nio.ch.IOVecWrapper.setShadow:(ILjava/nio/ByteBuffer;)V
        27: .line 341
            aload 16 /* shadow */
            astore 12 /* buf */
        28: .line 342
            aload 16 /* shadow */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        end local 16 // java.nio.ByteBuffer shadow
        29: .line 345
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 13 /* pos */
            i2l
            ladd
            invokevirtual sun.nio.ch.IOVecWrapper.putBase:(IJ)V
        30: .line 346
            aload 7 /* vec */
            iload 9 /* iov_len */
            iload 15 /* rem */
            i2l
            invokevirtual sun.nio.ch.IOVecWrapper.putLen:(IJ)V
        31: .line 347
            iinc 9 /* iov_len */ 1
        32: .line 349
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
        end local 15 // int rem
        end local 14 // int lim
        end local 13 // int pos
        end local 12 // java.nio.ByteBuffer buf
        33: .line 316
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            iload 11 /* i */
            iload 10 /* count */
            if_icmpge 34
            iload 9 /* iov_len */
            getstatic sun.nio.ch.IOUtil.IOV_MAX:I
            if_icmplt 6
        34: .line 351
      StackMap locals:
      StackMap stack:
            iload 9 /* iov_len */
            ifne 45
        35: .line 384
            iload 8 /* completed */
            ifne 44
        36: .line 385
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        37: goto 43
        38: .line 386
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int top top top top top top top top top top top top top int
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 26 /* shadow */
        start local 26 // java.nio.ByteBuffer shadow
        39: .line 387
            aload 26 /* shadow */
            ifnull 41
        40: .line 388
            aload 26 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        41: .line 389
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 26 // java.nio.ByteBuffer shadow
        42: .line 385
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        43: iload 25 /* j */
            iload 9 /* iov_len */
            if_icmplt 38
        end local 25 // int j
        44: .line 352
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            lconst_0
            lreturn
        45: .line 354
      StackMap locals:
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 7 /* vec */
            getfield sun.nio.ch.IOVecWrapper.address:J
            iload 9 /* iov_len */
            invokevirtual sun.nio.ch.NativeDispatcher.readv:(Ljava/io/FileDescriptor;JI)J
            lstore 12 /* bytesRead */
        start local 12 // long bytesRead
        46: .line 357
            lload 12 /* bytesRead */
            lstore 14 /* left */
        start local 14 // long left
        47: .line 358
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        48: goto 67
        49: .line 359
      StackMap locals: long long int
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 17 /* shadow */
        start local 17 // java.nio.ByteBuffer shadow
        50: .line 360
            lload 14 /* left */
            lconst_0
            lcmp
            ifle 63
        51: .line 361
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getBuffer:(I)Ljava/nio/ByteBuffer;
            astore 18 /* buf */
        start local 18 // java.nio.ByteBuffer buf
        52: .line 362
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getRemaining:(I)I
            istore 19 /* rem */
        start local 19 // int rem
        53: .line 363
            lload 14 /* left */
            iload 19 /* rem */
            i2l
            lcmp
            ifle 54
            iload 19 /* rem */
            goto 55
      StackMap locals: java.nio.ByteBuffer java.nio.ByteBuffer int
      StackMap stack:
        54: lload 14 /* left */
            l2i
      StackMap locals:
      StackMap stack: int
        55: istore 20 /* n */
        start local 20 // int n
        56: .line 364
            aload 17 /* shadow */
            ifnonnull 60
        57: .line 365
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getPosition:(I)I
            istore 21 /* pos */
        start local 21 // int pos
        58: .line 366
            aload 18 /* buf */
            iload 21 /* pos */
            iload 20 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        end local 21 // int pos
        59: .line 367
            goto 62
        60: .line 368
      StackMap locals: int
      StackMap stack:
            aload 17 /* shadow */
            aload 17 /* shadow */
            invokevirtual java.nio.ByteBuffer.position:()I
            iload 20 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.limit:(I)Ljava/nio/ByteBuffer;
            pop
        61: .line 369
            aload 18 /* buf */
            aload 17 /* shadow */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        62: .line 371
      StackMap locals:
      StackMap stack:
            lload 14 /* left */
            iload 20 /* n */
            i2l
            lsub
            lstore 14 /* left */
        end local 20 // int n
        end local 19 // int rem
        end local 18 // java.nio.ByteBuffer buf
        63: .line 373
      StackMap locals:
      StackMap stack:
            aload 17 /* shadow */
            ifnull 65
        64: .line 374
            aload 17 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        65: .line 375
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 17 // java.nio.ByteBuffer shadow
        66: .line 358
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        67: iload 16 /* j */
            iload 9 /* iov_len */
            if_icmplt 49
        end local 16 // int j
        68: .line 378
            iconst_1
            istore 8 /* completed */
        69: .line 379
            lload 12 /* bytesRead */
            lstore 23
        70: .line 384
            iload 8 /* completed */
            ifne 79
        71: .line 385
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        72: goto 78
        73: .line 386
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int long long top top top top top top top long int
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 26 /* shadow */
        start local 26 // java.nio.ByteBuffer shadow
        74: .line 387
            aload 26 /* shadow */
            ifnull 76
        75: .line 388
            aload 26 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        76: .line 389
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 26 // java.nio.ByteBuffer shadow
        77: .line 385
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        78: iload 25 /* j */
            iload 9 /* iov_len */
            if_icmplt 73
        end local 25 // int j
        79: .line 379
      StackMap locals:
      StackMap stack:
            lload 23
            lreturn
        end local 14 // long left
        end local 12 // long bytesRead
        end local 11 // int i
        end local 10 // int count
        80: .line 381
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int
      StackMap stack: java.lang.Throwable
            astore 22
        81: .line 384
            iload 8 /* completed */
            ifne 90
        82: .line 385
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        83: goto 89
        84: .line 386
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top top java.lang.Throwable top top int
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 26 /* shadow */
        start local 26 // java.nio.ByteBuffer shadow
        85: .line 387
            aload 26 /* shadow */
            ifnull 87
        86: .line 388
            aload 26 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        87: .line 389
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 26 // java.nio.ByteBuffer shadow
        88: .line 385
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        89: iload 25 /* j */
            iload 9 /* iov_len */
            if_icmplt 84
        end local 25 // int j
        90: .line 392
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 22
            athrow
        end local 9 // int iov_len
        end local 8 // boolean completed
        end local 7 // sun.nio.ch.IOVecWrapper vec
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   91     0         fd  Ljava/io/FileDescriptor;
            0   91     1       bufs  [Ljava/nio/ByteBuffer;
            0   91     2     offset  I
            0   91     3     length  I
            0   91     4   directIO  Z
            0   91     5  alignment  I
            0   91     6         nd  Lsun/nio/ch/NativeDispatcher;
            1   91     7        vec  Lsun/nio/ch/IOVecWrapper;
            2   91     8  completed  Z
            3   91     9    iov_len  I
            4   80    10      count  I
            5   80    11          i  I
            7   33    12        buf  Ljava/nio/ByteBuffer;
           10   33    13        pos  I
           11   33    14        lim  I
           15   33    15        rem  I
           24   25    16     shadow  Ljava/nio/ByteBuffer;
           26   29    16     shadow  Ljava/nio/ByteBuffer;
           46   80    12  bytesRead  J
           47   80    14       left  J
           48   68    16          j  I
           50   66    17     shadow  Ljava/nio/ByteBuffer;
           52   63    18        buf  Ljava/nio/ByteBuffer;
           53   63    19        rem  I
           56   63    20          n  I
           58   59    21        pos  I
           37   44    25          j  I
           72   79    25          j  I
           83   90    25          j  I
           39   42    26     shadow  Ljava/nio/ByteBuffer;
           74   77    26     shadow  Ljava/nio/ByteBuffer;
           85   88    26     shadow  Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           3    35      80  any
          45    70      80  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bufs       
      offset     
      length     
      directIO   
      alignment  
      nd         

  public static java.io.FileDescriptor newFD(int);
    descriptor: (I)Ljava/io/FileDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // int i
         0: .line 396
            new java.io.FileDescriptor
            dup
            invokespecial java.io.FileDescriptor.<init>:()V
            astore 1 /* fd */
        start local 1 // java.io.FileDescriptor fd
         1: .line 397
            aload 1 /* fd */
            iload 0 /* i */
            invokestatic sun.nio.ch.IOUtil.setfdVal:(Ljava/io/FileDescriptor;I)V
         2: .line 398
            aload 1 /* fd */
            areturn
        end local 1 // java.io.FileDescriptor fd
        end local 0 // int i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     i  I
            1    3     1    fd  Ljava/io/FileDescriptor;
    MethodParameters:
      Name  Flags
      i     

  static native boolean randomBytes(byte[]);
    descriptor: ([B)Z
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    MethodParameters:
           Name  Flags
      someBytes  

  static native long makePipe(boolean);
    descriptor: (Z)J
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    MethodParameters:
          Name  Flags
      blocking  

  static native boolean drain(int);
    descriptor: (I)Z
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  public static native void configureBlocking(java.io.FileDescriptor, boolean);
    descriptor: (Ljava/io/FileDescriptor;Z)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      fd        
      blocking  

  public static native int fdVal(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      fd    

  static native void setfdVal(java.io.FileDescriptor, int);
    descriptor: (Ljava/io/FileDescriptor;I)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    MethodParameters:
       Name  Flags
      fd     
      value  

  static native int fdLimit();
    descriptor: ()I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native int iovMax();
    descriptor: ()I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native void initIDs();
    descriptor: ()V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  public static void load();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         0: .line 429
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "IOUtil.java"
NestMembers:
  sun.nio.ch.IOUtil$1
InnerClasses:
  sun.nio.ch.IOUtil$1