public class jdk.internal.foreign.HeapMemorySegmentImpl$OfChar extends jdk.internal.foreign.HeapMemorySegmentImpl<char[]>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.internal.foreign.HeapMemorySegmentImpl$OfChar
super_class: jdk.internal.foreign.HeapMemorySegmentImpl
{
void <init>(long, char[], long, int, jdk.internal.foreign.MemoryScope);
descriptor: (J[CJILjdk/internal/foreign/MemoryScope;)V
flags: (0x0000)
Code:
stack=8, locals=8, args_size=6
start local 0 start local 1 start local 3 start local 4 start local 6 start local 7 0: aload 0
lload 1
aload 3
lload 4
iload 6
aload 7
invokespecial jdk.internal.foreign.HeapMemorySegmentImpl.<init>:(JLjava/lang/Object;JILjdk/internal/foreign/MemoryScope;)V
1: return
end local 7 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/foreign/HeapMemorySegmentImpl$OfChar;
0 2 1 offset J
0 2 3 base [C
0 2 4 length J
0 2 6 mask I
0 2 7 scope Ljdk/internal/foreign/MemoryScope;
MethodParameters:
Name Flags
offset
base
length
mask
scope
jdk.internal.foreign.HeapMemorySegmentImpl$OfChar dup(long, long, int, jdk.internal.foreign.MemoryScope);
descriptor: (JJILjdk/internal/foreign/MemoryScope;)Ljdk/internal/foreign/HeapMemorySegmentImpl$OfChar;
flags: (0x0000)
Code:
stack=9, locals=7, args_size=5
start local 0 start local 1 start local 3 start local 5 start local 6 0: new jdk.internal.foreign.HeapMemorySegmentImpl$OfChar
dup
aload 0
getfield jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.offset:J
lload 1
ladd
aload 0
getfield jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.base:Ljava/lang/Object;
checkcast char[]
lload 3
iload 5
aload 6
invokespecial jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.<init>:(J[CJILjdk/internal/foreign/MemoryScope;)V
areturn
end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/foreign/HeapMemorySegmentImpl$OfChar;
0 1 1 offset J
0 1 3 size J
0 1 5 mask I
0 1 6 scope Ljdk/internal/foreign/MemoryScope;
MethodParameters:
Name Flags
offset
size
mask
scope
char[] base();
descriptor: ()[C
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.base:Ljava/lang/Object;
checkcast char[]
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast char[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/foreign/HeapMemorySegmentImpl$OfChar;
public static jdk.incubator.foreign.MemorySegment fromArray(char[]);
descriptor: ([C)Ljdk/incubator/foreign/MemorySegment;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=4, args_size=1
start local 0 0: aload 0
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
arraylength
i2l
getstatic jdk.internal.misc.Unsafe.ARRAY_CHAR_INDEX_SCALE:I
i2l
lmul
lstore 1
start local 1 2: aconst_null
getstatic jdk.internal.foreign.MemoryScope.DUMMY_CLEANUP_ACTION:Ljava/lang/Runnable;
aconst_null
invokestatic jdk.internal.foreign.MemoryScope.createConfined:(Ljava/lang/Object;Ljava/lang/Runnable;Ljava/lang/ref/Cleaner;)Ljdk/internal/foreign/MemoryScope;
astore 3
start local 3 3: new jdk.internal.foreign.HeapMemorySegmentImpl$OfChar
dup
getstatic jdk.internal.misc.Unsafe.ARRAY_CHAR_BASE_OFFSET:I
i2l
aload 0
lload 1
lload 1
invokestatic jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.defaultAccessModes:(J)I
aload 3
invokespecial jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.<init>:(J[CJILjdk/internal/foreign/MemoryScope;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 arr [C
2 4 1 byteSize J
3 4 3 scope Ljdk/internal/foreign/MemoryScope;
MethodParameters:
Name Flags
arr
java.lang.Object base();
descriptor: ()Ljava/lang/Object;
flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.base:()[C
areturn
LocalVariableTable:
Start End Slot Name Signature
jdk.internal.foreign.HeapMemorySegmentImpl dup(long, long, int, jdk.internal.foreign.MemoryScope);
descriptor: (JJILjdk/internal/foreign/MemoryScope;)Ljdk/internal/foreign/HeapMemorySegmentImpl;
flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=7, locals=7, args_size=5
0: aload 0
lload 1
lload 3
iload 5
aload 6
invokevirtual jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.dup:(JJILjdk/internal/foreign/MemoryScope;)Ljdk/internal/foreign/HeapMemorySegmentImpl$OfChar;
areturn
LocalVariableTable:
Start End Slot Name Signature
jdk.internal.foreign.AbstractMemorySegmentImpl dup(long, long, int, jdk.internal.foreign.MemoryScope);
descriptor: (JJILjdk/internal/foreign/MemoryScope;)Ljdk/internal/foreign/AbstractMemorySegmentImpl;
flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=7, locals=7, args_size=5
0: aload 0
lload 1
lload 3
iload 5
aload 6
invokevirtual jdk.internal.foreign.HeapMemorySegmentImpl$OfChar.dup:(JJILjdk/internal/foreign/MemoryScope;)Ljdk/internal/foreign/HeapMemorySegmentImpl$OfChar;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljdk/internal/foreign/HeapMemorySegmentImpl<[C>;
SourceFile: "HeapMemorySegmentImpl.java"
NestHost: jdk.internal.foreign.HeapMemorySegmentImpl
InnerClasses:
public OfChar = jdk.internal.foreign.HeapMemorySegmentImpl$OfChar of jdk.internal.foreign.HeapMemorySegmentImpl