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=35, 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: aconst_null
astore 4
start local 4 3: ldc Ljdk/vm/ci/hotspot/HotSpotMetaData;
ldc "implicitExceptionBytes"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
4: goto 6
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method
StackMap stack: java.lang.NoSuchMethodException
5: pop
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.tools.jaotc.AOTCompiledClass.getCompiledMethods:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 6
goto 76
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.CompiledMethodInfo
astore 5
start local 5 8: aload 3
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
istore 7
start local 7 9: getstatic jdk.tools.jaotc.MetadataBuilder.$assertionsDisabled:Z
ifne 10
iload 7
bipush 8
irem
ifeq 10
new java.lang.AssertionError
dup
ldc "Must be aligned on 8"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
10: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int
StackMap stack:
aload 5
iload 7
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.setMetadataOffset:(I)V
11: aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.compiledCode:()Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
astore 8
start local 8 12: new jdk.vm.ci.hotspot.HotSpotMetaData
dup
aload 2
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getTarget:()Ljdk/vm/ci/code/TargetDescription;
aload 8
invokespecial jdk.vm.ci.hotspot.HotSpotMetaData.<init>:(Ljdk/vm/ci/code/TargetDescription;Ljdk/vm/ci/hotspot/HotSpotCompiledCode;)V
astore 9
start local 9 13: aload 9
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.pcDescBytes:()[B
astore 10
start local 10 14: aload 9
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.scopesDescBytes:()[B
astore 11
start local 11 15: aload 9
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.relocBytes:()[B
astore 12
start local 12 16: aload 9
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.oopMaps:()[B
astore 13
start local 13 17: new jdk.tools.jaotc.utils.NativeOrderOutputStream
dup
invokespecial jdk.tools.jaotc.utils.NativeOrderOutputStream.<init>:()V
astore 14
start local 14 18: aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCodeSize:()I
istore 15
start local 15 19: aload 5
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 16
start local 16 20: aload 16
invokevirtual jdk.tools.jaotc.CodeOffsets.entry:()I
istore 17
start local 17 21: aload 16
invokevirtual jdk.tools.jaotc.CodeOffsets.verifiedEntry:()I
istore 18
start local 18 22: aload 16
invokevirtual jdk.tools.jaotc.CodeOffsets.exceptionHandler:()I
istore 19
start local 19 23: aload 16
invokevirtual jdk.tools.jaotc.CodeOffsets.deoptHandler:()I
istore 20
start local 20 24: aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.getTotalFrameSize:()I
istore 21
start local 21 25: aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.getCustomStackArea:()Ljdk/vm/ci/code/StackSlot;
astore 22
start local 22 26: aload 22
ifnull 27
aload 22
iload 21
invokevirtual jdk.vm.ci.code.StackSlot.getOffset:(I)I
goto 28
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int jdk.vm.ci.hotspot.HotSpotCompiledCode jdk.vm.ci.hotspot.HotSpotMetaData byte[] byte[] byte[] byte[] jdk.tools.jaotc.utils.NativeOrderOutputStream int jdk.tools.jaotc.CodeOffsets int int int int int jdk.vm.ci.code.StackSlot
StackMap stack:
27: iconst_m1
StackMap locals:
StackMap stack: int
28: istore 23
start local 23 29: aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getStubsOffset:()I
istore 24
start local 24 30: aload 0
getfield jdk.tools.jaotc.MetadataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
aload 9
aload 5
invokestatic jdk.tools.jaotc.MetadataBuilder.addMetadataEntries:(Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/vm/ci/hotspot/HotSpotMetaData;Ljdk/tools/jaotc/CompiledMethodInfo;)I
istore 25
start local 25 31: aload 5
iload 25
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.setMetadataGotOffset:(I)V
32: aload 5
aload 9
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.metadataEntries:()[Ljava/lang/Object;
arraylength
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.setMetadataGotSize:(I)V
33: aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getCompilationResult:()Lorg/graalvm/compiler/code/CompilationResult;
invokevirtual org.graalvm.compiler.code.CompilationResult.hasUnsafeAccess:()Z
ifeq 34
iconst_1
goto 35
StackMap locals: int int int
StackMap stack:
34: iconst_0
StackMap locals:
StackMap stack: int
35: istore 26
start local 26 36: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 27
start local 27 37: aload 14
iload 15
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
38: iload 17
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
39: iload 18
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
40: iload 19
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
41: iload 20
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
42: iload 24
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
43: iload 21
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
44: iload 23
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
45: iload 26
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.putInt:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
46: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 28
start local 28 47: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 29
start local 29 48: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 30
start local 30 49: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 31
start local 31 50: aconst_null
astore 32
start local 32 51: aload 4
ifnull 53
52: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 32
53: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int jdk.vm.ci.hotspot.HotSpotCompiledCode jdk.vm.ci.hotspot.HotSpotMetaData byte[] byte[] byte[] byte[] jdk.tools.jaotc.utils.NativeOrderOutputStream int jdk.tools.jaotc.CodeOffsets 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 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.patchableInt:()Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
astore 33
start local 33 54: aload 14
bipush 8
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.align:(I)Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
pop
55: aload 28
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
56: aload 14
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
57: aload 29
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
58: aload 14
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
59: aload 30
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
60: aload 14
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
61: aload 31
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
62: aload 14
aload 9
invokevirtual jdk.vm.ci.hotspot.HotSpotMetaData.exceptionBytes:()[B
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 4
ifnull 67
64: aload 32
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
65: aload 4
aload 9
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast byte[]
astore 34
start local 34 66: aload 14
aload 34
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
end local 34 67: StackMap locals: jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt
StackMap stack:
aload 33
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
68: aload 14
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
69: aload 27
aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.position:()I
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream$PatchableInt.set:(I)V
70: aload 14
invokevirtual jdk.tools.jaotc.utils.NativeOrderOutputStream.array:()[B
astore 34
start local 34 71: aload 3
aload 34
iconst_0
aload 34
arraylength
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.appendBytes:([BII)Ljdk/tools/jaotc/binformat/ByteContainer;
pop
end local 34 end local 33 end local 32 end local 31 end local 30 end local 29 end local 28 end local 27 72: goto 75
StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method jdk.tools.jaotc.CompiledMethodInfo java.util.Iterator int jdk.vm.ci.hotspot.HotSpotCompiledCode jdk.vm.ci.hotspot.HotSpotMetaData byte[] byte[] byte[] byte[] jdk.tools.jaotc.utils.NativeOrderOutputStream int jdk.tools.jaotc.CodeOffsets int int int int int jdk.vm.ci.code.StackSlot int int int int
StackMap stack: java.lang.Exception
73: astore 27
start local 27 74: 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 5
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 27
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 27 75: StackMap locals:
StackMap stack:
aload 5
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.clearCompileData:()V
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 5 76: StackMap locals: jdk.tools.jaotc.MetadataBuilder jdk.tools.jaotc.AOTCompiledClass org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider jdk.tools.jaotc.binformat.ByteContainer java.lang.reflect.Method top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
77: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 78 0 this Ljdk/tools/jaotc/MetadataBuilder;
0 78 1 compiledClass Ljdk/tools/jaotc/AOTCompiledClass;
1 78 2 runtime Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
2 78 3 methodMetadataContainer Ljdk/tools/jaotc/binformat/ByteContainer;
3 78 4 implicitExceptionsMethod Ljava/lang/reflect/Method;
8 76 5 methodInfo Ljdk/tools/jaotc/CompiledMethodInfo;
9 76 7 startOffset I
12 76 8 compiledMethod Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
13 76 9 metaData Ljdk/vm/ci/hotspot/HotSpotMetaData;
14 76 10 pcDesc [B
15 76 11 scopeDesc [B
16 76 12 relocationInfo [B
17 76 13 oopMapInfo [B
18 76 14 metadataStream Ljdk/tools/jaotc/utils/NativeOrderOutputStream;
19 76 15 codeSize I
20 76 16 co Ljdk/tools/jaotc/CodeOffsets;
21 76 17 unverifiedEntry I
22 76 18 verifiedEntry I
23 76 19 exceptionHandler I
24 76 20 deoptHandler I
25 76 21 frameSize I
26 76 22 deoptRescueSlot Ljdk/vm/ci/code/StackSlot;
29 76 23 origPcOffset I
30 76 24 stubsOffset I
31 76 25 offset I
36 76 26 unsafeAccess I
37 72 27 totalSize Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
47 72 28 pcDescOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
48 72 29 scopeOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
49 72 30 relocationOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
50 72 31 exceptionOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
51 72 32 implictTableOFfset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
54 72 33 oopMapOffset Ljdk/tools/jaotc/utils/NativeOrderOutputStream$PatchableInt;
66 67 34 data [B
71 72 34 data [B
74 75 27 e Ljava/lang/Exception;
Exception table:
from to target type
3 4 5 Class java.lang.NoSuchMethodException
36 72 73 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 jdk.vm.ci.code.site.Mark
astore 12
start local 12 17: aload 3
aload 6
aload 12
invokevirtual jdk.tools.jaotc.MarkProcessor.process:(Ljdk/tools/jaotc/CompiledMethodInfo;Ljdk/vm/ci/code/site/Mark;)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 Ljdk/vm/ci/code/site/Mark;
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