final class jdk.tools.jaotc.MetadataBuilder
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.tools.jaotc.MetadataBuilder
super_class: java.lang.Object
{
private final jdk.tools.jaotc.DataBuilder dataBuilder;
descriptor: Ljdk/tools/jaotc/DataBuilder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.tools.jaotc.binformat.BinaryContainer binaryContainer;
descriptor: Ljdk/tools/jaotc/binformat/BinaryContainer;
flags: (0x0012) ACC_PRIVATE, 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=1, locals=0, args_size=0
0: ldc Ljdk/tools/jaotc/MetadataBuilder;
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 jdk.tools.jaotc.MetadataBuilder.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.tools.jaotc.DataBuilder);
descriptor: (Ljdk/tools/jaotc/DataBuilder;)V
flags: (0x0000)
Code:
stack=2, 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
putfield jdk.tools.jaotc.MetadataBuilder.dataBuilder:Ljdk/tools/jaotc/DataBuilder;
2: aload 0
aload 1
invokevirtual jdk.tools.jaotc.DataBuilder.getBinaryContainer:()Ljdk/tools/jaotc/binformat/BinaryContainer;
putfield jdk.tools.jaotc.MetadataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/MetadataBuilder;
0 4 1 dataBuilder Ljdk/tools/jaotc/DataBuilder;
MethodParameters:
Name Flags
dataBuilder
void processMetadata(java.util.List<jdk.tools.jaotc.AOTCompiledClass>, jdk.tools.jaotc.AOTCompiledClass);
descriptor: (Ljava/util/List;Ljdk/tools/jaotc/AOTCompiledClass;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 3
StackMap locals: jdk.tools.jaotc.MetadataBuilder java.util.List jdk.tools.jaotc.AOTCompiledClass top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.AOTCompiledClass
astore 3
start local 3 2: aload 0
aload 3
invokevirtual jdk.tools.jaotc.MetadataBuilder.processMetadataClass:(Ljdk/tools/jaotc/AOTCompiledClass;)V
end local 3 3: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: aload 0
aload 2
invokevirtual jdk.tools.jaotc.MetadataBuilder.processMetadataClass:(Ljdk/tools/jaotc/AOTCompiledClass;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jaotc/MetadataBuilder;
0 6 1 classes Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
0 6 2 stubCompiledCode Ljdk/tools/jaotc/AOTCompiledClass;
2 3 3 c Ljdk/tools/jaotc/AOTCompiledClass;
Signature: (Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;Ljdk/tools/jaotc/AOTCompiledClass;)V
MethodParameters:
Name Flags
classes
stubCompiledCode
private void processMetadataClass(jdk.tools.jaotc.AOTCompiledClass);
descriptor: (Ljdk/tools/jaotc/AOTCompiledClass;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual jdk.tools.jaotc.MetadataBuilder.processInfopointsAndMarks:(Ljdk/tools/jaotc/AOTCompiledClass;)V
1: aload 0
aload 1
invokevirtual jdk.tools.jaotc.MetadataBuilder.createMethodMetadata:(Ljdk/tools/jaotc/AOTCompiledClass;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/tools/jaotc/MetadataBuilder;
0 3 1 c Ljdk/tools/jaotc/AOTCompiledClass;
MethodParameters:
Name Flags
c
private void createMethodMetadata(jdk.tools.jaotc.AOTCompiledClass);
descriptor: (Ljdk/tools/jaotc/AOTCompiledClass;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=37, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.MetadataBuilder.dataBuilder:Ljdk/tools/jaotc/DataBuilder;
invokevirtual jdk.tools.jaotc.DataBuilder.getBackend:()Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
invokevirtual org.graalvm.compiler.hotspot.HotSpotHostBackend.getRuntime:()Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
astore 2
start local 2 1: aload 0
getfield jdk.tools.jaotc.MetadataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodMetadataContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
astore 3
start local 3 2: aload 1
invokevirtual jdk.tools.jaotc.AOTCompiledClass.getCompiledMethods:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 5
goto 75
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.CompiledMethodInfo
astore 4
start local 4 4: aload 3
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
istore 6
start local 6 5: getstatic jdk.tools.jaotc.MetadataBuilder.$assertionsDisabled:Z
ifne 6
iload 6
bipush 8
irem
ifeq 6
new java.lang.AssertionError
dup
ldc "Must be aligned on 8"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int
StackMap stack:
aload 4
iload 6
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.setMetadataOffset:(I)V
7: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.compiledCode:()Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
astore 7
start local 7 8: new jdk.vm.ci.hotspot.HotSpotMetaData
dup
aload 2
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getTarget:()Ljdk/vm/ci/code/TargetDescription;
aload 7
invokespecial jdk.vm.ci.hotspot.HotSpotMetaData.<init>:(Ljdk/vm/ci/code/TargetDescription;Ljdk/vm/ci/hotspot/HotSpotCompiledCode;)V
astore 8
start local 8 9: aload 8
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.pcDescBytes:()[B
astore 9
start local 9 10: aload 8
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.scopesDescBytes:()[B
astore 10
start local 10 11: aload 8
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.relocBytes:()[B
astore 11
start local 11 12: aload 8
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.oopMaps:()[B
astore 12
start local 12 13: aload 8
invokestatic org.graalvm.compiler.hotspot.HotSpotGraalServices.getImplicitExceptionBytes:(Ljdk/vm/ci/hotspot/HotSpotMetaData;)[B
astore 13
start local 13 14: aload 8
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.exceptionBytes:()[B
astore 14
start local 14 15: new jdk.tools.jaotc.utils.NativeOrderOutputStream
dup
invokespecial jdk.tools.jaotc.utils.NativeOrderOutputStream.<init>:()V
astore 15
start local 15 16: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCodeSize:()I
istore 16
start local 16 17: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.getMarks:()Ljava/util/List;
invokestatic jdk.tools.jaotc.CodeOffsets.buildFrom:(Ljava/util/List;)Ljdk/tools/jaotc/CodeOffsets;
astore 17
start local 17 18: aload 17
invokevirtual jdk.tools.jaotc.CodeOffsets.entry:()I
istore 18
start local 18 19: aload 17
invokevirtual jdk.tools.jaotc.CodeOffsets.verifiedEntry:()I
istore 19
start local 19 20: aload 17
invokevirtual jdk.tools.jaotc.CodeOffsets.exceptionHandler:()I
istore 20
start local 20 21: aload 17
invokevirtual jdk.tools.jaotc.CodeOffsets.deoptHandler:()I
istore 21
start local 21 22: aload 17
invokevirtual jdk.tools.jaotc.CodeOffsets.deoptMHHandler:()I
istore 22
start local 22 23: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.getTotalFrameSize:()I
istore 23
start local 23 24: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.getCustomStackArea:()Ljdk/vm/ci/code/StackSlot;
astore 24
start local 24 25: aload 24
ifnull 26
aload 24
iload 23
invokevirtual jdk.vm.ci.code.StackSlot.getOffset:(I)I
goto 27
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int jdk.vm.ci.hotspot.HotSpotCompiledCode jdk.vm.ci.hotspot.HotSpotMetaData byte[] byte[] byte[] byte[] byte[] byte[] jdk.tools.jaotc.utils.NativeOrderOutputStream int jdk.tools.jaotc.CodeOffsets int int int int int int jdk.vm.ci.code.StackSlot
StackMap stack:
26: iconst_m1
StackMap locals:
StackMap stack: int
27: istore 25
start local 25 28: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getStubsOffset:()I
istore 26
start local 26 29: aload 0
getfield jdk.tools.jaotc.MetadataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
aload 8
aload 4
invokestatic jdk.tools.jaotc.MetadataBuilder.addMetadataEntries:(Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/vm/ci/hotspot/HotSpotMetaData;Ljdk/tools/jaotc/CompiledMethodInfo;)I
istore 27
start local 27 30: aload 4
iload 27
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.setMetadataGotOffset:(I)V
31: aload 4
aload 8
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.metadataEntries:()[Ljava/lang/Object;
arraylength
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.setMetadataGotSize:(I)V
32: aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.hasUnsafeAccess:()Z
ifeq 33
iconst_1
goto 34
StackMap locals: int int int
StackMap stack:
33: iconst_0
StackMap locals:
StackMap stack: int
34: istore 28
start local 28 35: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 29
start local 29 36: aload 15
iload 16
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
37: iload 18
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
38: iload 19
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
39: iload 20
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
40: iload 21
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
41: iload 22
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
42: iload 26
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
43: iload 23
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
44: iload 25
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
45: iload 28
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
46: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 30
start local 30 47: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 31
start local 31 48: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 32
start local 32 49: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 33
start local 33 50: aconst_null
astore 34
start local 34 51: aload 13
ifnull 53
52: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 34
53: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int jdk.vm.ci.hotspot.HotSpotCompiledCode jdk.vm.ci.hotspot.HotSpotMetaData byte[] byte[] byte[] byte[] byte[] byte[] jdk.tools.jaotc.utils.NativeOrderOutputStream int jdk.tools.jaotc.CodeOffsets int int int int int int jdk.vm.ci.code.StackSlot int int int int jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt
StackMap stack:
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 35
start local 35 54: aload 15
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
55: aload 30
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
56: aload 15
aload 9
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.put:([B)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
57: aload 31
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
58: aload 15
aload 10
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.put:([B)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
59: aload 32
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
60: aload 15
aload 11
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.put:([B)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
61: aload 33
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
62: aload 15
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.put:([B)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
63: aload 13
ifnull 66
64: aload 34
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
65: aload 15
aload 13
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.put:([B)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
66: StackMap locals: jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt
StackMap stack:
aload 35
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
67: aload 15
aload 12
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.put:([B)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
68: aload 29
aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
69: aload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.array:()[B
astore 36
start local 36 70: aload 3
aload 36
iconst_0
aload 36
arraylength
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.appendBytes:([BII)Ljdk/tools/jaotc/binformat/ByteContainer;
pop
end local 36 end local 35 end local 34 end local 33 end local 32 end local 31 end local 30 end local 29 71: goto 74
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int jdk.vm.ci.hotspot.HotSpotCompiledCode jdk.vm.ci.hotspot.HotSpotMetaData byte[] byte[] byte[] byte[] byte[] byte[] jdk.tools.jaotc.utils.NativeOrderOutputStream int jdk.tools.jaotc.CodeOffsets int int int int int int jdk.vm.ci.code.StackSlot int int int int
StackMap stack: java.lang.Exception
72: astore 29
start local 29 73: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Exception occurred during compilation of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getMethodInfo:()Ljdk/tools/jaotc/JavaMethodInfo;
invokeinterface jdk.tools.jaotc.JavaMethodInfo.getSymbolName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 29
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 29 74: StackMap locals:
StackMap stack:
aload 4
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.clearCompileData:()V
end local 28 end local 27 end local 26 end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 4 75: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
76: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 77 0 this Ljdk/tools/jaotc/MetadataBuilder;
0 77 1 compiledClass Ljdk/tools/jaotc/AOTCompiledClass;
1 77 2 runtime Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
2 77 3 methodMetadataContainer Ljdk/tools/jaotc/binformat/ByteContainer;
4 75 4 methodInfo Ljdk/tools/jaotc/CompiledMethodInfo;
5 75 6 startOffset I
8 75 7 compiledMethod Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
9 75 8 metaData Ljdk/vm/ci/hotspot/HotSpotMetaData;
10 75 9 pcDesc [B
11 75 10 scopeDesc [B
12 75 11 relocationInfo [B
13 75 12 oopMapInfo [B
14 75 13 implicitExceptionBytes [B
15 75 14 exceptionBytes [B
16 75 15 metadataStream Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
17 75 16 codeSize I
18 75 17 co Ljdk/tools/jaotc/CodeOffsets;
19 75 18 unverifiedEntry I
20 75 19 verifiedEntry I
21 75 20 exceptionHandler I
22 75 21 deoptHandler I
23 75 22 deoptMHHandler I
24 75 23 frameSize I
25 75 24 deoptRescueSlot Ljdk/vm/ci/code/StackSlot;
28 75 25 origPcOffset I
29 75 26 stubsOffset I
30 75 27 offset I
35 75 28 unsafeAccess I
36 71 29 totalSize Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
47 71 30 pcDescOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
48 71 31 scopeOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
49 71 32 relocationOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
50 71 33 exceptionOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
51 71 34 implictTableOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
54 71 35 oopMapOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
70 71 36 data [B
73 74 29 e Ljava/lang/Exception;
Exception table:
from to target type
35 71 72 Class java.lang.Exception
MethodParameters:
Name Flags
compiledClass
private static int addMetadataEntries(jdk.tools.jaotc.binformat.BinaryContainer, jdk.vm.ci.hotspot.HotSpotMetaData, jdk.tools.jaotc.CompiledMethodInfo);
descriptor: (Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/vm/ci/hotspot/HotSpotMetaData;Ljdk/tools/jaotc/CompiledMethodInfo;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.metadataEntries:()[Ljava/lang/Object;
astore 3
start local 3 1: aload 3
arraylength
ifne 3
2: iconst_0
ireturn
3: StackMap locals: java.lang.Object[]
StackMap stack:
aload 0
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetadataGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
istore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 12
6: StackMap locals: int int
StackMap stack:
aload 3
iload 5
aaload
astore 6
start local 6 7: aload 6
invokestatic jdk.tools.jaotc.AOTCompiledClass.metadataName:(Ljava/lang/Object;)Ljava/lang/String;
astore 7
start local 7 8: aload 0
aload 7
invokestatic jdk.tools.jaotc.MetadataBuilder.addMetadataEntry:(Ljdk/tools/jaotc/binformat/BinaryContainer;Ljava/lang/String;)V
9: getstatic jdk.tools.jaotc.MetadataBuilder.$assertionsDisabled:Z
ifne 10
aload 6
invokestatic jdk.tools.jaotc.AOTCompiledClass.getType:(Ljava/lang/Object;)Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;
invokestatic jdk.tools.jaotc.AOTCompiledClass.getAOTKlassData:(Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;)Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
ifnonnull 10
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
10: StackMap locals: java.lang.Object java.lang.String
StackMap stack:
getstatic jdk.tools.jaotc.MetadataBuilder.$assertionsDisabled:Z
ifne 11
aload 2
aload 6
invokestatic jdk.tools.jaotc.AOTCompiledClass.getType:(Ljava/lang/Object;)Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getDependentKlassData:(Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;)Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
ifnonnull 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 7 end local 6 11: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
aload 3
arraylength
if_icmplt 6
end local 5 13: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 binaryContainer Ljdk/tools/jaotc/binformat/BinaryContainer;
0 14 1 metaData Ljdk/vm/ci/hotspot/HotSpotMetaData;
0 14 2 methodInfo Ljdk/tools/jaotc/CompiledMethodInfo;
1 14 3 metaDataEntries [Ljava/lang/Object;
4 14 4 metadataGotSlotsStart I
5 13 5 index I
7 11 6 ref Ljava/lang/Object;
8 11 7 name Ljava/lang/String;
MethodParameters:
Name Flags
binaryContainer
metaData
methodInfo
private static void addMetadataEntry(jdk.tools.jaotc.binformat.BinaryContainer, java.lang.String);
descriptor: (Ljdk/tools/jaotc/binformat/BinaryContainer;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.addMetaspaceName:(Ljava/lang/String;)I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.addMetadataGotEntry:(I)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 binaryContainer Ljdk/tools/jaotc/binformat/BinaryContainer;
0 3 1 name Ljava/lang/String;
1 3 2 stringOffset I
MethodParameters:
Name Flags
binaryContainer
name
private void processInfopointsAndMarks(jdk.tools.jaotc.AOTCompiledClass);
descriptor: (Ljdk/tools/jaotc/AOTCompiledClass;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=14, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.tools.jaotc.AOTCompiledClass.getCompiledMethods:()Ljava/util/ArrayList;
astore 2
start local 2 1: new jdk.tools.jaotc.MarkProcessor
dup
aload 0
getfield jdk.tools.jaotc.MetadataBuilder.dataBuilder:Ljdk/tools/jaotc/DataBuilder;
invokespecial jdk.tools.jaotc.MarkProcessor.<init>:(Ljdk/tools/jaotc/DataBuilder;)V
astore 3
start local 3 2: new jdk.tools.jaotc.DataPatchProcessor
dup
aload 0
getfield jdk.tools.jaotc.MetadataBuilder.dataBuilder:Ljdk/tools/jaotc/DataBuilder;
invokespecial jdk.tools.jaotc.DataPatchProcessor.<init>:(Ljdk/tools/jaotc/DataBuilder;)V
astore 4
start local 4 3: new jdk.tools.jaotc.InfopointProcessor
dup
aload 0
getfield jdk.tools.jaotc.MetadataBuilder.dataBuilder:Ljdk/tools/jaotc/DataBuilder;
invokespecial jdk.tools.jaotc.InfopointProcessor.<init>:(Ljdk/tools/jaotc/DataBuilder;)V
astore 5
start local 5 4: aload 2
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 7
goto 23
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass java.util.ArrayList jdk.tools.jaotc.MarkProcessor jdk.tools.jaotc.DataPatchProcessor jdk.tools.jaotc.InfopointProcessor top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.CompiledMethodInfo
astore 6
start local 6 6: aload 6
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
astore 8
start local 8 7: new java.lang.StringBuilder
dup
ldc "state.M"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCodeId:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 8: new java.lang.StringBuilder
dup
ldc "got."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 10
start local 10 9: aload 0
getfield jdk.tools.jaotc.MetadataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodStateContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
aload 10
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.createGotSymbol:(Ljava/lang/String;)Ljdk/tools/jaotc/binformat/GotSymbol;
astore 11
start local 11 10: getstatic jdk.tools.jaotc.MetadataBuilder.$assertionsDisabled:Z
ifne 11
aload 11
invokevirtual jdk.tools.jaotc.binformat.GotSymbol.getIndex:()I
aload 6
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCodeId:()I
if_icmpeq 11
new java.lang.AssertionError
dup
ldc "wrong offset"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
11: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass java.util.ArrayList jdk.tools.jaotc.MarkProcessor jdk.tools.jaotc.DataPatchProcessor jdk.tools.jaotc.InfopointProcessor jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator org.graalvm.compiler.code.CompilationResult java.lang.String java.lang.String jdk.tools.jaotc.binformat.GotSymbol
StackMap stack:
aload 8
invokevirtual org.graalvm.compiler.code.CompilationResult.getInfopoints:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 14
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass java.util.ArrayList jdk.tools.jaotc.MarkProcessor jdk.tools.jaotc.DataPatchProcessor jdk.tools.jaotc.InfopointProcessor jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator org.graalvm.compiler.code.CompilationResult java.lang.String java.lang.String jdk.tools.jaotc.binformat.GotSymbol top java.util.Iterator
StackMap stack:
12: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.vm.ci.code.site.Infopoint
astore 12
start local 12 13: aload 5
aload 6
aload 12
invokevirtual jdk.tools.jaotc.InfopointProcessor.process:(Ljdk/tools/jaotc/CompiledMethodInfo;Ljdk/vm/ci/code/site/Infopoint;)V
end local 12 14: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
15: aload 8
invokevirtual org.graalvm.compiler.code.CompilationResult.getMarks:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 18
StackMap locals:
StackMap stack:
16: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.code.CompilationResult$CodeMark
astore 12
start local 12 17: aload 3
aload 6
aload 12
invokevirtual jdk.tools.jaotc.MarkProcessor.process:(Ljdk/tools/jaotc/CompiledMethodInfo;Lorg/graalvm/compiler/code/CompilationResult$CodeMark;)V
end local 12 18: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
19: aload 8
invokevirtual org.graalvm.compiler.code.CompilationResult.getDataPatches:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 22
StackMap locals:
StackMap stack:
20: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.vm.ci.code.site.DataPatch
astore 12
start local 12 21: aload 4
aload 6
aload 12
invokevirtual jdk.tools.jaotc.DataPatchProcessor.process:(Ljdk/tools/jaotc/CompiledMethodInfo;Ljdk/vm/ci/code/site/DataPatch;)V
end local 12 22: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
end local 11 end local 10 end local 9 end local 8 end local 6 23: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass java.util.ArrayList jdk.tools.jaotc.MarkProcessor jdk.tools.jaotc.DataPatchProcessor jdk.tools.jaotc.InfopointProcessor top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
24: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Ljdk/tools/jaotc/MetadataBuilder;
0 25 1 compiledClass Ljdk/tools/jaotc/AOTCompiledClass;
1 25 2 compiledMethods Ljava/util/ArrayList<Ljdk/tools/jaotc/CompiledMethodInfo;>;
2 25 3 markProcessor Ljdk/tools/jaotc/MarkProcessor;
3 25 4 dataPatchProcessor Ljdk/tools/jaotc/DataPatchProcessor;
4 25 5 infopointProcessor Ljdk/tools/jaotc/InfopointProcessor;
6 23 6 methodInfo Ljdk/tools/jaotc/CompiledMethodInfo;
7 23 8 compilationResult Lorg/graalvm/compiler/code/CompilationResult;
8 23 9 targetSymbol Ljava/lang/String;
9 23 10 gotName Ljava/lang/String;
10 23 11 symbol Ljdk/tools/jaotc/binformat/GotSymbol;
13 14 12 infoPoint Ljdk/vm/ci/code/site/Infopoint;
17 18 12 mark Lorg/graalvm/compiler/code/CompilationResult$CodeMark;
21 22 12 dataPatch Ljdk/vm/ci/code/site/DataPatch;
MethodParameters:
Name Flags
compiledClass
}
SourceFile: "MetadataBuilder.java"
InnerClasses:
AOTKlassData = jdk.tools.jaotc.AOTCompiledClass$AOTKlassData of jdk.tools.jaotc.AOTCompiledClass
public PatchableInt = jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt of jdk.tools.jaotc.utils.NativeOrderOutputStream
public CodeMark = org.graalvm.compiler.code.CompilationResult$CodeMark of org.graalvm.compiler.code.CompilationResult