public final class jdk.tools.jlink.internal.BasicImageWriter
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.tools.jlink.internal.BasicImageWriter
super_class: java.lang.Object
{
public static final java.lang.String MODULES_IMAGE_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "modules"
private java.nio.ByteOrder byteOrder;
descriptor: Ljava/nio/ByteOrder;
flags: (0x0002) ACC_PRIVATE
private jdk.tools.jlink.internal.ImageStringsWriter strings;
descriptor: Ljdk/tools/jlink/internal/ImageStringsWriter;
flags: (0x0002) ACC_PRIVATE
private int length;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int[] redirect;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private jdk.tools.jlink.internal.ImageLocationWriter[] locations;
descriptor: [Ljdk/tools/jlink/internal/ImageLocationWriter;
flags: (0x0002) ACC_PRIVATE
private java.util.List<jdk.tools.jlink.internal.ImageLocationWriter> input;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljdk/tools/jlink/internal/ImageLocationWriter;>;
private jdk.internal.jimage.ImageStream ;
descriptor: Ljdk/internal/jimage/ImageStream;
flags: (0x0002) ACC_PRIVATE
private jdk.internal.jimage.ImageStream redirectStream;
descriptor: Ljdk/internal/jimage/ImageStream;
flags: (0x0002) ACC_PRIVATE
private jdk.internal.jimage.ImageStream locationOffsetStream;
descriptor: Ljdk/internal/jimage/ImageStream;
flags: (0x0002) ACC_PRIVATE
private jdk.internal.jimage.ImageStream locationStream;
descriptor: Ljdk/internal/jimage/ImageStream;
flags: (0x0002) ACC_PRIVATE
private jdk.internal.jimage.ImageStream allIndexStream;
descriptor: Ljdk/internal/jimage/ImageStream;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
invokespecial jdk.tools.jlink.internal.BasicImageWriter.<init>:(Ljava/nio/ByteOrder;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
public void <init>(java.nio.ByteOrder);
descriptor: (Ljava/nio/ByteOrder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteOrder
putfield jdk.tools.jlink.internal.BasicImageWriter.byteOrder:Ljava/nio/ByteOrder;
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield jdk.tools.jlink.internal.BasicImageWriter.input:Ljava/util/List;
3: aload 0
new jdk.tools.jlink.internal.ImageStringsWriter
dup
invokespecial jdk.tools.jlink.internal.ImageStringsWriter.<init>:()V
putfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
4: aload 0
new jdk.internal.jimage.ImageStream
dup
aload 1
invokespecial jdk.internal.jimage.ImageStream.<init>:(Ljava/nio/ByteOrder;)V
putfield jdk.tools.jlink.internal.BasicImageWriter.headerStream:Ljdk/internal/jimage/ImageStream;
5: aload 0
new jdk.internal.jimage.ImageStream
dup
aload 1
invokespecial jdk.internal.jimage.ImageStream.<init>:(Ljava/nio/ByteOrder;)V
putfield jdk.tools.jlink.internal.BasicImageWriter.redirectStream:Ljdk/internal/jimage/ImageStream;
6: aload 0
new jdk.internal.jimage.ImageStream
dup
aload 1
invokespecial jdk.internal.jimage.ImageStream.<init>:(Ljava/nio/ByteOrder;)V
putfield jdk.tools.jlink.internal.BasicImageWriter.locationOffsetStream:Ljdk/internal/jimage/ImageStream;
7: aload 0
new jdk.internal.jimage.ImageStream
dup
aload 1
invokespecial jdk.internal.jimage.ImageStream.<init>:(Ljava/nio/ByteOrder;)V
putfield jdk.tools.jlink.internal.BasicImageWriter.locationStream:Ljdk/internal/jimage/ImageStream;
8: aload 0
new jdk.internal.jimage.ImageStream
dup
aload 1
invokespecial jdk.internal.jimage.ImageStream.<init>:(Ljava/nio/ByteOrder;)V
putfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
0 10 1 byteOrder Ljava/nio/ByteOrder;
MethodParameters:
Name Flags
byteOrder
public java.nio.ByteOrder getByteOrder();
descriptor: ()Ljava/nio/ByteOrder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.byteOrder:Ljava/nio/ByteOrder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
public int addString(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
aload 1
invokevirtual jdk.tools.jlink.internal.ImageStringsWriter.add:(Ljava/lang/String;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
0 1 1 string Ljava/lang/String;
MethodParameters:
Name Flags
string
public java.lang.String getString(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
iload 1
invokevirtual jdk.tools.jlink.internal.ImageStringsWriter.get:(I)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
0 1 1 offset I
MethodParameters:
Name Flags
offset
public void addLocation(java.lang.String, long, long, long);
descriptor: (Ljava/lang/String;JJJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: aload 1
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
1: lload 2
lload 4
lload 6
2: invokestatic jdk.tools.jlink.internal.ImageLocationWriter.newLocation:(Ljava/lang/String;Ljdk/tools/jlink/internal/ImageStringsWriter;JJJ)Ljdk/tools/jlink/internal/ImageLocationWriter;
3: astore 8
start local 8 4: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.input:Ljava/util/List;
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 0
dup
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
iconst_1
iadd
putfield jdk.tools.jlink.internal.BasicImageWriter.length:I
6: return
end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
0 7 1 fullname Ljava/lang/String;
0 7 2 contentOffset J
0 7 4 compressedSize J
0 7 6 uncompressedSize J
4 7 8 location Ljdk/tools/jlink/internal/ImageLocationWriter;
MethodParameters:
Name Flags
fullname
contentOffset
compressedSize
uncompressedSize
jdk.tools.jlink.internal.ImageLocationWriter[] getLocations();
descriptor: ()[Ljdk/tools/jlink/internal/ImageLocationWriter;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locations:[Ljdk/tools/jlink/internal/ImageLocationWriter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
int getLocationsCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.input:Ljava/util/List;
invokeinterface java.util.List.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
private void generatePerfectHash();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: new jdk.tools.jlink.internal.PerfectHashBuilder
dup
1: ldc Ljdk/tools/jlink/internal/PerfectHashBuilder$Entry;
2: ldc Ljdk/tools/jlink/internal/PerfectHashBuilder$Bucket;
3: invokespecial jdk.tools.jlink.internal.PerfectHashBuilder.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
4: astore 1
start local 1 5: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.input:Ljava/util/List;
aload 1
invokedynamic accept(Ljdk/tools/jlink/internal/PerfectHashBuilder;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
jdk/tools/jlink/internal/BasicImageWriter.lambda$0(Ljdk/tools/jlink/internal/PerfectHashBuilder;Ljdk/tools/jlink/internal/ImageLocationWriter;)V (6)
(Ljdk/tools/jlink/internal/ImageLocationWriter;)V
invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
6: aload 1
invokevirtual jdk.tools.jlink.internal.PerfectHashBuilder.generate:()V
7: aload 0
aload 1
invokevirtual jdk.tools.jlink.internal.PerfectHashBuilder.getCount:()I
putfield jdk.tools.jlink.internal.BasicImageWriter.length:I
8: aload 0
aload 1
invokevirtual jdk.tools.jlink.internal.PerfectHashBuilder.getRedirect:()[I
putfield jdk.tools.jlink.internal.BasicImageWriter.redirect:[I
9: aload 1
invokevirtual jdk.tools.jlink.internal.PerfectHashBuilder.getOrder:()[Ljdk/tools/jlink/internal/PerfectHashBuilder$Entry;
astore 2
start local 2 10: aload 0
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
anewarray jdk.tools.jlink.internal.ImageLocationWriter
putfield jdk.tools.jlink.internal.BasicImageWriter.locations:[Ljdk/tools/jlink/internal/ImageLocationWriter;
11: iconst_0
istore 3
start local 3 12: goto 15
13: StackMap locals: jdk.tools.jlink.internal.PerfectHashBuilder jdk.tools.jlink.internal.PerfectHashBuilder$Entry[] int
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locations:[Ljdk/tools/jlink/internal/ImageLocationWriter;
iload 3
aload 2
iload 3
aaload
invokevirtual jdk.tools.jlink.internal.PerfectHashBuilder$Entry.getValue:()Ljava/lang/Object;
checkcast jdk.tools.jlink.internal.ImageLocationWriter
aastore
14: iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
if_icmplt 13
end local 3 16: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
5 17 1 builder Ljdk/tools/jlink/internal/PerfectHashBuilder<Ljdk/tools/jlink/internal/ImageLocationWriter;>;
10 17 2 order [Ljdk/tools/jlink/internal/PerfectHashBuilder$Entry;
12 16 3 i I
private void prepareStringBytes();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
invokevirtual jdk.tools.jlink.internal.ImageStringsWriter.getStream:()Ljdk/internal/jimage/ImageStream;
iconst_2
invokevirtual jdk.internal.jimage.ImageStream.align:(I)Ljdk/internal/jimage/ImageStream;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
private void prepareRedirectBytes();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.redirectStream:Ljdk/internal/jimage/ImageStream;
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.redirect:[I
iload 1
iaload
invokevirtual jdk.internal.jimage.ImageStream.putInt:(I)Ljdk/internal/jimage/ImageStream;
pop
3: iinc 1 1
StackMap locals:
StackMap stack:
4: iload 1
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
if_icmplt 2
end local 1 5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
1 5 1 i I
private void prepareLocationBytes();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationStream:Ljdk/internal/jimage/ImageStream;
iconst_0
invokevirtual jdk.internal.jimage.ImageStream.put:(I)Ljdk/internal/jimage/ImageStream;
pop
1: iconst_0
istore 1
start local 1 2: goto 7
3: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locations:[Ljdk/tools/jlink/internal/ImageLocationWriter;
iload 1
aaload
astore 2
start local 2 4: aload 2
ifnull 6
5: aload 2
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.tools.jlink.internal.ImageLocationWriter.writeTo:(Ljdk/internal/jimage/ImageStream;)V
end local 2 6: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
7: iload 1
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
if_icmplt 3
end local 1 8: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationStream:Ljdk/internal/jimage/ImageStream;
iconst_2
invokevirtual jdk.internal.jimage.ImageStream.align:(I)Ljdk/internal/jimage/ImageStream;
pop
9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
2 8 1 i I
4 6 2 location Ljdk/tools/jlink/internal/ImageLocationWriter;
private void prepareOffsetBytes();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 8
2: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locations:[Ljdk/tools/jlink/internal/ImageLocationWriter;
iload 1
aaload
astore 2
start local 2 3: aload 2
ifnull 4
aload 2
invokevirtual jdk.tools.jlink.internal.ImageLocationWriter.getLocationOffset:()I
goto 5
StackMap locals: jdk.tools.jlink.internal.ImageLocationWriter
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 3
start local 3 6: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationOffsetStream:Ljdk/internal/jimage/ImageStream;
iload 3
invokevirtual jdk.internal.jimage.ImageStream.putInt:(I)Ljdk/internal/jimage/ImageStream;
pop
end local 3 end local 2 7: iinc 1 1
StackMap locals:
StackMap stack:
8: iload 1
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
if_icmplt 2
end local 1 9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
1 9 1 i I
3 7 2 location Ljdk/tools/jlink/internal/ImageLocationWriter;
6 7 3 offset I
private void ();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=1
start local 0 0: new jdk.internal.jimage.ImageHeader
dup
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.input:Ljava/util/List;
invokeinterface java.util.List.size:()I
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
1: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.getSize:()I
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
invokevirtual jdk.tools.jlink.internal.ImageStringsWriter.getSize:()I
2: invokespecial jdk.internal.jimage.ImageHeader.<init>:(IIII)V
astore 1
start local 1 3: aload 1
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.headerStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageHeader.writeTo:(Ljdk/internal/jimage/ImageStream;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
3 5 1 header Ljdk/internal/jimage/ImageHeader;
private void prepareTableBytes();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.headerStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.put:(Ljdk/internal/jimage/ImageStream;)Ljdk/internal/jimage/ImageStream;
pop
1: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.redirectStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.put:(Ljdk/internal/jimage/ImageStream;)Ljdk/internal/jimage/ImageStream;
pop
2: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationOffsetStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.put:(Ljdk/internal/jimage/ImageStream;)Ljdk/internal/jimage/ImageStream;
pop
3: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locationStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.put:(Ljdk/internal/jimage/ImageStream;)Ljdk/internal/jimage/ImageStream;
pop
4: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.strings:Ljdk/tools/jlink/internal/ImageStringsWriter;
invokevirtual jdk.tools.jlink.internal.ImageStringsWriter.getStream:()Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.put:(Ljdk/internal/jimage/ImageStream;)Ljdk/internal/jimage/ImageStream;
pop
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
public byte[] getBytes();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.getSize:()I
ifne 8
1: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.generatePerfectHash:()V
2: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.prepareStringBytes:()V
3: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.prepareRedirectBytes:()V
4: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.prepareLocationBytes:()V
5: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.prepareOffsetBytes:()V
6: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.prepareHeaderBytes:()V
7: aload 0
invokevirtual jdk.tools.jlink.internal.BasicImageWriter.prepareTableBytes:()V
8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.allIndexStream:Ljdk/internal/jimage/ImageStream;
invokevirtual jdk.internal.jimage.ImageStream.toArray:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
jdk.tools.jlink.internal.ImageLocationWriter find(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/tools/jlink/internal/ImageLocationWriter;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.redirect:[I
aload 1
invokestatic jdk.internal.jimage.ImageStringsReader.hashCode:(Ljava/lang/String;)I
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
irem
iaload
istore 2
start local 2 1: iload 2
ifge 4
2: iload 2
ineg
iconst_1
isub
istore 2
3: goto 5
4: StackMap locals: int
StackMap stack:
aload 1
iload 2
invokestatic jdk.internal.jimage.ImageStringsReader.hashCode:(Ljava/lang/String;I)I
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.length:I
irem
istore 2
5: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.BasicImageWriter.locations:[Ljdk/tools/jlink/internal/ImageLocationWriter;
iload 2
aaload
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jlink/internal/BasicImageWriter;
0 6 1 key Ljava/lang/String;
1 6 2 index I
MethodParameters:
Name Flags
key
private static void lambda$0(jdk.tools.jlink.internal.PerfectHashBuilder, jdk.tools.jlink.internal.ImageLocationWriter);
descriptor: (Ljdk/tools/jlink/internal/PerfectHashBuilder;Ljdk/tools/jlink/internal/ImageLocationWriter;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokevirtual jdk.tools.jlink.internal.ImageLocationWriter.getFullName:()Ljava/lang/String;
aload 1
invokevirtual jdk.tools.jlink.internal.PerfectHashBuilder.put:(Ljava/lang/String;Ljava/lang/Object;)Ljdk/tools/jlink/internal/PerfectHashBuilder$Entry;
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 location Ljdk/tools/jlink/internal/ImageLocationWriter;
}
SourceFile: "BasicImageWriter.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
Bucket = jdk.tools.jlink.internal.PerfectHashBuilder$Bucket of jdk.tools.jlink.internal.PerfectHashBuilder
public Entry = jdk.tools.jlink.internal.PerfectHashBuilder$Entry of jdk.tools.jlink.internal.PerfectHashBuilder