class sun.nio.ch.IOUtil
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.ch.IOUtil
super_class: java.lang.Object
{
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 40
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 365
new sun.nio.ch.IOUtil$1
dup
invokespecial sun.nio.ch.IOUtil$1.<init>:()V
4: .line 364
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
5: .line 373
invokestatic sun.nio.ch.IOUtil.initIDs:()V
6: .line 374
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 42
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;
private static int remaining(java.nio.ByteBuffer[]);
descriptor: ([Ljava/nio/ByteBuffer;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 // java.nio.ByteBuffer[] bufs
0: .line 49
aload 0 /* bufs */
arraylength
istore 1 /* numBufs */
start local 1 // int numBufs
1: .line 51
iconst_0
istore 2 /* i */
start local 2 // int i
2: goto 6
3: .line 52
StackMap locals: int int
StackMap stack:
aload 0 /* bufs */
iload 2 /* i */
aaload
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 5
4: .line 53
iload 2 /* i */
ireturn
5: .line 51
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 2 /* i */
iload 1 /* numBufs */
if_icmplt 3
end local 2 // int i
7: .line 56
iconst_m1
ireturn
end local 1 // int numBufs
end local 0 // java.nio.ByteBuffer[] bufs
LocalVariableTable:
Start End Slot Name Signature
0 8 0 bufs [Ljava/nio/ByteBuffer;
1 8 1 numBufs I
2 7 2 i I
MethodParameters:
Name Flags
bufs
private static java.nio.ByteBuffer[] skipBufs(java.nio.ByteBuffer[], int);
descriptor: ([Ljava/nio/ByteBuffer;I)[Ljava/nio/ByteBuffer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=2
start local 0 // java.nio.ByteBuffer[] bufs
start local 1 // int nextWithRemaining
0: .line 65
aload 0 /* bufs */
arraylength
iload 1 /* nextWithRemaining */
isub
istore 2 /* newSize */
start local 2 // int newSize
1: .line 66
iload 2 /* newSize */
anewarray java.nio.ByteBuffer
astore 3 /* temp */
start local 3 // java.nio.ByteBuffer[] temp
2: .line 67
iconst_0
istore 4 /* i */
start local 4 // int i
3: goto 6
4: .line 68
StackMap locals: int java.nio.ByteBuffer[] int
StackMap stack:
aload 3 /* temp */
iload 4 /* i */
aload 0 /* bufs */
iload 4 /* i */
iload 1 /* nextWithRemaining */
iadd
aaload
aastore
5: .line 67
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 4 /* i */
iload 2 /* newSize */
if_icmplt 4
end local 4 // int i
7: .line 70
aload 3 /* temp */
areturn
end local 3 // java.nio.ByteBuffer[] temp
end local 2 // int newSize
end local 1 // int nextWithRemaining
end local 0 // java.nio.ByteBuffer[] bufs
LocalVariableTable:
Start End Slot Name Signature
0 8 0 bufs [Ljava/nio/ByteBuffer;
0 8 1 nextWithRemaining I
1 8 2 newSize I
2 8 3 temp [Ljava/nio/ByteBuffer;
3 7 4 i I
MethodParameters:
Name Flags
bufs
nextWithRemaining
static int write(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher, java.lang.Object);
descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=13, args_size=5
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
start local 5 // java.lang.Object lock
0: .line 77
aload 1 /* src */
instanceof sun.nio.ch.DirectBuffer
ifeq 2
1: .line 78
aload 0 /* fd */
aload 1 /* src */
lload 2 /* position */
aload 4 /* nd */
aload 5 /* lock */
invokestatic sun.nio.ch.IOUtil.writeFromNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
ireturn
2: .line 81
StackMap locals:
StackMap stack:
aload 1 /* src */
invokevirtual java.nio.ByteBuffer.position:()I
istore 6 /* pos */
start local 6 // int pos
3: .line 82
aload 1 /* src */
invokevirtual java.nio.ByteBuffer.limit:()I
istore 7 /* lim */
start local 7 // int lim
4: .line 83
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 5
iload 6 /* pos */
iload 7 /* lim */
if_icmple 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: .line 84
StackMap locals: int int
StackMap stack:
iload 6 /* pos */
iload 7 /* lim */
if_icmpgt 6
iload 7 /* lim */
iload 6 /* pos */
isub
goto 7
StackMap locals:
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: istore 8 /* rem */
start local 8 // int rem
8: .line 85
aconst_null
astore 9 /* bb */
start local 9 // java.nio.ByteBuffer bb
9: .line 87
iload 8 /* rem */
invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
astore 9 /* bb */
10: .line 88
aload 9 /* bb */
aload 1 /* src */
invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
pop
11: .line 89
aload 9 /* bb */
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
12: .line 91
aload 1 /* src */
iload 6 /* pos */
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
13: .line 93
aload 0 /* fd */
aload 9 /* bb */
lload 2 /* position */
aload 4 /* nd */
aload 5 /* lock */
invokestatic sun.nio.ch.IOUtil.writeFromNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
istore 10 /* n */
start local 10 // int n
14: .line 94
iload 10 /* n */
ifle 16
15: .line 96
aload 1 /* src */
iload 6 /* pos */
iload 10 /* n */
iadd
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
16: .line 98
StackMap locals: int java.nio.ByteBuffer int
StackMap stack:
iload 10 /* n */
istore 12
17: .line 100
aload 9 /* bb */
invokestatic sun.nio.ch.Util.releaseTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
18: .line 98
iload 12
ireturn
end local 10 // int n
19: .line 99
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long sun.nio.ch.NativeDispatcher java.lang.Object int int int java.nio.ByteBuffer
StackMap stack: java.lang.Throwable
astore 11
20: .line 100
aload 9 /* bb */
invokestatic sun.nio.ch.Util.releaseTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
21: .line 101
aload 11
athrow
end local 9 // java.nio.ByteBuffer bb
end local 8 // int rem
end local 7 // int lim
end local 6 // int pos
end local 5 // java.lang.Object lock
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 22 0 fd Ljava/io/FileDescriptor;
0 22 1 src Ljava/nio/ByteBuffer;
0 22 2 position J
0 22 4 nd Lsun/nio/ch/NativeDispatcher;
0 22 5 lock Ljava/lang/Object;
3 22 6 pos I
4 22 7 lim I
8 22 8 rem I
9 22 9 bb Ljava/nio/ByteBuffer;
14 19 10 n I
Exception table:
from to target type
9 17 19 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
src
position
nd
lock
private static int writeFromNativeBuffer(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher, java.lang.Object);
descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=10, args_size=5
start local 0 // java.io.FileDescriptor fd
start local 1 // java.nio.ByteBuffer bb
start local 2 // long position
start local 4 // sun.nio.ch.NativeDispatcher nd
start local 5 // java.lang.Object lock
0: .line 109
aload 1 /* bb */
invokevirtual java.nio.ByteBuffer.position:()I
istore 6 /* pos */
start local 6 // int pos
1: .line 110
aload 1 /* bb */
invokevirtual java.nio.ByteBuffer.limit:()I
istore 7 /* lim */
start local 7 // int lim
2: .line 111
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 3
iload 6 /* pos */
iload 7 /* lim */
if_icmple 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 112
StackMap locals: int int
StackMap stack:
iload 6 /* pos */
iload 7 /* lim */
if_icmpgt 4
iload 7 /* lim */
iload 6 /* pos */
isub
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 8 /* rem */
start local 8 // int rem
6: .line 114
iconst_0
istore 9 /* written */
start local 9 // int written
7: .line 115
iload 8 /* rem */
ifne 9
8: .line 116
iconst_0
ireturn
9: .line 117
StackMap locals: int int
StackMap stack:
lload 2 /* position */
ldc -1
lcmp
ifeq 15
10: .line 118
aload 4 /* nd */
aload 0 /* fd */
11: .line 119
aload 1 /* bb */
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
iload 6 /* pos */
i2l
ladd
12: .line 120
iload 8 /* rem */
lload 2 /* position */
aload 5 /* lock */
13: .line 118
invokevirtual sun.nio.ch.NativeDispatcher.pwrite:(Ljava/io/FileDescriptor;JIJLjava/lang/Object;)I
istore 9 /* written */
14: .line 121
goto 16
15: .line 122
StackMap locals:
StackMap stack:
aload 4 /* nd */
aload 0 /* fd */
aload 1 /* bb */
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
iload 6 /* pos */
i2l
ladd
iload 8 /* rem */
invokevirtual sun.nio.ch.NativeDispatcher.write:(Ljava/io/FileDescriptor;JI)I
istore 9 /* written */
16: .line 124
StackMap locals:
StackMap stack:
iload 9 /* written */
ifle 18
17: .line 125
aload 1 /* bb */
iload 6 /* pos */
iload 9 /* written */
iadd
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
18: .line 126
StackMap locals:
StackMap stack:
iload 9 /* written */
ireturn
end local 9 // int written
end local 8 // int rem
end local 7 // int lim
end local 6 // int pos
end local 5 // java.lang.Object lock
end local 4 // sun.nio.ch.NativeDispatcher nd
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 19 0 fd Ljava/io/FileDescriptor;
0 19 1 bb Ljava/nio/ByteBuffer;
0 19 2 position J
0 19 4 nd Lsun/nio/ch/NativeDispatcher;
0 19 5 lock Ljava/lang/Object;
1 19 6 pos I
2 19 7 lim I
6 19 8 rem I
7 19 9 written I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
bb
position
nd
lock
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=6, locals=17, 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 132
aload 1 /* bufs */
invokestatic sun.nio.ch.IOUtil.remaining:([Ljava/nio/ByteBuffer;)I
istore 3 /* nextWithRemaining */
start local 3 // int nextWithRemaining
1: .line 134
iload 3 /* nextWithRemaining */
ifge 3
2: .line 135
lconst_0
lreturn
3: .line 137
StackMap locals: int
StackMap stack:
iload 3 /* nextWithRemaining */
ifle 5
4: .line 138
aload 1 /* bufs */
iload 3 /* nextWithRemaining */
invokestatic sun.nio.ch.IOUtil.skipBufs:([Ljava/nio/ByteBuffer;I)[Ljava/nio/ByteBuffer;
astore 1 /* bufs */
5: .line 140
StackMap locals:
StackMap stack:
aload 1 /* bufs */
arraylength
istore 4 /* numBufs */
start local 4 // int numBufs
6: .line 144
iload 4 /* numBufs */
anewarray java.nio.ByteBuffer
astore 5 /* shadow */
start local 5 // java.nio.ByteBuffer[] shadow
7: .line 145
iconst_0
istore 6 /* i */
start local 6 // int i
8: goto 24
9: .line 146
StackMap locals: int java.nio.ByteBuffer[] int
StackMap stack:
aload 1 /* bufs */
iload 6 /* i */
aaload
instanceof sun.nio.ch.DirectBuffer
ifne 22
10: .line 147
aload 1 /* bufs */
iload 6 /* i */
aaload
invokevirtual java.nio.ByteBuffer.position:()I
istore 7 /* pos */
start local 7 // int pos
11: .line 148
aload 1 /* bufs */
iload 6 /* i */
aaload
invokevirtual java.nio.ByteBuffer.limit:()I
istore 8 /* lim */
start local 8 // int lim
12: .line 149
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 13
iload 7 /* pos */
iload 8 /* lim */
if_icmple 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: .line 150
StackMap locals: int int
StackMap stack:
iload 7 /* pos */
iload 8 /* lim */
if_icmpgt 14
iload 8 /* lim */
iload 7 /* pos */
isub
goto 15
StackMap locals:
StackMap stack:
14: iconst_0
StackMap locals:
StackMap stack: int
15: istore 9 /* rem */
start local 9 // int rem
16: .line 152
iload 9 /* rem */
invokestatic java.nio.ByteBuffer.allocateDirect:(I)Ljava/nio/ByteBuffer;
astore 10 /* bb */
start local 10 // java.nio.ByteBuffer bb
17: .line 153
aload 5 /* shadow */
iload 6 /* i */
aload 10 /* bb */
aastore
18: .line 156
aload 10 /* bb */
aload 1 /* bufs */
iload 6 /* i */
aaload
invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
pop
19: .line 157
aload 1 /* bufs */
iload 6 /* i */
aaload
iload 7 /* pos */
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
20: .line 158
aload 10 /* bb */
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
end local 10 // java.nio.ByteBuffer bb
end local 9 // int rem
end local 8 // int lim
end local 7 // int pos
21: .line 159
goto 23
22: .line 160
StackMap locals:
StackMap stack:
aload 5 /* shadow */
iload 6 /* i */
aload 1 /* bufs */
iload 6 /* i */
aaload
aastore
23: .line 145
StackMap locals:
StackMap stack:
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
24: iload 6 /* i */
iload 4 /* numBufs */
if_icmplt 9
end local 6 // int i
25: .line 164
aconst_null
astore 6 /* vec */
start local 6 // sun.nio.ch.IOVecWrapper vec
26: .line 165
lconst_0
lstore 7 /* bytesWritten */
start local 7 // long bytesWritten
27: .line 168
new sun.nio.ch.IOVecWrapper
dup
iload 4 /* numBufs */
invokespecial sun.nio.ch.IOVecWrapper.<init>:(I)V
astore 6 /* vec */
28: .line 171
iconst_0
istore 9 /* i */
start local 9 // int i
29: goto 36
30: .line 172
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] sun.nio.ch.NativeDispatcher int int java.nio.ByteBuffer[] sun.nio.ch.IOVecWrapper long int
StackMap stack:
aload 5 /* shadow */
iload 9 /* i */
aaload
astore 10 /* nextBuffer */
start local 10 // java.nio.ByteBuffer nextBuffer
31: .line 174
aload 10 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.position:()I
i2l
lstore 11 /* pos */
start local 11 // long pos
32: .line 175
aload 10 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.limit:()I
i2l
lload 11 /* pos */
lsub
lstore 13 /* len */
start local 13 // long len
33: .line 177
aload 6 /* vec */
iload 9 /* i */
aload 10 /* nextBuffer */
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
lload 11 /* pos */
ladd
invokevirtual sun.nio.ch.IOVecWrapper.putBase:(IJ)V
34: .line 178
aload 6 /* vec */
iload 9 /* i */
lload 13 /* len */
invokevirtual sun.nio.ch.IOVecWrapper.putLen:(IJ)V
end local 13 // long len
end local 11 // long pos
end local 10 // java.nio.ByteBuffer nextBuffer
35: .line 171
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
36: iload 9 /* i */
iload 4 /* numBufs */
if_icmplt 30
end local 9 // int i
37: .line 182
aload 2 /* nd */
aload 0 /* fd */
aload 6 /* vec */
getfield sun.nio.ch.IOVecWrapper.address:J
iload 4 /* numBufs */
invokevirtual sun.nio.ch.NativeDispatcher.writev:(Ljava/io/FileDescriptor;JI)J
lstore 7 /* bytesWritten */
38: .line 183
goto 42
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] sun.nio.ch.NativeDispatcher int int java.nio.ByteBuffer[] sun.nio.ch.IOVecWrapper long
StackMap stack: java.lang.Throwable
39: astore 15
40: .line 184
aload 6 /* vec */
invokevirtual sun.nio.ch.IOVecWrapper.free:()V
41: .line 185
aload 15
athrow
42: .line 184
StackMap locals:
StackMap stack:
aload 6 /* vec */
invokevirtual sun.nio.ch.IOVecWrapper.free:()V
43: .line 186
lload 7 /* bytesWritten */
lstore 9 /* returnVal */
start local 9 // long returnVal
44: .line 189
iconst_0
istore 11 /* i */
start local 11 // int i
45: goto 64
46: .line 190
StackMap locals: long int
StackMap stack:
aload 1 /* bufs */
iload 11 /* i */
aaload
astore 12 /* nextBuffer */
start local 12 // java.nio.ByteBuffer nextBuffer
47: .line 191
aload 12 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.position:()I
istore 13 /* pos */
start local 13 // int pos
48: .line 192
aload 12 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.limit:()I
istore 14 /* lim */
start local 14 // int lim
49: .line 193
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 50
iload 13 /* pos */
iload 14 /* lim */
if_icmple 50
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
50: .line 194
StackMap locals: java.nio.ByteBuffer int int
StackMap stack:
iload 13 /* pos */
iload 14 /* lim */
if_icmpgt 51
iload 14 /* lim */
iload 13 /* pos */
isub
goto 52
StackMap locals:
StackMap stack:
51: iload 14 /* lim */
StackMap locals:
StackMap stack: int
52: istore 15 /* len */
start local 15 // int len
53: .line 195
lload 7 /* bytesWritten */
iload 15 /* len */
i2l
lcmp
iflt 58
54: .line 196
lload 7 /* bytesWritten */
iload 15 /* len */
i2l
lsub
lstore 7 /* bytesWritten */
55: .line 197
iload 13 /* pos */
iload 15 /* len */
iadd
istore 16 /* newPosition */
start local 16 // int newPosition
56: .line 198
aload 12 /* nextBuffer */
iload 16 /* newPosition */
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
end local 16 // int newPosition
57: .line 199
goto 63
58: .line 200
StackMap locals: int
StackMap stack:
lload 7 /* bytesWritten */
lconst_0
lcmp
ifle 65
59: .line 201
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 60
iload 13 /* pos */
i2l
lload 7 /* bytesWritten */
ladd
ldc 2147483647
lcmp
iflt 60
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
60: .line 202
StackMap locals:
StackMap stack:
iload 13 /* pos */
i2l
lload 7 /* bytesWritten */
ladd
l2i
istore 16 /* newPosition */
start local 16 // int newPosition
61: .line 203
aload 12 /* nextBuffer */
iload 16 /* newPosition */
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
end local 16 // int newPosition
62: .line 205
goto 65
end local 15 // int len
end local 14 // int lim
end local 13 // int pos
end local 12 // java.nio.ByteBuffer nextBuffer
63: .line 189
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] sun.nio.ch.NativeDispatcher int int java.nio.ByteBuffer[] sun.nio.ch.IOVecWrapper long long int
StackMap stack:
iinc 11 /* i */ 1
StackMap locals:
StackMap stack:
64: iload 11 /* i */
iload 4 /* numBufs */
if_icmplt 46
end local 11 // int i
65: .line 208
StackMap locals:
StackMap stack:
lload 9 /* returnVal */
lreturn
end local 9 // long returnVal
end local 7 // long bytesWritten
end local 6 // sun.nio.ch.IOVecWrapper vec
end local 5 // java.nio.ByteBuffer[] shadow
end local 4 // int numBufs
end local 3 // int nextWithRemaining
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 66 0 fd Ljava/io/FileDescriptor;
0 66 1 bufs [Ljava/nio/ByteBuffer;
0 66 2 nd Lsun/nio/ch/NativeDispatcher;
1 66 3 nextWithRemaining I
6 66 4 numBufs I
7 66 5 shadow [Ljava/nio/ByteBuffer;
8 25 6 i I
11 21 7 pos I
12 21 8 lim I
16 21 9 rem I
17 21 10 bb Ljava/nio/ByteBuffer;
26 66 6 vec Lsun/nio/ch/IOVecWrapper;
27 66 7 bytesWritten J
29 37 9 i I
31 35 10 nextBuffer Ljava/nio/ByteBuffer;
32 35 11 pos J
33 35 13 len J
44 66 9 returnVal J
45 65 11 i I
47 63 12 nextBuffer Ljava/nio/ByteBuffer;
48 63 13 pos I
49 63 14 lim I
53 63 15 len I
56 57 16 newPosition I
61 62 16 newPosition I
Exception table:
from to target type
27 39 39 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
bufs
nd
static int read(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher, java.lang.Object);
descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=10, args_size=5
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
start local 5 // java.lang.Object lock
0: .line 215
aload 1 /* dst */
invokevirtual java.nio.ByteBuffer.isReadOnly:()Z
ifeq 2
1: .line 216
new java.lang.IllegalArgumentException
dup
ldc "Read-only buffer"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: .line 217
StackMap locals:
StackMap stack:
aload 1 /* dst */
instanceof sun.nio.ch.DirectBuffer
ifeq 4
3: .line 218
aload 0 /* fd */
aload 1 /* dst */
lload 2 /* position */
aload 4 /* nd */
aload 5 /* lock */
invokestatic sun.nio.ch.IOUtil.readIntoNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
ireturn
4: .line 221
StackMap locals:
StackMap stack:
aconst_null
astore 6 /* bb */
start local 6 // java.nio.ByteBuffer bb
5: .line 223
aload 1 /* dst */
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
astore 6 /* bb */
6: .line 224
aload 0 /* fd */
aload 6 /* bb */
lload 2 /* position */
aload 4 /* nd */
aload 5 /* lock */
invokestatic sun.nio.ch.IOUtil.readIntoNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
istore 7 /* n */
start local 7 // int n
7: .line 225
aload 6 /* bb */
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
8: .line 226
iload 7 /* n */
ifle 10
9: .line 227
aload 1 /* dst */
aload 6 /* bb */
invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
pop
10: .line 228
StackMap locals: java.nio.ByteBuffer int
StackMap stack:
iload 7 /* n */
istore 9
11: .line 230
aload 6 /* bb */
invokestatic sun.nio.ch.Util.releaseTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
12: .line 228
iload 9
ireturn
end local 7 // int n
13: .line 229
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long sun.nio.ch.NativeDispatcher java.lang.Object java.nio.ByteBuffer
StackMap stack: java.lang.Throwable
astore 8
14: .line 230
aload 6 /* bb */
invokestatic sun.nio.ch.Util.releaseTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
15: .line 231
aload 8
athrow
end local 6 // java.nio.ByteBuffer bb
end local 5 // java.lang.Object lock
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 16 0 fd Ljava/io/FileDescriptor;
0 16 1 dst Ljava/nio/ByteBuffer;
0 16 2 position J
0 16 4 nd Lsun/nio/ch/NativeDispatcher;
0 16 5 lock Ljava/lang/Object;
5 16 6 bb Ljava/nio/ByteBuffer;
7 13 7 n I
Exception table:
from to target type
5 11 13 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
dst
position
nd
lock
private static int readIntoNativeBuffer(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher, java.lang.Object);
descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;Ljava/lang/Object;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=10, args_size=5
start local 0 // java.io.FileDescriptor fd
start local 1 // java.nio.ByteBuffer bb
start local 2 // long position
start local 4 // sun.nio.ch.NativeDispatcher nd
start local 5 // java.lang.Object lock
0: .line 239
aload 1 /* bb */
invokevirtual java.nio.ByteBuffer.position:()I
istore 6 /* pos */
start local 6 // int pos
1: .line 240
aload 1 /* bb */
invokevirtual java.nio.ByteBuffer.limit:()I
istore 7 /* lim */
start local 7 // int lim
2: .line 241
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 3
iload 6 /* pos */
iload 7 /* lim */
if_icmple 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 242
StackMap locals: int int
StackMap stack:
iload 6 /* pos */
iload 7 /* lim */
if_icmpgt 4
iload 7 /* lim */
iload 6 /* pos */
isub
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 8 /* rem */
start local 8 // int rem
6: .line 244
iload 8 /* rem */
ifne 8
7: .line 245
iconst_0
ireturn
8: .line 246
StackMap locals: int
StackMap stack:
iconst_0
istore 9 /* n */
start local 9 // int n
9: .line 247
lload 2 /* position */
ldc -1
lcmp
ifeq 14
10: .line 248
aload 4 /* nd */
aload 0 /* fd */
aload 1 /* bb */
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
iload 6 /* pos */
i2l
ladd
11: .line 249
iload 8 /* rem */
lload 2 /* position */
aload 5 /* lock */
12: .line 248
invokevirtual sun.nio.ch.NativeDispatcher.pread:(Ljava/io/FileDescriptor;JIJLjava/lang/Object;)I
istore 9 /* n */
13: .line 250
goto 15
14: .line 251
StackMap locals: int
StackMap stack:
aload 4 /* nd */
aload 0 /* fd */
aload 1 /* bb */
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
iload 6 /* pos */
i2l
ladd
iload 8 /* rem */
invokevirtual sun.nio.ch.NativeDispatcher.read:(Ljava/io/FileDescriptor;JI)I
istore 9 /* n */
15: .line 253
StackMap locals:
StackMap stack:
iload 9 /* n */
ifle 17
16: .line 254
aload 1 /* bb */
iload 6 /* pos */
iload 9 /* n */
iadd
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
17: .line 255
StackMap locals:
StackMap stack:
iload 9 /* n */
ireturn
end local 9 // int n
end local 8 // int rem
end local 7 // int lim
end local 6 // int pos
end local 5 // java.lang.Object lock
end local 4 // sun.nio.ch.NativeDispatcher nd
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 18 0 fd Ljava/io/FileDescriptor;
0 18 1 bb Ljava/nio/ByteBuffer;
0 18 2 position J
0 18 4 nd Lsun/nio/ch/NativeDispatcher;
0 18 5 lock Ljava/lang/Object;
1 18 6 pos I
2 18 7 lim I
6 18 8 rem I
9 18 9 n I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
bb
position
nd
lock
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=6, locals=16, 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 261
aload 1 /* bufs */
invokestatic sun.nio.ch.IOUtil.remaining:([Ljava/nio/ByteBuffer;)I
istore 3 /* nextWithRemaining */
start local 3 // int nextWithRemaining
1: .line 263
iload 3 /* nextWithRemaining */
ifge 3
2: .line 264
lconst_0
lreturn
3: .line 266
StackMap locals: int
StackMap stack:
iload 3 /* nextWithRemaining */
ifle 5
4: .line 267
aload 1 /* bufs */
iload 3 /* nextWithRemaining */
invokestatic sun.nio.ch.IOUtil.skipBufs:([Ljava/nio/ByteBuffer;I)[Ljava/nio/ByteBuffer;
astore 1 /* bufs */
5: .line 269
StackMap locals:
StackMap stack:
aload 1 /* bufs */
arraylength
istore 4 /* numBufs */
start local 4 // int numBufs
6: .line 272
iload 4 /* numBufs */
anewarray java.nio.ByteBuffer
astore 5 /* shadow */
start local 5 // java.nio.ByteBuffer[] shadow
7: .line 273
iconst_0
istore 6 /* i */
start local 6 // int i
8: goto 16
9: .line 274
StackMap locals: int java.nio.ByteBuffer[] int
StackMap stack:
aload 1 /* bufs */
iload 6 /* i */
aaload
invokevirtual java.nio.ByteBuffer.isReadOnly:()Z
ifeq 11
10: .line 275
new java.lang.IllegalArgumentException
dup
ldc "Read-only buffer"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: .line 276
StackMap locals:
StackMap stack:
aload 1 /* bufs */
iload 6 /* i */
aaload
instanceof sun.nio.ch.DirectBuffer
ifne 14
12: .line 277
aload 5 /* shadow */
iload 6 /* i */
aload 1 /* bufs */
iload 6 /* i */
aaload
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic java.nio.ByteBuffer.allocateDirect:(I)Ljava/nio/ByteBuffer;
aastore
13: .line 278
goto 15
14: .line 279
StackMap locals:
StackMap stack:
aload 5 /* shadow */
iload 6 /* i */
aload 1 /* bufs */
iload 6 /* i */
aaload
aastore
15: .line 273
StackMap locals:
StackMap stack:
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
16: iload 6 /* i */
iload 4 /* numBufs */
if_icmplt 9
end local 6 // int i
17: .line 283
aconst_null
astore 6 /* vec */
start local 6 // sun.nio.ch.IOVecWrapper vec
18: .line 284
lconst_0
lstore 7 /* bytesRead */
start local 7 // long bytesRead
19: .line 287
new sun.nio.ch.IOVecWrapper
dup
iload 4 /* numBufs */
invokespecial sun.nio.ch.IOVecWrapper.<init>:(I)V
astore 6 /* vec */
20: .line 290
iconst_0
istore 9 /* i */
start local 9 // int i
21: goto 28
22: .line 291
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] sun.nio.ch.NativeDispatcher int int java.nio.ByteBuffer[] sun.nio.ch.IOVecWrapper long int
StackMap stack:
aload 5 /* shadow */
iload 9 /* i */
aaload
astore 10 /* nextBuffer */
start local 10 // java.nio.ByteBuffer nextBuffer
23: .line 293
aload 10 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.position:()I
i2l
lstore 11 /* pos */
start local 11 // long pos
24: .line 294
aload 10 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.remaining:()I
i2l
lstore 13 /* len */
start local 13 // long len
25: .line 295
aload 6 /* vec */
iload 9 /* i */
aload 10 /* nextBuffer */
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
lload 11 /* pos */
ladd
invokevirtual sun.nio.ch.IOVecWrapper.putBase:(IJ)V
26: .line 296
aload 6 /* vec */
iload 9 /* i */
lload 13 /* len */
invokevirtual sun.nio.ch.IOVecWrapper.putLen:(IJ)V
end local 13 // long len
end local 11 // long pos
end local 10 // java.nio.ByteBuffer nextBuffer
27: .line 290
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
28: iload 9 /* i */
iload 4 /* numBufs */
if_icmplt 22
end local 9 // int i
29: .line 300
aload 2 /* nd */
aload 0 /* fd */
aload 6 /* vec */
getfield sun.nio.ch.IOVecWrapper.address:J
iload 4 /* numBufs */
invokevirtual sun.nio.ch.NativeDispatcher.readv:(Ljava/io/FileDescriptor;JI)J
lstore 7 /* bytesRead */
30: .line 301
goto 34
StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] sun.nio.ch.NativeDispatcher int int java.nio.ByteBuffer[] sun.nio.ch.IOVecWrapper long
StackMap stack: java.lang.Throwable
31: astore 15
32: .line 302
aload 6 /* vec */
invokevirtual sun.nio.ch.IOVecWrapper.free:()V
33: .line 303
aload 15
athrow
34: .line 302
StackMap locals:
StackMap stack:
aload 6 /* vec */
invokevirtual sun.nio.ch.IOVecWrapper.free:()V
35: .line 304
lload 7 /* bytesRead */
lstore 9 /* returnVal */
start local 9 // long returnVal
36: .line 307
iconst_0
istore 11 /* i */
start local 11 // int i
37: goto 52
38: .line 308
StackMap locals: long int
StackMap stack:
aload 5 /* shadow */
iload 11 /* i */
aaload
astore 12 /* nextBuffer */
start local 12 // java.nio.ByteBuffer nextBuffer
39: .line 310
aload 12 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.position:()I
istore 13 /* pos */
start local 13 // int pos
40: .line 311
aload 12 /* nextBuffer */
invokevirtual java.nio.ByteBuffer.remaining:()I
istore 14 /* len */
start local 14 // int len
41: .line 312
lload 7 /* bytesRead */
iload 14 /* len */
i2l
lcmp
iflt 46
42: .line 313
lload 7 /* bytesRead */
iload 14 /* len */
i2l
lsub
lstore 7 /* bytesRead */
43: .line 314
iload 13 /* pos */
iload 14 /* len */
iadd
istore 15 /* newPosition */
start local 15 // int newPosition
44: .line 315
aload 12 /* nextBuffer */
iload 15 /* newPosition */
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
end local 15 // int newPosition
45: .line 316
goto 51
46: .line 317
StackMap locals: java.nio.ByteBuffer int int
StackMap stack:
lload 7 /* bytesRead */
lconst_0
lcmp
ifle 53
47: .line 318
getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
ifne 48
iload 13 /* pos */
i2l
lload 7 /* bytesRead */
ladd
ldc 2147483647
lcmp
iflt 48
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
48: .line 319
StackMap locals:
StackMap stack:
iload 13 /* pos */
i2l
lload 7 /* bytesRead */
ladd
l2i
istore 15 /* newPosition */
start local 15 // int newPosition
49: .line 320
aload 12 /* nextBuffer */
iload 15 /* newPosition */
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
end local 15 // int newPosition
50: .line 322
goto 53
end local 14 // int len
end local 13 // int pos
end local 12 // java.nio.ByteBuffer nextBuffer
51: .line 307
StackMap locals:
StackMap stack:
iinc 11 /* i */ 1
StackMap locals:
StackMap stack:
52: iload 11 /* i */
iload 4 /* numBufs */
if_icmplt 38
end local 11 // int i
53: .line 327
StackMap locals:
StackMap stack:
iconst_0
istore 11 /* i */
start local 11 // int i
54: goto 59
55: .line 328
StackMap locals: int
StackMap stack:
aload 1 /* bufs */
iload 11 /* i */
aaload
instanceof sun.nio.ch.DirectBuffer
ifne 58
56: .line 329
aload 5 /* shadow */
iload 11 /* i */
aaload
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
57: .line 330
aload 1 /* bufs */
iload 11 /* i */
aaload
aload 5 /* shadow */
iload 11 /* i */
aaload
invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
pop
58: .line 327
StackMap locals:
StackMap stack:
iinc 11 /* i */ 1
StackMap locals:
StackMap stack:
59: iload 11 /* i */
iload 4 /* numBufs */
if_icmplt 55
end local 11 // int i
60: .line 334
lload 9 /* returnVal */
lreturn
end local 9 // long returnVal
end local 7 // long bytesRead
end local 6 // sun.nio.ch.IOVecWrapper vec
end local 5 // java.nio.ByteBuffer[] shadow
end local 4 // int numBufs
end local 3 // int nextWithRemaining
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 61 0 fd Ljava/io/FileDescriptor;
0 61 1 bufs [Ljava/nio/ByteBuffer;
0 61 2 nd Lsun/nio/ch/NativeDispatcher;
1 61 3 nextWithRemaining I
6 61 4 numBufs I
7 61 5 shadow [Ljava/nio/ByteBuffer;
8 17 6 i I
18 61 6 vec Lsun/nio/ch/IOVecWrapper;
19 61 7 bytesRead J
21 29 9 i I
23 27 10 nextBuffer Ljava/nio/ByteBuffer;
24 27 11 pos J
25 27 13 len J
36 61 9 returnVal J
37 53 11 i I
39 51 12 nextBuffer Ljava/nio/ByteBuffer;
40 51 13 pos I
41 51 14 len I
44 45 15 newPosition I
49 50 15 newPosition I
54 60 11 i I
Exception table:
from to target type
19 31 31 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
bufs
nd
static java.io.FileDescriptor newFD(int);
descriptor: (I)Ljava/io/FileDescriptor;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 // int i
0: .line 338
new java.io.FileDescriptor
dup
invokespecial java.io.FileDescriptor.<init>:()V
astore 1 /* fd */
start local 1 // java.io.FileDescriptor fd
1: .line 339
aload 1 /* fd */
iload 0 /* i */
invokestatic sun.nio.ch.IOUtil.setfdVal:(Ljava/io/FileDescriptor;I)V
2: .line 340
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 void initPipe(int[], boolean);
descriptor: ([IZ)V
flags: (0x0108) ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
fda
blocking
static native boolean drain(int);
descriptor: (I)Z
flags: (0x0108) ACC_STATIC, ACC_NATIVE
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
static native void configureBlocking(java.io.FileDescriptor, boolean);
descriptor: (Ljava/io/FileDescriptor;Z)V
flags: (0x0108) ACC_STATIC, ACC_NATIVE
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fd
blocking
static native int fdVal(java.io.FileDescriptor);
descriptor: (Ljava/io/FileDescriptor;)I
flags: (0x0108) 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 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 361
return
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "IOUtil.java"
NestMembers:
sun.nio.ch.IOUtil$1
InnerClasses:
sun.nio.ch.IOUtil$1