final class jdk.tools.jaotc.DataBuilder
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.tools.jaotc.DataBuilder
super_class: java.lang.Object
{
private final jdk.tools.jaotc.Main main;
descriptor: Ljdk/tools/jaotc/Main;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.graalvm.compiler.hotspot.HotSpotHostBackend backend;
descriptor: Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<jdk.tools.jaotc.AOTCompiledClass> classes;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
private final jdk.tools.jaotc.binformat.BinaryContainer binaryContainer;
descriptor: Ljdk/tools/jaotc/binformat/BinaryContainer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final java.util.HashMap<java.lang.Long, java.lang.String> vmAddresses;
descriptor: Ljava/util/HashMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/Long;Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic jdk.tools.jaotc.DataBuilder.vmAddresses:Ljava/util/HashMap;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.tools.jaotc.Main, org.graalvm.compiler.hotspot.HotSpotHostBackend, java.util.List<jdk.tools.jaotc.AOTCompiledClass>, jdk.tools.jaotc.binformat.BinaryContainer);
descriptor: (Ljdk/tools/jaotc/Main;Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;Ljava/util/List;Ljdk/tools/jaotc/binformat/BinaryContainer;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
2: aload 0
aload 2
putfield jdk.tools.jaotc.DataBuilder.backend:Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
3: aload 0
aload 3
putfield jdk.tools.jaotc.DataBuilder.classes:Ljava/util/List;
4: aload 0
aload 4
putfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
5: invokestatic jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.runtime:()Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.getConfigStore:()Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;
invokestatic jdk.tools.jaotc.DataBuilder.fillVMAddresses:(Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/tools/jaotc/DataBuilder;
0 7 1 main Ljdk/tools/jaotc/Main;
0 7 2 backend Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
0 7 3 classes Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
0 7 4 binaryContainer Ljdk/tools/jaotc/binformat/BinaryContainer;
Signature: (Ljdk/tools/jaotc/Main;Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;Ljdk/tools/jaotc/binformat/BinaryContainer;)V
MethodParameters:
Name Flags
main
backend
classes
binaryContainer
private static void fillVMAddresses(jdk.vm.ci.hotspot.HotSpotVMConfigStore);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotVMConfigStore.getFields:()Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 7
StackMap locals: jdk.vm.ci.hotspot.HotSpotVMConfigStore top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.vm.ci.hotspot.VMField
astore 1
start local 1 2: aload 1
getfield jdk.vm.ci.hotspot.VMField.value:Ljava/lang/Object;
ifnull 7
aload 1
getfield jdk.vm.ci.hotspot.VMField.value:Ljava/lang/Object;
instanceof java.lang.Long
ifeq 7
3: aload 1
getfield jdk.vm.ci.hotspot.VMField.value:Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 3
start local 3 4: aload 1
getfield jdk.vm.ci.hotspot.VMField.name:Ljava/lang/String;
astore 5
start local 5 5: lload 3
lconst_0
lcmp
ifeq 7
6: getstatic jdk.tools.jaotc.DataBuilder.vmAddresses:Ljava/util/HashMap;
lload 3
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 5
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 end local 3 end local 1 7: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
8: aload 0
invokevirtual jdk.vm.ci.hotspot.HotSpotVMConfigStore.getAddresses:()Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 2
goto 15
StackMap locals:
StackMap stack:
9: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 1
start local 1 10: aload 1
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 3
start local 3 11: aload 1
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 12: getstatic jdk.tools.jaotc.DataBuilder.vmAddresses:Ljava/util/HashMap;
lload 3
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 5
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 13: aload 6
ifnull 15
14: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "already in map: address: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc ", current: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", old: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 end local 3 end local 1 15: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
16: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 config Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;
2 7 1 vmField Ljdk/vm/ci/hotspot/VMField;
4 7 3 address J
5 7 5 value Ljava/lang/String;
10 15 1 vmAddress Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Long;>;
11 15 3 address J
12 15 5 value Ljava/lang/String;
13 15 6 old Ljava/lang/String;
MethodParameters:
Name Flags
config
static java.lang.String getVMFunctionNameForAddress(long);
descriptor: (J)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic jdk.tools.jaotc.DataBuilder.vmAddresses:Ljava/util/HashMap;
lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 address J
MethodParameters:
Name Flags
address
org.graalvm.compiler.hotspot.HotSpotHostBackend getBackend();
descriptor: ()Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jaotc.DataBuilder.backend:Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jaotc/DataBuilder;
jdk.tools.jaotc.binformat.BinaryContainer getBinaryContainer();
descriptor: ()Ljdk/tools/jaotc/binformat/BinaryContainer;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jaotc/DataBuilder;
void prepareData(org.graalvm.compiler.debug.DebugContext);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)V
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: new jdk.tools.jaotc.Timer
dup
aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
ldc "Parsing compiled code"
invokespecial jdk.tools.jaotc.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 4
start local 4 2: new jdk.tools.jaotc.CodeSectionProcessor
dup
aload 0
invokespecial jdk.tools.jaotc.CodeSectionProcessor.<init>:(Ljdk/tools/jaotc/DataBuilder;)V
astore 5
start local 5 3: aload 0
getfield jdk.tools.jaotc.DataBuilder.classes:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 7
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer jdk.tools.jaotc.CodeSectionProcessor top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.AOTCompiledClass
astore 6
start local 6 5: aload 6
aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.AOTCompiledClass.addAOTKlassData:(Ljdk/tools/jaotc/binformat/BinaryContainer;)V
6: aload 5
aload 6
invokevirtual jdk.tools.jaotc.CodeSectionProcessor.process:(Ljdk/tools/jaotc/AOTCompiledClass;)V
end local 6 7: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 5 8: aload 4
ifnull 14
aload 4
invokevirtual jdk.tools.jaotc.Timer.close:()V
goto 14
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer
StackMap stack: java.lang.Throwable
9: astore 2
aload 4
ifnull 10
aload 4
invokevirtual jdk.tools.jaotc.Timer.close:()V
end local 4 StackMap locals:
StackMap stack:
10: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 3
aload 2
ifnonnull 12
aload 3
astore 2
goto 13
StackMap locals:
StackMap stack:
12: aload 2
aload 3
if_acmpeq 13
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 2
athrow
14: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.tools.jaotc.DataBuilder.retrieveStubCode:(Lorg/graalvm/compiler/debug/DebugContext;)Ljdk/tools/jaotc/AOTCompiledClass;
astore 2
start local 2 15: aconst_null
astore 3
aconst_null
astore 4
16: aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Options;
getfield jdk.tools.jaotc.Options.verbose:Z
ifeq 17
new jdk.tools.jaotc.Timer
dup
aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
ldc "Freeing memory"
invokespecial jdk.tools.jaotc.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
goto 18
StackMap locals: jdk.tools.jaotc.AOTCompiledClass java.lang.Throwable java.lang.Throwable
StackMap stack:
17: aconst_null
StackMap locals:
StackMap stack: jdk.tools.jaotc.Timer
18: astore 5
start local 5 19: aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
getfield jdk.tools.jaotc.Main.printer:Ljdk/tools/jaotc/LogPrinter;
invokevirtual jdk.tools.jaotc.LogPrinter.printMemoryUsage:()V
20: invokestatic java.lang.System.gc:()V
21: aload 5
ifnull 27
aload 5
invokevirtual jdk.tools.jaotc.Timer.close:()V
goto 27
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext jdk.tools.jaotc.AOTCompiledClass java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer
StackMap stack: java.lang.Throwable
22: astore 3
aload 5
ifnull 23
aload 5
invokevirtual jdk.tools.jaotc.Timer.close:()V
end local 5 StackMap locals:
StackMap stack:
23: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
24: astore 4
aload 3
ifnonnull 25
aload 4
astore 3
goto 26
StackMap locals:
StackMap stack:
25: aload 3
aload 4
if_acmpeq 26
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
26: aload 3
athrow
27: StackMap locals:
StackMap stack:
aconst_null
astore 3
start local 3 28: aconst_null
astore 4
aconst_null
astore 5
29: new jdk.tools.jaotc.Timer
dup
aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
ldc "Processing metadata"
invokespecial jdk.tools.jaotc.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 6
start local 6 30: new jdk.tools.jaotc.MetadataBuilder
dup
aload 0
invokespecial jdk.tools.jaotc.MetadataBuilder.<init>:(Ljdk/tools/jaotc/DataBuilder;)V
astore 3
31: aload 3
aload 0
getfield jdk.tools.jaotc.DataBuilder.classes:Ljava/util/List;
aload 2
invokevirtual jdk.tools.jaotc.MetadataBuilder.processMetadata:(Ljava/util/List;Ljdk/tools/jaotc/AOTCompiledClass;)V
32: aload 6
ifnull 38
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
goto 38
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext jdk.tools.jaotc.AOTCompiledClass jdk.tools.jaotc.MetadataBuilder java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer
StackMap stack: java.lang.Throwable
33: astore 4
aload 6
ifnull 34
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
end local 6 StackMap locals:
StackMap stack:
34: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
35: astore 5
aload 4
ifnonnull 36
aload 5
astore 4
goto 37
StackMap locals:
StackMap stack:
36: aload 4
aload 5
if_acmpeq 37
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
37: aload 4
athrow
38: StackMap locals:
StackMap stack:
aconst_null
astore 4
aconst_null
astore 5
39: aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Options;
getfield jdk.tools.jaotc.Options.verbose:Z
ifeq 40
new jdk.tools.jaotc.Timer
dup
aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
ldc "Freeing memory"
invokespecial jdk.tools.jaotc.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
goto 41
StackMap locals: java.lang.Throwable java.lang.Throwable
StackMap stack:
40: aconst_null
StackMap locals:
StackMap stack: jdk.tools.jaotc.Timer
41: astore 6
start local 6 42: aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
getfield jdk.tools.jaotc.Main.printer:Ljdk/tools/jaotc/LogPrinter;
invokevirtual jdk.tools.jaotc.LogPrinter.printMemoryUsage:()V
43: invokestatic java.lang.System.gc:()V
44: aload 6
ifnull 50
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
goto 50
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext jdk.tools.jaotc.AOTCompiledClass jdk.tools.jaotc.MetadataBuilder java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer
StackMap stack: java.lang.Throwable
45: astore 4
aload 6
ifnull 46
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
end local 6 StackMap locals:
StackMap stack:
46: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
47: astore 5
aload 4
ifnonnull 48
aload 5
astore 4
goto 49
StackMap locals:
StackMap stack:
48: aload 4
aload 5
if_acmpeq 49
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
49: aload 4
athrow
50: StackMap locals:
StackMap stack:
aconst_null
astore 4
aconst_null
astore 5
51: new jdk.tools.jaotc.Timer
dup
aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
ldc "Preparing stubs binary"
invokespecial jdk.tools.jaotc.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 6
start local 6 52: aload 0
aload 2
invokevirtual jdk.tools.jaotc.DataBuilder.prepareStubsBinary:(Ljdk/tools/jaotc/AOTCompiledClass;)V
53: aload 6
ifnull 59
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
goto 59
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext jdk.tools.jaotc.AOTCompiledClass jdk.tools.jaotc.MetadataBuilder java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer
StackMap stack: java.lang.Throwable
54: astore 4
aload 6
ifnull 55
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
end local 6 StackMap locals:
StackMap stack:
55: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
56: astore 5
aload 4
ifnonnull 57
aload 5
astore 4
goto 58
StackMap locals:
StackMap stack:
57: aload 4
aload 5
if_acmpeq 58
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
58: aload 4
athrow
59: StackMap locals:
StackMap stack:
aconst_null
astore 4
aconst_null
astore 5
60: new jdk.tools.jaotc.Timer
dup
aload 0
getfield jdk.tools.jaotc.DataBuilder.main:Ljdk/tools/jaotc/Main;
ldc "Preparing compiled binary"
invokespecial jdk.tools.jaotc.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 6
start local 6 61: aload 0
invokevirtual jdk.tools.jaotc.DataBuilder.prepareCompiledBinary:()V
62: aload 6
ifnull 68
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
goto 68
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext jdk.tools.jaotc.AOTCompiledClass jdk.tools.jaotc.MetadataBuilder java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.Timer
StackMap stack: java.lang.Throwable
63: astore 4
aload 6
ifnull 64
aload 6
invokevirtual jdk.tools.jaotc.Timer.close:()V
end local 6 StackMap locals:
StackMap stack:
64: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
65: astore 5
aload 4
ifnonnull 66
aload 5
astore 4
goto 67
StackMap locals:
StackMap stack:
66: aload 4
aload 5
if_acmpeq 67
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
67: aload 4
athrow
68: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 69 0 this Ljdk/tools/jaotc/DataBuilder;
0 69 1 debug Lorg/graalvm/compiler/debug/DebugContext;
2 10 4 t Ljdk/tools/jaotc/Timer;
3 8 5 codeSectionProcessor Ljdk/tools/jaotc/CodeSectionProcessor;
5 7 6 c Ljdk/tools/jaotc/AOTCompiledClass;
15 69 2 stubCompiledCode Ljdk/tools/jaotc/AOTCompiledClass;
19 23 5 t Ljdk/tools/jaotc/Timer;
28 69 3 metadataBuilder Ljdk/tools/jaotc/MetadataBuilder;
30 34 6 t Ljdk/tools/jaotc/Timer;
42 46 6 t Ljdk/tools/jaotc/Timer;
52 55 6 t Ljdk/tools/jaotc/Timer;
61 64 6 t Ljdk/tools/jaotc/Timer;
Exception table:
from to target type
2 8 9 any
1 11 11 any
19 21 22 any
16 24 24 any
30 32 33 any
29 35 35 any
42 44 45 any
39 47 47 any
52 53 54 any
51 56 56 any
61 62 63 any
60 65 65 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
debug
private jdk.tools.jaotc.AOTCompiledClass retrieveStubCode(org.graalvm.compiler.debug.DebugContext);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)Ljdk/tools/jaotc/AOTCompiledClass;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=11, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 0
getfield jdk.tools.jaotc.DataBuilder.backend:Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
invokevirtual org.graalvm.compiler.hotspot.HotSpotHostBackend.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getForeignCalls:()Lorg/graalvm/compiler/hotspot/meta/HotSpotForeignCallsProvider;
astore 3
start local 3 2: aload 3
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider.getStubs:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext java.util.ArrayList org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.hotspot.stubs.Stub
astore 4
start local 4 4: aconst_null
astore 6
aconst_null
astore 7
5: aload 1
ldc "CompileStubs"
invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 8
start local 8 6: aload 4
aload 1
aload 0
getfield jdk.tools.jaotc.DataBuilder.backend:Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
invokevirtual org.graalvm.compiler.hotspot.stubs.Stub.getCompilationResult:(Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/core/target/Backend;)Lorg/graalvm/compiler/code/CompilationResult;
astore 9
start local 9 7: new jdk.tools.jaotc.CompiledMethodInfo
dup
aload 9
new jdk.tools.jaotc.AOTStub
dup
aload 4
aload 0
getfield jdk.tools.jaotc.DataBuilder.backend:Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
invokespecial jdk.tools.jaotc.AOTStub.<init>:(Lorg/graalvm/compiler/hotspot/stubs/Stub;Lorg/graalvm/compiler/core/target/Backend;)V
invokespecial jdk.tools.jaotc.CompiledMethodInfo.<init>:(Lorg/graalvm/compiler/code/CompilationResult;Ljdk/tools/jaotc/JavaMethodInfo;)V
astore 10
start local 10 8: aload 2
aload 10
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 10 end local 9 9: aload 8
ifnull 17
aload 8
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
goto 17
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext java.util.ArrayList org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider org.graalvm.compiler.hotspot.stubs.Stub java.util.Iterator java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
StackMap stack: java.lang.Throwable
10: astore 6
aload 8
ifnull 11
aload 8
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 8 StackMap locals:
StackMap stack:
11: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 7
aload 6
ifnonnull 13
aload 7
astore 6
goto 14
StackMap locals:
StackMap stack:
13: aload 6
aload 7
if_acmpeq 14
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 6
athrow
StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext java.util.ArrayList org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider org.graalvm.compiler.hotspot.stubs.Stub java.util.Iterator
StackMap stack: java.lang.Throwable
15: astore 6
start local 6 16: aload 1
aload 6
invokevirtual org.graalvm.compiler.debug.DebugContext.handle:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 6 end local 4 17: StackMap locals: jdk.tools.jaotc.DataBuilder org.graalvm.compiler.debug.DebugContext java.util.ArrayList org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
18: new jdk.tools.jaotc.AOTCompiledClass
dup
aload 2
invokespecial jdk.tools.jaotc.AOTCompiledClass.<init>:(Ljava/util/ArrayList;)V
astore 4
start local 4 19: new jdk.tools.jaotc.CodeSectionProcessor
dup
aload 0
invokespecial jdk.tools.jaotc.CodeSectionProcessor.<init>:(Ljdk/tools/jaotc/DataBuilder;)V
astore 5
start local 5 20: aload 5
aload 4
invokevirtual jdk.tools.jaotc.CodeSectionProcessor.process:(Ljdk/tools/jaotc/AOTCompiledClass;)V
21: aload 4
areturn
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 22 0 this Ljdk/tools/jaotc/DataBuilder;
0 22 1 debug Lorg/graalvm/compiler/debug/DebugContext;
1 22 2 stubs Ljava/util/ArrayList<Ljdk/tools/jaotc/CompiledMethodInfo;>;
2 22 3 foreignCallsProvider Lorg/graalvm/compiler/hotspot/meta/HotSpotForeignCallsProvider;
4 17 4 stub Lorg/graalvm/compiler/hotspot/stubs/Stub;
6 11 8 scope Lorg/graalvm/compiler/debug/DebugContext$Scope;
7 9 9 result Lorg/graalvm/compiler/code/CompilationResult;
8 9 10 cm Ljdk/tools/jaotc/CompiledMethodInfo;
16 17 6 e Ljava/lang/Throwable;
19 22 4 stubCompiledCode Ljdk/tools/jaotc/AOTCompiledClass;
20 22 5 codeSectionProcessor Ljdk/tools/jaotc/CodeSectionProcessor;
Exception table:
from to target type
6 9 10 any
5 12 12 any
4 15 15 Class java.lang.Throwable
MethodParameters:
Name Flags
debug
private void prepareCompiledBinary();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jaotc.DataBuilder.classes:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 2
goto 3
StackMap locals: jdk.tools.jaotc.DataBuilder top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.AOTCompiledClass
astore 1
start local 1 2: aload 1
aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.AOTCompiledClass.putMethodsData:(Ljdk/tools/jaotc/binformat/BinaryContainer;)V
end local 1 3: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokestatic jdk.tools.jaotc.AOTCompiledClass.putAOTKlassData:(Ljdk/tools/jaotc/binformat/BinaryContainer;)V
5: aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getHeaderContainer:()Ljdk/tools/jaotc/binformat/HeaderContainer;
astore 1
start local 1 6: aload 1
invokestatic jdk.tools.jaotc.AOTCompiledClass.getClassesCount:()I
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.setClassesCount:(I)V
7: aload 1
invokestatic jdk.tools.jaotc.CompiledMethodInfo.getMethodsCount:()I
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.setMethodsCount:(I)V
8: aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getKlassesGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
astore 2
start local 2 9: aload 1
aload 2
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
bipush 8
idiv
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.setKlassesGotSize:(I)V
10: aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetadataGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
astore 2
11: aload 1
aload 2
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
bipush 8
idiv
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.setMetadataGotSize:(I)V
12: aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getOopGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
astore 2
13: aload 1
aload 2
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
bipush 8
idiv
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.setOopGotSize:(I)V
14: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/tools/jaotc/DataBuilder;
2 3 1 c Ljdk/tools/jaotc/AOTCompiledClass;
6 15 1 header Ljdk/tools/jaotc/binformat/HeaderContainer;
9 15 2 bc Ljdk/tools/jaotc/binformat/ByteContainer;
private void prepareStubsBinary(jdk.tools.jaotc.AOTCompiledClass);
descriptor: (Ljdk/tools/jaotc/AOTCompiledClass;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, 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: aload 2
invokevirtual java.util.ArrayList.size:()I
istore 3
start local 3 2: iload 3
aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getStubsOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokestatic jdk.tools.jaotc.binformat.BinaryContainer.addMethodsCount:(ILjdk/tools/jaotc/binformat/ReadOnlyDataContainer;)I
pop
3: aload 2
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 5
goto 6
StackMap locals: jdk.tools.jaotc.DataBuilder jdk.tools.jaotc.AOTCompiledClass java.util.ArrayList int top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.CompiledMethodInfo
astore 4
start local 4 5: aload 4
aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
aload 0
getfield jdk.tools.jaotc.DataBuilder.binaryContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getStubsOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.CompiledMethodInfo.addMethodOffsets:(Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
end local 4 6: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/tools/jaotc/DataBuilder;
0 8 1 compiledClass Ljdk/tools/jaotc/AOTCompiledClass;
1 8 2 compiledStubs Ljava/util/ArrayList<Ljdk/tools/jaotc/CompiledMethodInfo;>;
2 8 3 cntStubs I
5 6 4 methodInfo Ljdk/tools/jaotc/CompiledMethodInfo;
MethodParameters:
Name Flags
compiledClass
}
SourceFile: "DataBuilder.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext