public class jdk.tools.jaotc.Main implements jdk.tools.jaotc.LogPrinter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.tools.jaotc.Main
super_class: java.lang.Object
{
static jdk.tools.jaotc.Main$Option[] recognizedOptions;
descriptor: [Ljdk/tools/jaotc/Main$Option;
flags: (0x0008) ACC_STATIC
final jdk.tools.jaotc.Main$Options options;
descriptor: Ljdk/tools/jaotc/Main$Options;
flags: (0x0010) ACC_FINAL
private static java.io.FileWriter logFile;
descriptor: Ljava/io/FileWriter;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final int EXIT_OK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int EXIT_CMDERR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int EXIT_ABNORMAL;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.lang.String PROGNAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "jaotc"
private static final java.lang.String JVM_VERSION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
java.io.PrintWriter log;
descriptor: Ljava/io/PrintWriter;
flags: (0x0000)
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=11, locals=0, args_size=0
0: getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionValue;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual org.graalvm.compiler.options.OptionValue.setValue:(Ljava/lang/Object;)V
1: getstatic org.graalvm.compiler.core.common.GraalOptions.ImmutableCode:Lorg/graalvm/compiler/options/OptionValue;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual org.graalvm.compiler.options.OptionValue.setValue:(Ljava/lang/Object;)V
2: bipush 18
anewarray jdk.tools.jaotc.Main$Option
dup
iconst_0
new jdk.tools.jaotc.Main$1
dup
ldc " --output <file> Output file name"
iconst_1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--output"
aastore
invokespecial jdk.tools.jaotc.Main$1.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
iconst_1
3: new jdk.tools.jaotc.Main$2
dup
ldc " --class-name <class names> List of classes to compile"
iconst_1
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "--class-name"
aastore
dup
iconst_1
ldc "--classname"
aastore
invokespecial jdk.tools.jaotc.Main$2.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
iconst_2
4: new jdk.tools.jaotc.Main$3
dup
ldc " --jar <jarfiles> List of jar files to compile"
iconst_1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--jar"
aastore
invokespecial jdk.tools.jaotc.Main$3.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
iconst_3
5: new jdk.tools.jaotc.Main$4
dup
ldc " --module <modules> List of modules to compile"
iconst_1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--module"
aastore
invokespecial jdk.tools.jaotc.Main$4.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
iconst_4
6: new jdk.tools.jaotc.Main$5
dup
ldc " --directory <dirs> List of directories where to search for files to compile"
iconst_1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--directory"
aastore
invokespecial jdk.tools.jaotc.Main$5.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
iconst_5
7: new jdk.tools.jaotc.Main$6
dup
ldc " --search-path <dirs> List of directories where to search for specified files"
iconst_1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--search-path"
aastore
invokespecial jdk.tools.jaotc.Main$6.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 6
8: new jdk.tools.jaotc.Main$7
dup
ldc " --compile-commands <file> Name of file with compile commands"
iconst_1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--compile-commands"
aastore
invokespecial jdk.tools.jaotc.Main$7.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 7
9: new jdk.tools.jaotc.Main$8
dup
ldc " --compile-for-tiered Generate profiling code for tiered compilation"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--compile-for-tiered"
aastore
invokespecial jdk.tools.jaotc.Main$8.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 8
10: new jdk.tools.jaotc.Main$9
dup
ldc " --compile-with-assertions Compile with java assertions"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--compile-with-assertions"
aastore
invokespecial jdk.tools.jaotc.Main$9.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 9
11: new jdk.tools.jaotc.Main$10
dup
ldc " --compile-threads <number> Number of compilation threads to be used"
iconst_1
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "--compile-threads"
aastore
dup
iconst_1
ldc "--threads"
aastore
invokespecial jdk.tools.jaotc.Main$10.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 10
12: new jdk.tools.jaotc.Main$11
dup
ldc " --ignore-errors Ignores all exceptions thrown during class loading"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--ignore-errors"
aastore
invokespecial jdk.tools.jaotc.Main$11.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 11
13: new jdk.tools.jaotc.Main$12
dup
ldc " --exit-on-error Exit on compilation errors"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--exit-on-error"
aastore
invokespecial jdk.tools.jaotc.Main$12.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 12
14: new jdk.tools.jaotc.Main$13
dup
ldc " --info Print information during compilation"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--info"
aastore
invokespecial jdk.tools.jaotc.Main$13.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 13
15: new jdk.tools.jaotc.Main$14
dup
ldc " --verbose Print verbose information"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--verbose"
aastore
invokespecial jdk.tools.jaotc.Main$14.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 14
16: new jdk.tools.jaotc.Main$15
dup
ldc " --debug Print debug information"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--debug"
aastore
invokespecial jdk.tools.jaotc.Main$15.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 15
17: new jdk.tools.jaotc.Main$16
dup
ldc " --help Print this usage message"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--help"
aastore
invokespecial jdk.tools.jaotc.Main$16.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 16
18: new jdk.tools.jaotc.Main$17
dup
ldc " --version Version information"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "--version"
aastore
invokespecial jdk.tools.jaotc.Main$17.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
dup
bipush 17
19: new jdk.tools.jaotc.Main$18
dup
ldc " -J<flag> Pass <flag> directly to the runtime system"
iconst_0
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "-J"
aastore
invokespecial jdk.tools.jaotc.Main$18.<init>:(Ljava/lang/String;Z[Ljava/lang/String;)V
aastore
20: putstatic jdk.tools.jaotc.Main.recognizedOptions:[Ljdk/tools/jaotc/Main$Option;
21: aconst_null
putstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
22: ldc "java.runtime.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
putstatic jdk.tools.jaotc.Main.JVM_VERSION:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new jdk.tools.jaotc.Main$Options
dup
invokespecial jdk.tools.jaotc.Main$Options.<init>:()V
putfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/tools/jaotc/Main;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: new jdk.tools.jaotc.Main
dup
invokespecial jdk.tools.jaotc.Main.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
invokevirtual jdk.tools.jaotc.Main.run:([Ljava/lang/String;)I
istore 2
start local 2 2: iload 2
invokestatic java.lang.System.exit:(I)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 args [Ljava/lang/String;
1 4 1 t Ljdk/tools/jaotc/Main;
2 4 2 exitCode I
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
args
private int run(java.lang.String[]);
descriptor: ([Ljava/lang/String;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ifnonnull 2
1: aload 0
new java.io.PrintWriter
dup
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;)V
putfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.tools.jaotc.Main.handleOptions:([Ljava/lang/String;)V
3: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.help:Z
ifeq 7
4: aload 0
invokevirtual jdk.tools.jaotc.Main.showHelp:()V
5: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.version:Z
ifeq 11
8: aload 0
invokevirtual jdk.tools.jaotc.Main.showVersion:()V
9: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
10: iconst_0
ireturn
11: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Compiling "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.outputName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printlnInfo:(Ljava/lang/String;)V
12: invokestatic java.lang.System.currentTimeMillis:()J
lstore 2
start local 2 13: aload 0
invokevirtual jdk.tools.jaotc.Main.run:()Z
ifne 16
14: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
15: iconst_4
ireturn
16: StackMap locals: long
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
lstore 4
start local 4 17: aload 0
new java.lang.StringBuilder
dup
ldc "Total time: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 4
lload 2
lsub
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " ms"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printlnInfo:(Ljava/lang/String;)V
18: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
19: iconst_0
ireturn
end local 4 end local 2 20: StackMap locals: jdk.tools.jaotc.Main java.lang.String[]
StackMap stack: jdk.tools.jaotc.Main$BadArgs
astore 2
start local 2 21: aload 0
aload 2
getfield jdk.tools.jaotc.Main$BadArgs.key:Ljava/lang/String;
aload 2
getfield jdk.tools.jaotc.Main$BadArgs.args:[Ljava/lang/Object;
invokevirtual jdk.tools.jaotc.Main.reportError:(Ljava/lang/String;[Ljava/lang/Object;)V
22: aload 2
getfield jdk.tools.jaotc.Main$BadArgs.showUsage:Z
ifeq 24
23: aload 0
invokevirtual jdk.tools.jaotc.Main.showUsage:()V
24: StackMap locals: jdk.tools.jaotc.Main$BadArgs
StackMap stack:
aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
25: iconst_2
ireturn
end local 2 26: StackMap locals: jdk.tools.jaotc.Main java.lang.String[]
StackMap stack: java.lang.Exception
astore 2
start local 2 27: aload 2
invokevirtual java.lang.Exception.printStackTrace:()V
28: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
29: iconst_4
ireturn
end local 2 30: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
31: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
32: aload 6
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Ljdk/tools/jaotc/Main;
0 33 1 args [Ljava/lang/String;
13 20 2 start J
17 20 4 end J
21 26 2 e Ljdk/tools/jaotc/Main$BadArgs;
27 30 2 e Ljava/lang/Exception;
Exception table:
from to target type
2 5 20 Class jdk.tools.jaotc.Main$BadArgs
7 9 20 Class jdk.tools.jaotc.Main$BadArgs
11 14 20 Class jdk.tools.jaotc.Main$BadArgs
16 18 20 Class jdk.tools.jaotc.Main$BadArgs
2 5 26 Class java.lang.Exception
7 9 26 Class java.lang.Exception
11 14 26 Class java.lang.Exception
16 18 26 Class java.lang.Exception
2 5 30 any
7 9 30 any
11 14 30 any
16 18 30 any
20 24 30 any
26 28 30 any
MethodParameters:
Name Flags
args
private static java.lang.String humanReadableByteCount(long);
descriptor: (J)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=5, args_size=1
start local 0 0: sipush 1024
istore 2
start local 2 1: lload 0
iload 2
i2l
lcmp
ifge 3
2: new java.lang.StringBuilder
dup
lload 0
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " B"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
3: StackMap locals: int
StackMap stack:
lload 0
l2d
invokestatic java.lang.Math.log:(D)D
iload 2
i2d
invokestatic java.lang.Math.log:(D)D
ddiv
d2i
istore 3
start local 3 4: ldc "KMGTPE"
iload 3
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
istore 4
start local 4 5: ldc "%.1f %cB"
iconst_2
anewarray java.lang.Object
dup
iconst_0
lload 0
l2d
iload 2
i2d
iload 3
i2d
invokestatic java.lang.Math.pow:(DD)D
ddiv
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
iconst_1
iload 4
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 bytes J
1 6 2 unit I
4 6 3 exp I
5 6 4 pre C
MethodParameters:
Name Flags
bytes
void printMemoryUsage();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tMemoryUsage cannot be resolved to a type\n\tManagementFactory cannot be resolved\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jaotc/Main;
private boolean run();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=29, args_size=1
start local 0 0: invokestatic jdk.tools.jaotc.Main.openLog:()V
1: aload 0
invokevirtual jdk.tools.jaotc.Main.collectSpecifiedMethods:()Ljdk/tools/jaotc/CompilationSpec;
astore 1
start local 1 2: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2
start local 2 3: aconst_null
astore 3
aconst_null
astore 4
4: new jdk.tools.jaotc.utils.Timer
dup
aload 0
ldc ""
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 5
start local 5 5: new jdk.tools.jaotc.collect.FileSupport
dup
invokespecial jdk.tools.jaotc.collect.FileSupport.<init>:()V
astore 6
start local 6 6: new jdk.tools.jaotc.collect.ClassSearch
dup
invokespecial jdk.tools.jaotc.collect.ClassSearch.<init>:()V
astore 7
start local 7 7: aload 7
new jdk.tools.jaotc.collect.module.ModuleSourceProvider
dup
invokespecial jdk.tools.jaotc.collect.module.ModuleSourceProvider.<init>:()V
invokevirtual jdk.tools.jaotc.collect.ClassSearch.addProvider:(Ljdk/tools/jaotc/collect/SourceProvider;)V
8: aload 7
new jdk.tools.jaotc.collect.classname.ClassNameSourceProvider
dup
aload 6
invokespecial jdk.tools.jaotc.collect.classname.ClassNameSourceProvider.<init>:(Ljdk/tools/jaotc/collect/FileSupport;)V
invokevirtual jdk.tools.jaotc.collect.ClassSearch.addProvider:(Ljdk/tools/jaotc/collect/SourceProvider;)V
9: aload 7
new jdk.tools.jaotc.collect.jar.JarSourceProvider
dup
invokespecial jdk.tools.jaotc.collect.jar.JarSourceProvider.<init>:()V
invokevirtual jdk.tools.jaotc.collect.ClassSearch.addProvider:(Ljdk/tools/jaotc/collect/SourceProvider;)V
10: aload 7
new jdk.tools.jaotc.collect.directory.DirectorySourceProvider
dup
aload 6
invokespecial jdk.tools.jaotc.collect.directory.DirectorySourceProvider.<init>:(Ljdk/tools/jaotc/collect/FileSupport;)V
invokevirtual jdk.tools.jaotc.collect.ClassSearch.addProvider:(Ljdk/tools/jaotc/collect/SourceProvider;)V
11: aconst_null
astore 8
start local 8 12: aload 7
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.files:Ljava/util/List;
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.searchPath:Ljdk/tools/jaotc/collect/SearchPath;
invokevirtual jdk.tools.jaotc.collect.ClassSearch.search:(Ljava/util/List;Ljdk/tools/jaotc/collect/SearchPath;)Ljava/util/List;
astore 8
13: goto 19
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer jdk.tools.jaotc.collect.FileSupport jdk.tools.jaotc.collect.ClassSearch java.util.List
StackMap stack: java.lang.InternalError
14: astore 9
start local 9 15: aload 0
aload 9
invokevirtual jdk.tools.jaotc.Main.reportError:(Ljava/lang/Throwable;)V
16: aload 5
ifnull 17
aload 5
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
17: StackMap locals: java.lang.InternalError
StackMap stack:
invokestatic jdk.tools.jaotc.Main.closeLog:()V
18: iconst_0
ireturn
end local 9 19: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 22
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer jdk.tools.jaotc.collect.FileSupport jdk.tools.jaotc.collect.ClassSearch java.util.List top java.util.Iterator
StackMap stack:
20: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.LoadedClass
astore 9
start local 9 21: aload 2
aload 9
invokevirtual jdk.tools.jaotc.LoadedClass.getLoadedClass:()Ljava/lang/Class;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 9 22: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
23: aload 0
new java.lang.StringBuilder
dup
aload 2
invokeinterface java.util.Set.size:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " classes found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printInfo:(Ljava/lang/String;)V
end local 8 end local 7 end local 6 24: aload 5
ifnull 30
aload 5
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 30
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
25: astore 3
aload 5
ifnull 26
aload 5
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 5 StackMap locals:
StackMap stack:
26: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
27: astore 4
aload 3
ifnonnull 28
aload 4
astore 3
goto 29
StackMap locals:
StackMap stack:
28: aload 3
aload 4
if_acmpeq 29
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
29: aload 3
athrow
30: StackMap locals:
StackMap stack:
invokestatic jdk.vm.ci.runtime.JVMCI.getRuntime:()Ljdk/vm/ci/runtime/JVMCIRuntime;
invokeinterface jdk.vm.ci.runtime.JVMCIRuntime.getCompiler:()Ljdk/vm/ci/runtime/JVMCICompiler;
checkcast org.graalvm.compiler.api.runtime.GraalJVMCICompiler
astore 3
start local 3 31: aload 3
invokeinterface org.graalvm.compiler.api.runtime.GraalJVMCICompiler.getGraalRuntime:()Lorg/graalvm/compiler/api/runtime/GraalRuntime;
checkcast org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider
astore 4
start local 4 32: aload 4
ldc Lorg/graalvm/compiler/runtime/RuntimeProvider;
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getCapability:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.graalvm.compiler.runtime.RuntimeProvider
invokeinterface org.graalvm.compiler.runtime.RuntimeProvider.getHostBackend:()Lorg/graalvm/compiler/core/target/Backend;
checkcast org.graalvm.compiler.hotspot.HotSpotHostBackend
astore 5
start local 5 33: aload 5
invokevirtual org.graalvm.compiler.hotspot.HotSpotHostBackend.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
astore 6
start local 6 34: new jdk.tools.jaotc.GraalFilters
dup
aload 6
invokespecial jdk.tools.jaotc.GraalFilters.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;)V
astore 7
start local 7 35: aconst_null
astore 9
aconst_null
astore 10
36: new jdk.tools.jaotc.utils.Timer
dup
aload 0
ldc ""
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 11
start local 11 37: aload 0
aload 2
aload 1
aload 7
aload 6
invokevirtual jdk.tools.jaotc.Main.collectMethodsToCompile:(Ljava/util/Set;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;Ljdk/vm/ci/meta/MetaAccessProvider;)Ljava/util/List;
astore 8
start local 8 38: aload 11
ifnull 44
aload 11
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 44
end local 8 StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters top java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
39: astore 9
aload 11
ifnull 40
aload 11
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 11 StackMap locals:
StackMap stack:
40: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
41: astore 10
aload 9
ifnonnull 42
aload 10
astore 9
goto 43
StackMap locals:
StackMap stack:
42: aload 9
aload 10
if_acmpeq 43
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
43: aload 9
athrow
start local 8 44: StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List
StackMap stack:
aconst_null
astore 9
aconst_null
astore 10
45: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.verbose:Z
ifeq 46
new jdk.tools.jaotc.utils.Timer
dup
aload 0
ldc "Freeing memory"
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
goto 47
StackMap locals: java.lang.Throwable java.lang.Throwable
StackMap stack:
46: aconst_null
StackMap locals:
StackMap stack: jdk.tools.jaotc.utils.Timer
47: astore 11
start local 11 48: aload 0
invokevirtual jdk.tools.jaotc.Main.printMemoryUsage:()V
49: aconst_null
astore 1
50: aconst_null
astore 2
51: invokestatic java.lang.System.gc:()V
52: aload 11
ifnull 58
aload 11
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 58
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
53: astore 9
aload 11
ifnull 54
aload 11
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 11 StackMap locals:
StackMap stack:
54: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
55: astore 10
aload 9
ifnonnull 56
aload 10
astore 9
goto 57
StackMap locals:
StackMap stack:
56: aload 9
aload 10
if_acmpeq 57
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
57: aload 9
athrow
58: StackMap locals:
StackMap stack:
new jdk.tools.jaotc.AOTBackend
dup
aload 0
aload 5
aload 7
invokespecial jdk.tools.jaotc.AOTBackend.<init>:(Ljdk/tools/jaotc/Main;Lorg/graalvm/compiler/hotspot/HotSpotBackend;Ljdk/tools/jaotc/GraalFilters;)V
astore 9
start local 9 59: new jdk.tools.jaotc.AOTCompiler
dup
aload 0
aload 9
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.threads:I
invokespecial jdk.tools.jaotc.AOTCompiler.<init>:(Ljdk/tools/jaotc/Main;Ljdk/tools/jaotc/AOTBackend;I)V
astore 10
start local 10 60: aload 10
aload 8
invokevirtual jdk.tools.jaotc.AOTCompiler.compileClasses:(Ljava/util/List;)Ljava/util/List;
astore 8
61: aload 4
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
astore 11
start local 11 62: aload 9
invokevirtual jdk.tools.jaotc.AOTBackend.getGraphBuilderSuite:()Lorg/graalvm/compiler/phases/PhaseSuite;
astore 12
start local 12 63: aload 12
ldc Lorg/graalvm/compiler/java/GraphBuilderPhase;
invokevirtual org.graalvm.compiler.phases.PhaseSuite.findPhase:(Ljava/lang/Class;)Ljava/util/ListIterator;
astore 13
start local 13 64: aload 13
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast org.graalvm.compiler.java.GraphBuilderPhase
invokevirtual org.graalvm.compiler.java.GraphBuilderPhase.getGraphBuilderConfig:()Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
astore 14
start local 14 65: aconst_null
astore 15
aconst_null
astore 16
66: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.verbose:Z
ifeq 67
new jdk.tools.jaotc.utils.Timer
dup
aload 0
ldc "Freeing memory"
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
goto 68
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration java.lang.Throwable java.lang.Throwable
StackMap stack:
67: aconst_null
StackMap locals:
StackMap stack: jdk.tools.jaotc.utils.Timer
68: astore 17
start local 17 69: aload 0
invokevirtual jdk.tools.jaotc.Main.printMemoryUsage:()V
70: aconst_null
astore 9
71: aconst_null
astore 10
72: invokestatic java.lang.System.gc:()V
73: aload 17
ifnull 79
aload 17
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 79
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
74: astore 15
aload 17
ifnull 75
aload 17
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 17 StackMap locals:
StackMap stack:
75: aload 15
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
76: astore 16
aload 15
ifnonnull 77
aload 16
astore 15
goto 78
StackMap locals:
StackMap stack:
77: aload 15
aload 16
if_acmpeq 78
aload 15
aload 16
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
78: aload 15
athrow
79: StackMap locals:
StackMap stack:
new jdk.tools.jaotc.binformat.BinaryContainer
dup
aload 11
aload 14
getstatic jdk.tools.jaotc.Main.JVM_VERSION:Ljava/lang/String;
invokespecial jdk.tools.jaotc.binformat.BinaryContainer.<init>:(Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;Ljava/lang/String;)V
astore 15
start local 15 80: new jdk.tools.jaotc.DataBuilder
dup
aload 0
aload 5
aload 8
aload 15
invokespecial jdk.tools.jaotc.DataBuilder.<init>:(Ljdk/tools/jaotc/Main;Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;Ljava/util/List;Ljdk/tools/jaotc/binformat/BinaryContainer;)V
astore 16
start local 16 81: aload 16
invokevirtual jdk.tools.jaotc.DataBuilder.prepareData:()V
82: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getHeaderContainer:()Ljdk/tools/jaotc/binformat/HeaderContainer;
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.getContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
83: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getConfigContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
84: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getKlassesOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
85: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodsOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
86: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getKlassesDependenciesContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
87: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getStubsOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
88: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodMetadataContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
89: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getCodeContainer:()Ljdk/tools/jaotc/binformat/CodeContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
90: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getCodeSegmentsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
91: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getConstantDataContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
92: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetaspaceGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
93: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetadataGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
94: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodStateContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
95: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getOopGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
96: aload 0
aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetaspaceNamesContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.Main.printContainerInfo:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
97: aconst_null
astore 17
aconst_null
astore 18
98: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.verbose:Z
ifeq 99
new jdk.tools.jaotc.utils.Timer
dup
aload 0
ldc "Freeing memory"
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
goto 100
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.DataBuilder java.lang.Throwable java.lang.Throwable
StackMap stack:
99: aconst_null
StackMap locals:
StackMap stack: jdk.tools.jaotc.utils.Timer
100: astore 19
start local 19 101: aload 0
invokevirtual jdk.tools.jaotc.Main.printMemoryUsage:()V
102: aconst_null
astore 5
103: aload 8
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 21
goto 106
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.DataBuilder java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer top java.util.Iterator
StackMap stack:
104: aload 21
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.AOTCompiledClass
astore 20
start local 20 105: aload 20
invokevirtual jdk.tools.jaotc.AOTCompiledClass.clear:()V
end local 20 106: StackMap locals:
StackMap stack:
aload 21
invokeinterface java.util.Iterator.hasNext:()Z
ifne 104
107: aload 8
invokeinterface java.util.List.clear:()V
108: aconst_null
astore 8
109: aconst_null
astore 16
110: aload 15
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.freeMemory:()V
111: invokestatic java.lang.System.gc:()V
112: aload 19
ifnull 118
aload 19
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 118
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.DataBuilder java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
113: astore 17
aload 19
ifnull 114
aload 19
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 19 StackMap locals:
StackMap stack:
114: aload 17
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
115: astore 18
aload 17
ifnonnull 116
aload 18
astore 17
goto 117
StackMap locals:
StackMap stack:
116: aload 17
aload 18
if_acmpeq 117
aload 17
aload 18
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
117: aload 17
athrow
118: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.outputName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".o"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 17
start local 17 119: new java.lang.StringBuilder
dup
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.outputName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".so"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 18
start local 18 120: aconst_null
astore 19
aconst_null
astore 20
121: new jdk.tools.jaotc.utils.Timer
dup
aload 0
new java.lang.StringBuilder
dup
ldc "Creating binary: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 17
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 21
start local 21 122: aload 15
aload 17
getstatic jdk.tools.jaotc.Main.JVM_VERSION:Ljava/lang/String;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.createBinary:(Ljava/lang/String;Ljava/lang/String;)V
123: aload 21
ifnull 129
aload 21
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 129
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.DataBuilder java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
124: astore 19
aload 21
ifnull 125
aload 21
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 21 StackMap locals:
StackMap stack:
125: aload 19
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
126: astore 20
aload 19
ifnonnull 127
aload 20
astore 19
goto 128
StackMap locals:
StackMap stack:
127: aload 19
aload 20
if_acmpeq 128
aload 19
aload 20
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
128: aload 19
athrow
129: StackMap locals:
StackMap stack:
aconst_null
astore 19
aconst_null
astore 20
130: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.verbose:Z
ifeq 131
new jdk.tools.jaotc.utils.Timer
dup
aload 0
ldc "Freeing memory"
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
goto 132
StackMap locals: java.lang.Throwable java.lang.Throwable
StackMap stack:
131: aconst_null
StackMap locals:
StackMap stack: jdk.tools.jaotc.utils.Timer
132: astore 21
start local 21 133: aload 0
invokevirtual jdk.tools.jaotc.Main.printMemoryUsage:()V
134: aconst_null
astore 15
135: invokestatic java.lang.System.gc:()V
136: aload 21
ifnull 142
aload 21
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 142
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.DataBuilder java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer
StackMap stack: java.lang.Throwable
137: astore 19
aload 21
ifnull 138
aload 21
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 21 StackMap locals:
StackMap stack:
138: aload 19
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
139: astore 20
aload 19
ifnonnull 140
aload 20
astore 19
goto 141
StackMap locals:
StackMap stack:
140: aload 19
aload 20
if_acmpeq 141
aload 19
aload 20
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
141: aload 19
athrow
142: StackMap locals:
StackMap stack:
aconst_null
astore 19
aconst_null
astore 20
143: new jdk.tools.jaotc.utils.Timer
dup
aload 0
new java.lang.StringBuilder
dup
ldc "Creating shared library: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 18
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial jdk.tools.jaotc.utils.Timer.<init>:(Ljdk/tools/jaotc/Main;Ljava/lang/String;)V
astore 21
start local 21 144: invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
new java.lang.StringBuilder
dup
ldc "ld -shared -z noexecstack -o "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 18
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 17
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.Runtime.exec:(Ljava/lang/String;)Ljava/lang/Process;
astore 22
start local 22 145: aload 22
invokevirtual java.lang.Process.waitFor:()I
istore 23
start local 23 146: iload 23
ifeq 153
147: aload 22
invokevirtual java.lang.Process.getErrorStream:()Ljava/io/InputStream;
astore 24
start local 24 148: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 24
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 25
start local 25 149: aload 25
invokevirtual java.io.BufferedReader.lines:()Ljava/util/stream/Stream;
astore 26
start local 26 150: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 27
start local 27 151: aload 26
invokeinterface java.util.stream.Stream.iterator:()Ljava/util/Iterator;
aload 27
invokedynamic accept(Ljava/lang/StringBuilder;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
jdk/tools/jaotc/Main.lambda$0(Ljava/lang/StringBuilder;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.Iterator.forEachRemaining:(Ljava/util/function/Consumer;)V
152: new java.lang.InternalError
dup
aload 27
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 27 end local 26 end local 25 end local 24 153: StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.util.Set org.graalvm.compiler.api.runtime.GraalJVMCICompiler org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider org.graalvm.compiler.hotspot.HotSpotHostBackend jdk.vm.ci.meta.MetaAccessProvider jdk.tools.jaotc.GraalFilters java.util.List jdk.tools.jaotc.AOTBackend jdk.tools.jaotc.AOTCompiler org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.phases.PhaseSuite java.util.ListIterator org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.DataBuilder java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable jdk.tools.jaotc.utils.Timer java.lang.Process int
StackMap stack:
new java.io.File
dup
aload 17
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 24
start local 24 154: aload 24
invokevirtual java.io.File.exists:()Z
ifeq 157
155: aload 24
invokevirtual java.io.File.delete:()Z
ifne 157
156: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Failed to delete "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 17
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " file"
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
157: StackMap locals: java.io.File
StackMap stack:
new java.io.File
dup
aload 18
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 25
start local 25 158: aload 25
invokevirtual java.io.File.exists:()Z
ifeq 161
159: aload 25
iconst_0
iconst_0
invokevirtual java.io.File.setExecutable:(ZZ)Z
ifne 161
160: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Failed to change attribute for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 18
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " file"
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 25 end local 24 end local 23 end local 22 161: StackMap locals:
StackMap stack:
aload 21
ifnull 167
aload 21
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
goto 167
StackMap locals:
StackMap stack: java.lang.Throwable
162: astore 19
aload 21
ifnull 163
aload 21
invokevirtual jdk.tools.jaotc.utils.Timer.close:()V
end local 21 StackMap locals:
StackMap stack:
163: aload 19
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
164: astore 20
aload 19
ifnonnull 165
aload 20
astore 19
goto 166
StackMap locals:
StackMap stack:
165: aload 19
aload 20
if_acmpeq 166
aload 19
aload 20
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
166: aload 19
athrow
167: StackMap locals:
StackMap stack:
aload 0
ldc "Final memory "
invokevirtual jdk.tools.jaotc.Main.printVerbose:(Ljava/lang/String;)V
168: aload 0
invokevirtual jdk.tools.jaotc.Main.printMemoryUsage:()V
169: aload 0
ldc ""
invokevirtual jdk.tools.jaotc.Main.printlnVerbose:(Ljava/lang/String;)V
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 5 end local 4 end local 3 end local 2 end local 1 170: goto 174
StackMap locals: jdk.tools.jaotc.Main
StackMap stack: java.lang.Throwable
171: astore 28
172: invokestatic jdk.tools.jaotc.Main.closeLog:()V
173: aload 28
athrow
174: StackMap locals:
StackMap stack:
invokestatic jdk.tools.jaotc.Main.closeLog:()V
175: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 176 0 this Ljdk/tools/jaotc/Main;
2 170 1 compilationRestrictions Ljdk/tools/jaotc/CompilationSpec;
3 170 2 classesToCompile Ljava/util/Set<Ljava/lang/Class<*>;>;
5 26 5 t Ljdk/tools/jaotc/utils/Timer;
6 24 6 fileSupport Ljdk/tools/jaotc/collect/FileSupport;
7 24 7 lookup Ljdk/tools/jaotc/collect/ClassSearch;
12 24 8 found Ljava/util/List<Ljdk/tools/jaotc/LoadedClass;>;
15 19 9 e Ljava/lang/InternalError;
21 22 9 loadedClass Ljdk/tools/jaotc/LoadedClass;
31 170 3 graalCompiler Lorg/graalvm/compiler/api/runtime/GraalJVMCICompiler;
32 170 4 runtime Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
33 170 5 backend Lorg/graalvm/compiler/hotspot/HotSpotHostBackend;
34 170 6 metaAccess Ljdk/vm/ci/meta/MetaAccessProvider;
35 170 7 filters Ljdk/tools/jaotc/GraalFilters;
38 39 8 classes Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
44 170 8 classes Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
37 40 11 t Ljdk/tools/jaotc/utils/Timer;
48 54 11 t Ljdk/tools/jaotc/utils/Timer;
59 170 9 aotBackend Ljdk/tools/jaotc/AOTBackend;
60 170 10 compiler Ljdk/tools/jaotc/AOTCompiler;
62 170 11 graalHotSpotVMConfig Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
63 170 12 graphBuilderSuite Lorg/graalvm/compiler/phases/PhaseSuite<Lorg/graalvm/compiler/phases/tiers/HighTierContext;>;
64 170 13 iterator Ljava/util/ListIterator<Lorg/graalvm/compiler/phases/BasePhase<-Lorg/graalvm/compiler/phases/tiers/HighTierContext;>;>;
65 170 14 graphBuilderConfig Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
69 75 17 t Ljdk/tools/jaotc/utils/Timer;
80 170 15 binaryContainer Ljdk/tools/jaotc/binformat/BinaryContainer;
81 170 16 dataBuilder Ljdk/tools/jaotc/DataBuilder;
101 114 19 t Ljdk/tools/jaotc/utils/Timer;
105 106 20 aotCompClass Ljdk/tools/jaotc/AOTCompiledClass;
119 170 17 objectFileName Ljava/lang/String;
120 170 18 libraryFileName Ljava/lang/String;
122 125 21 t Ljdk/tools/jaotc/utils/Timer;
133 138 21 t Ljdk/tools/jaotc/utils/Timer;
144 163 21 t Ljdk/tools/jaotc/utils/Timer;
145 161 22 p Ljava/lang/Process;
146 161 23 exitCode I
148 153 24 stderr Ljava/io/InputStream;
149 153 25 br Ljava/io/BufferedReader;
150 153 26 lines Ljava/util/stream/Stream<Ljava/lang/String;>;
151 153 27 sb Ljava/lang/StringBuilder;
154 161 24 objFile Ljava/io/File;
158 161 25 libFile Ljava/io/File;
Exception table:
from to target type
12 13 14 Class java.lang.InternalError
5 16 25 any
19 24 25 any
4 17 27 any
19 27 27 any
37 38 39 any
36 41 41 any
48 52 53 any
45 55 55 any
69 73 74 any
66 76 76 any
101 112 113 any
98 115 115 any
122 123 124 any
121 126 126 any
133 136 137 any
130 139 139 any
144 161 162 any
143 164 164 any
1 17 171 any
19 171 171 any
Exceptions:
throws java.lang.Exception
private void addMethods(jdk.tools.jaotc.AOTCompiledClass, jdk.vm.ci.meta.ResolvedJavaMethod[], jdk.tools.jaotc.CompilationSpec, jdk.tools.jaotc.GraalFilters);
descriptor: (Ljdk/tools/jaotc/AOTCompiledClass;[Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 4
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.AOTCompiledClass jdk.vm.ci.meta.ResolvedJavaMethod[] jdk.tools.jaotc.CompilationSpec jdk.tools.jaotc.GraalFilters top int int jdk.vm.ci.meta.ResolvedJavaMethod[]
StackMap stack:
1: aload 8
iload 6
aaload
astore 5
start local 5 2: aload 0
aload 1
aload 5
aload 3
aload 4
invokevirtual jdk.tools.jaotc.Main.addMethod:(Ljdk/tools/jaotc/AOTCompiledClass;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;)V
end local 5 3: iinc 6 1
StackMap locals:
StackMap stack:
4: iload 6
iload 7
if_icmplt 1
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jaotc/Main;
0 6 1 aotClass Ljdk/tools/jaotc/AOTCompiledClass;
0 6 2 methods [Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 6 3 compilationRestrictions Ljdk/tools/jaotc/CompilationSpec;
0 6 4 filters Ljdk/tools/jaotc/GraalFilters;
2 3 5 m Ljdk/vm/ci/meta/ResolvedJavaMethod;
MethodParameters:
Name Flags
aotClass
methods
compilationRestrictions
filters
private void addMethod(jdk.tools.jaotc.AOTCompiledClass, jdk.vm.ci.meta.ResolvedJavaMethod, jdk.tools.jaotc.CompilationSpec, jdk.tools.jaotc.GraalFilters);
descriptor: (Ljdk/tools/jaotc/AOTCompiledClass;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.hasBytecodes:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 3
aload 2
invokevirtual jdk.tools.jaotc.CompilationSpec.shouldCompileMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Z
ifne 4
3: return
4: StackMap locals:
StackMap stack:
aload 4
aload 2
invokevirtual jdk.tools.jaotc.GraalFilters.shouldCompileMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Z
ifne 6
5: return
6: StackMap locals:
StackMap stack:
aload 1
aload 2
invokevirtual jdk.tools.jaotc.AOTCompiledClass.addMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
7: aload 0
new java.lang.StringBuilder
dup
ldc " added "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
invokeinterface jdk.vm.ci.meta.Signature.toMethodDescriptor:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printlnVerbose:(Ljava/lang/String;)V
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/tools/jaotc/Main;
0 9 1 aotClass Ljdk/tools/jaotc/AOTCompiledClass;
0 9 2 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 9 3 compilationRestrictions Ljdk/tools/jaotc/CompilationSpec;
0 9 4 filters Ljdk/tools/jaotc/GraalFilters;
MethodParameters:
Name Flags
aotClass
method
compilationRestrictions
filters
private void printContainerInfo(jdk.tools.jaotc.binformat.ByteContainer);
descriptor: (Ljdk/tools/jaotc/binformat/ByteContainer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new java.lang.StringBuilder
dup
aload 1
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getContainerName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteStreamSize:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bytes"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printlnVerbose:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/Main;
0 2 1 container Ljdk/tools/jaotc/binformat/ByteContainer;
MethodParameters:
Name Flags
container
private void handleOptions(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=2
start local 0 start local 1 0: aload 1
arraylength
ifne 3
1: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
iconst_1
putfield jdk.tools.jaotc.Main$Options.help:Z
2: return
3: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 4: goto 22
5: StackMap locals: int
StackMap stack:
aload 1
iload 2
aaload
astore 3
start local 3 6: aload 3
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 20
7: aload 3
invokestatic jdk.tools.jaotc.Main.getOption:(Ljava/lang/String;)Ljdk/tools/jaotc/Main$Option;
astore 4
start local 4 8: aconst_null
astore 5
start local 5 9: aload 4
getfield jdk.tools.jaotc.Main$Option.hasArg:Z
ifeq 17
10: aload 3
ldc "--"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 13
aload 3
bipush 61
invokevirtual java.lang.String.indexOf:(I)I
ifle 13
11: aload 3
aload 3
bipush 61
invokevirtual java.lang.String.indexOf:(I)I
iconst_1
iadd
aload 3
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 5
12: goto 15
StackMap locals: java.lang.String jdk.tools.jaotc.Main$Option java.lang.String
StackMap stack:
13: iload 2
iconst_1
iadd
aload 1
arraylength
if_icmpge 15
14: aload 1
iinc 2 1
iload 2
aaload
astore 5
15: StackMap locals:
StackMap stack:
aload 5
ifnull 16
aload 5
invokevirtual java.lang.String.isEmpty:()Z
ifne 16
aload 5
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 17
16: StackMap locals:
StackMap stack:
new jdk.tools.jaotc.Main$BadArgs
dup
ldc "missing argument for option: {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokespecial jdk.tools.jaotc.Main$BadArgs.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
iconst_1
invokevirtual jdk.tools.jaotc.Main$BadArgs.showUsage:(Z)Ljdk/tools/jaotc/Main$BadArgs;
athrow
17: StackMap locals:
StackMap stack:
aload 4
aload 0
aload 3
aload 5
invokevirtual jdk.tools.jaotc.Main$Option.process:(Ljdk/tools/jaotc/Main;Ljava/lang/String;Ljava/lang/String;)V
18: aload 4
invokevirtual jdk.tools.jaotc.Main$Option.ignoreRest:()Z
ifeq 21
19: goto 23
end local 5 end local 4 20: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.files:Ljava/util/List;
new jdk.tools.jaotc.collect.SearchFor
dup
aload 3
invokespecial jdk.tools.jaotc.collect.SearchFor.<init>:(Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 21: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
22: iload 2
aload 1
arraylength
if_icmplt 5
23: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljdk/tools/jaotc/Main;
0 24 1 args [Ljava/lang/String;
4 24 2 i I
6 21 3 arg Ljava/lang/String;
8 20 4 option Ljdk/tools/jaotc/Main$Option;
9 20 5 param Ljava/lang/String;
Exceptions:
throws jdk.tools.jaotc.Main$BadArgs
MethodParameters:
Name Flags
args
private static jdk.tools.jaotc.Main$Option getOption(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/tools/jaotc/Main$Option;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=5, args_size=1
start local 0 0: getstatic jdk.tools.jaotc.Main.recognizedOptions:[Ljdk/tools/jaotc/Main$Option;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 5
StackMap locals: java.lang.String top int int jdk.tools.jaotc.Main$Option[]
StackMap stack:
1: aload 4
iload 2
aaload
astore 1
start local 1 2: aload 1
aload 0
invokevirtual jdk.tools.jaotc.Main$Option.matches:(Ljava/lang/String;)Z
ifeq 4
3: aload 1
areturn
end local 1 4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
iload 3
if_icmplt 1
6: new jdk.tools.jaotc.Main$BadArgs
dup
ldc "unknown option: {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokespecial jdk.tools.jaotc.Main$BadArgs.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
iconst_1
invokevirtual jdk.tools.jaotc.Main$BadArgs.showUsage:(Z)Ljdk/tools/jaotc/Main$BadArgs;
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 name Ljava/lang/String;
2 4 1 o Ljdk/tools/jaotc/Main$Option;
Exceptions:
throws jdk.tools.jaotc.Main$BadArgs
MethodParameters:
Name Flags
name
public void printInfo(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.info:Z
ifeq 3
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/Main;
0 4 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void printlnInfo(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.info:Z
ifeq 3
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/Main;
0 4 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void printVerbose(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.verbose:Z
ifeq 3
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/Main;
0 4 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void printlnVerbose(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.verbose:Z
ifeq 3
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/Main;
0 4 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void printDebug(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.debug:Z
ifeq 3
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/Main;
0 4 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void printlnDebug(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.debug:Z
ifeq 3
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jaotc/Main;
0 4 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public void printError(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
new java.lang.StringBuilder
dup
ldc "Error: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/tools/jaotc/Main;
0 3 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
private void reportError(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
new java.lang.StringBuilder
dup
ldc "Error: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.info:Z
ifeq 3
2: aload 1
aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
3: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jaotc/Main;
0 5 1 e Ljava/lang/Throwable;
MethodParameters:
Name Flags
e
private void reportError(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printError:(Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/Main;
0 2 1 key Ljava/lang/String;
0 2 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
key
args
private void warning(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
new java.lang.StringBuilder
dup
ldc "Warning: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
aload 2
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/tools/jaotc/Main;
0 3 1 key Ljava/lang/String;
0 3 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
key
args
private void showUsage();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ldc "Usage: jaotc <options> list"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ldc "use --help for a list of possible options"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/tools/jaotc/Main;
private void showHelp();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ldc "Usage: jaotc <options> list"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.println:()V
2: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ldc " list A : separated list of class names, modules, jar files"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
3: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ldc " or directories which contain class files."
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
4: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.println:()V
5: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
ldc "where options include:"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
6: getstatic jdk.tools.jaotc.Main.recognizedOptions:[Ljdk/tools/jaotc/Main$Option;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 16
StackMap locals: jdk.tools.jaotc.Main top int int jdk.tools.jaotc.Main$Option[]
StackMap stack:
7: aload 4
iload 2
aaload
astore 1
start local 1 8: aload 1
getfield jdk.tools.jaotc.Main$Option.aliases:[Ljava/lang/String;
iconst_0
aaload
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 5
start local 5 9: aload 5
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 10
aload 5
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
goto 11
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.Main$Option int int jdk.tools.jaotc.Main$Option[] java.lang.String
StackMap stack:
10: aload 5
StackMap locals:
StackMap stack: java.lang.String
11: astore 5
12: aload 1
invokevirtual jdk.tools.jaotc.Main$Option.isHidden:()Z
ifne 15
aload 5
ldc "h"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: goto 15
14: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
aload 1
getfield jdk.tools.jaotc.Main$Option.help:Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 5 end local 1 15: StackMap locals: jdk.tools.jaotc.Main top int int jdk.tools.jaotc.Main$Option[]
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
16: iload 2
iload 3
if_icmplt 7
17: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Ljdk/tools/jaotc/Main;
8 15 1 o Ljdk/tools/jaotc/Main$Option;
9 15 5 name Ljava/lang/String;
private void showVersion();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jaotc.Main.log:Ljava/io/PrintWriter;
new java.lang.StringBuilder
dup
ldc "jaotc "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic jdk.tools.jaotc.Main.JVM_VERSION:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/Main;
private java.util.List<jdk.tools.jaotc.AOTCompiledClass> collectMethodsToCompile(java.util.Set<java.lang.Class<?>>, jdk.tools.jaotc.CompilationSpec, jdk.tools.jaotc.GraalFilters, jdk.vm.ci.meta.MetaAccessProvider);
descriptor: (Ljava/util/Set;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;Ljdk/vm/ci/meta/MetaAccessProvider;)Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: iconst_0
istore 6
start local 6 2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 7
start local 7 3: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 9
goto 40
StackMap locals: jdk.tools.jaotc.Main java.util.Set jdk.tools.jaotc.CompilationSpec jdk.tools.jaotc.GraalFilters jdk.vm.ci.meta.MetaAccessProvider int int java.util.List top java.util.Iterator
StackMap stack:
4: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Class
astore 8
start local 8 5: aload 4
aload 8
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
astore 10
start local 10 6: aload 3
aload 10
invokevirtual jdk.tools.jaotc.GraalFilters.shouldCompileAnyMethodInClass:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
ifeq 40
7: new jdk.tools.jaotc.AOTCompiledClass
dup
aload 10
invokespecial jdk.tools.jaotc.AOTCompiledClass.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;)V
astore 11
start local 11 8: aload 0
new java.lang.StringBuilder
dup
ldc " Scanning "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printlnVerbose:(Ljava/lang/String;)V
9: aload 10
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getDeclaredConstructors:()[Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 12
start local 12 10: aload 0
aload 11
aload 12
aload 2
aload 3
invokevirtual jdk.tools.jaotc.Main.addMethods:(Ljdk/tools/jaotc/AOTCompiledClass;[Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;)V
11: iload 5
aload 12
arraylength
iadd
istore 5
end local 12 12: goto 18
StackMap locals: jdk.tools.jaotc.Main java.util.Set jdk.tools.jaotc.CompilationSpec jdk.tools.jaotc.GraalFilters jdk.vm.ci.meta.MetaAccessProvider int int java.util.List java.lang.Class java.util.Iterator jdk.vm.ci.meta.ResolvedJavaType jdk.tools.jaotc.AOTCompiledClass
StackMap stack: java.lang.Throwable
13: astore 12
start local 12 14: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.ignoreClassLoadingErrors:Z
ifeq 17
15: aload 0
new java.lang.StringBuilder
dup
aload 8
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printError:(Ljava/lang/String;)V
16: goto 18
17: StackMap locals: java.lang.Throwable
StackMap stack:
new java.lang.InternalError
dup
aload 12
invokespecial java.lang.InternalError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 12 18: StackMap locals:
StackMap stack:
aload 10
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getDeclaredMethods:()[Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 12
start local 12 19: aload 0
aload 11
aload 12
aload 2
aload 3
invokevirtual jdk.tools.jaotc.Main.addMethods:(Ljdk/tools/jaotc/AOTCompiledClass;[Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;)V
20: iload 5
aload 12
arraylength
iadd
istore 5
end local 12 21: goto 27
StackMap locals:
StackMap stack: java.lang.Throwable
22: astore 12
start local 12 23: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.ignoreClassLoadingErrors:Z
ifeq 26
24: aload 0
new java.lang.StringBuilder
dup
aload 8
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printError:(Ljava/lang/String;)V
25: goto 27
26: StackMap locals: java.lang.Throwable
StackMap stack:
new java.lang.InternalError
dup
aload 12
invokespecial java.lang.InternalError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 12 27: StackMap locals:
StackMap stack:
aload 10
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getClassInitializer:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 12
start local 12 28: aload 12
ifnull 37
29: aload 0
aload 11
aload 12
aload 2
aload 3
invokevirtual jdk.tools.jaotc.Main.addMethod:(Ljdk/tools/jaotc/AOTCompiledClass;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;)V
30: iinc 5 1
end local 12 31: goto 37
StackMap locals:
StackMap stack: java.lang.Throwable
32: astore 12
start local 12 33: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.ignoreClassLoadingErrors:Z
ifeq 36
34: aload 0
new java.lang.StringBuilder
dup
aload 8
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printError:(Ljava/lang/String;)V
35: goto 37
36: StackMap locals: java.lang.Throwable
StackMap stack:
new java.lang.InternalError
dup
aload 12
invokespecial java.lang.InternalError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 12 37: StackMap locals:
StackMap stack:
aload 11
invokevirtual jdk.tools.jaotc.AOTCompiledClass.hasMethods:()Z
ifeq 40
38: aload 7
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
39: iload 6
aload 11
invokevirtual jdk.tools.jaotc.AOTCompiledClass.getMethodCount:()I
iadd
istore 6
end local 11 end local 10 end local 8 40: StackMap locals: jdk.tools.jaotc.Main java.util.Set jdk.tools.jaotc.CompilationSpec jdk.tools.jaotc.GraalFilters jdk.vm.ci.meta.MetaAccessProvider int int java.util.List top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
41: aload 0
new java.lang.StringBuilder
dup
iload 5
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " methods total, "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " methods to compile"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.tools.jaotc.Main.printInfo:(Ljava/lang/String;)V
42: aload 7
areturn
end local 7 end local 6 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 43 0 this Ljdk/tools/jaotc/Main;
0 43 1 classesToCompile Ljava/util/Set<Ljava/lang/Class<*>;>;
0 43 2 compilationRestrictions Ljdk/tools/jaotc/CompilationSpec;
0 43 3 filters Ljdk/tools/jaotc/GraalFilters;
0 43 4 metaAccess Ljdk/vm/ci/meta/MetaAccessProvider;
1 43 5 total I
2 43 6 count I
3 43 7 classes Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
5 40 8 c Ljava/lang/Class<*>;
6 40 10 resolvedJavaType Ljdk/vm/ci/meta/ResolvedJavaType;
8 40 11 aotClass Ljdk/tools/jaotc/AOTCompiledClass;
10 12 12 ctors [Ljdk/vm/ci/meta/ResolvedJavaMethod;
14 18 12 e Ljava/lang/Throwable;
19 21 12 methods [Ljdk/vm/ci/meta/ResolvedJavaMethod;
23 27 12 e Ljava/lang/Throwable;
28 31 12 clinit Ljdk/vm/ci/meta/ResolvedJavaMethod;
33 37 12 e Ljava/lang/Throwable;
Exception table:
from to target type
9 12 13 Class java.lang.Throwable
18 21 22 Class java.lang.Throwable
27 31 32 Class java.lang.Throwable
Signature: (Ljava/util/Set<Ljava/lang/Class<*>;>;Ljdk/tools/jaotc/CompilationSpec;Ljdk/tools/jaotc/GraalFilters;Ljdk/vm/ci/meta/MetaAccessProvider;)Ljava/util/List<Ljdk/tools/jaotc/AOTCompiledClass;>;
MethodParameters:
Name Flags
classesToCompile
compilationRestrictions
filters
metaAccess
private jdk.tools.jaotc.CompilationSpec collectSpecifiedMethods();
descriptor: ()Ljdk/tools/jaotc/CompilationSpec;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=11, args_size=1
start local 0 0: new jdk.tools.jaotc.CompilationSpec
dup
invokespecial jdk.tools.jaotc.CompilationSpec.<init>:()V
astore 1
start local 1 1: aload 0
getfield jdk.tools.jaotc.Main.options:Ljdk/tools/jaotc/Main$Options;
getfield jdk.tools.jaotc.Main$Options.methodList:Ljava/lang/String;
astore 2
start local 2 2: aload 2
ifnull 31
aload 2
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 31
3: new java.io.FileReader
dup
aload 2
invokespecial java.io.FileReader.<init>:(Ljava/lang/String;)V
astore 3
start local 3 4: new java.io.BufferedReader
dup
aload 3
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 4
start local 4 5: aconst_null
astore 5
start local 5 6: goto 24
7: StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.lang.String java.io.FileReader java.io.BufferedReader java.lang.String
StackMap stack:
aload 5
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 6
start local 6 8: aload 6
ldc "#"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 24
9: aload 6
ldc " "
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 7
start local 7 10: aload 7
arraylength
iconst_2
if_icmpne 22
11: aload 7
iconst_0
aaload
astore 8
start local 8 12: aload 7
iconst_1
aaload
astore 9
start local 9 13: aload 8
dup
astore 10
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 2
-2074174337: 14
-1321148966: 15
default: 20
}
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.lang.String java.io.FileReader java.io.BufferedReader java.lang.String java.lang.String java.lang.String[] java.lang.String java.lang.String java.lang.String
StackMap stack:
14: aload 10
ldc "compileOnly"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 16
goto 20
StackMap locals:
StackMap stack:
15: aload 10
ldc "exclude"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 18
goto 20
16: StackMap locals:
StackMap stack:
aload 1
aload 9
invokevirtual jdk.tools.jaotc.CompilationSpec.addCompileOnlyPattern:(Ljava/lang/String;)V
17: goto 24
18: StackMap locals:
StackMap stack:
aload 1
aload 9
invokevirtual jdk.tools.jaotc.CompilationSpec.addExcludePattern:(Ljava/lang/String;)V
19: goto 24
20: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Unrecognized command "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ". Ignoring\n\t"
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 "\n encountered in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 9 end local 8 21: goto 24
22: StackMap locals:
StackMap stack:
aload 6
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 24
23: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Ignoring malformed line:\n\t "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 7 end local 6 24: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
dup
astore 5
ifnonnull 7
25: aload 4
invokevirtual java.io.BufferedReader.close:()V
end local 5 end local 4 end local 3 26: goto 31
StackMap locals: jdk.tools.jaotc.Main jdk.tools.jaotc.CompilationSpec java.lang.String
StackMap stack: java.io.FileNotFoundException
27: astore 3
start local 3 28: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Unable to open method list file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 29: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 30: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Unable to read method list file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 31: StackMap locals:
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Ljdk/tools/jaotc/Main;
1 32 1 compilationRestrictions Ljdk/tools/jaotc/CompilationSpec;
2 32 2 methodListFileName Ljava/lang/String;
4 26 3 methListFile Ljava/io/FileReader;
5 26 4 readBuf Ljava/io/BufferedReader;
6 26 5 line Ljava/lang/String;
8 24 6 trimmedLine Ljava/lang/String;
10 24 7 components [Ljava/lang/String;
12 21 8 directive Ljava/lang/String;
13 21 9 pattern Ljava/lang/String;
28 29 3 e Ljava/io/FileNotFoundException;
30 31 3 e Ljava/io/IOException;
Exception table:
from to target type
3 26 27 Class java.io.FileNotFoundException
3 26 29 Class java.io.IOException
private static void openLog();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=0
0: ldc "jdk.tools.jaotc.logCompilation"
iconst_0
invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
istore 0
start local 0 1: iload 0
ifne 4
2: aconst_null
putstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
3: return
4: StackMap locals: int
StackMap stack:
new java.lang.StringBuilder
dup
ldc "aot_compilation"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
invokevirtual java.util.Date.getTime:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc ".log"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
start local 1 5: ldc "./"
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 1
aastore
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 2
start local 2 6: aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 3
start local 3 7: new java.io.FileWriter
dup
aload 3
iconst_0
invokespecial java.io.FileWriter.<init>:(Ljava/lang/String;Z)V
putstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
8: goto 12
StackMap locals: int java.lang.String java.nio.file.Path java.lang.String
StackMap stack: java.io.IOException
9: pop
10: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Unable to open logfile :"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\nNo logs will be created"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
11: aconst_null
putstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
12: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 13 0 v I
5 13 1 fileName Ljava/lang/String;
6 13 2 logFilePath Ljava/nio/file/Path;
7 13 3 logFileName Ljava/lang/String;
Exception table:
from to target type
7 8 9 Class java.io.IOException
public static void writeLog(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
ifnull 6
1: getstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.FileWriter.write:(Ljava/lang/String;)V
2: getstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
invokevirtual java.io.FileWriter.flush:()V
3: goto 6
StackMap locals:
StackMap stack: java.io.IOException
4: pop
5: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 str Ljava/lang/String;
Exception table:
from to target type
1 3 4 Class java.io.IOException
MethodParameters:
Name Flags
str
public static void closeLog();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
ifnull 4
1: getstatic jdk.tools.jaotc.Main.logFile:Ljava/io/FileWriter;
invokevirtual java.io.FileWriter.close:()V
2: goto 4
StackMap locals:
StackMap stack: java.io.IOException
3: pop
4: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
1 2 3 Class java.io.IOException
private static void lambda$0(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 e Ljava/lang/String;
}
SourceFile: "Main.java"
NestMembers:
jdk.tools.jaotc.Main$1 jdk.tools.jaotc.Main$10 jdk.tools.jaotc.Main$11 jdk.tools.jaotc.Main$12 jdk.tools.jaotc.Main$13 jdk.tools.jaotc.Main$14 jdk.tools.jaotc.Main$15 jdk.tools.jaotc.Main$16 jdk.tools.jaotc.Main$17 jdk.tools.jaotc.Main$18 jdk.tools.jaotc.Main$2 jdk.tools.jaotc.Main$3 jdk.tools.jaotc.Main$4 jdk.tools.jaotc.Main$5 jdk.tools.jaotc.Main$6 jdk.tools.jaotc.Main$7 jdk.tools.jaotc.Main$8 jdk.tools.jaotc.Main$9 jdk.tools.jaotc.Main$BadArgs jdk.tools.jaotc.Main$Option jdk.tools.jaotc.Main$Options
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
jdk.tools.jaotc.Main$1
jdk.tools.jaotc.Main$10
jdk.tools.jaotc.Main$11
jdk.tools.jaotc.Main$12
jdk.tools.jaotc.Main$13
jdk.tools.jaotc.Main$14
jdk.tools.jaotc.Main$15
jdk.tools.jaotc.Main$16
jdk.tools.jaotc.Main$17
jdk.tools.jaotc.Main$18
jdk.tools.jaotc.Main$2
jdk.tools.jaotc.Main$3
jdk.tools.jaotc.Main$4
jdk.tools.jaotc.Main$5
jdk.tools.jaotc.Main$6
jdk.tools.jaotc.Main$7
jdk.tools.jaotc.Main$8
jdk.tools.jaotc.Main$9
BadArgs = jdk.tools.jaotc.Main$BadArgs of jdk.tools.jaotc.Main
abstract Option = jdk.tools.jaotc.Main$Option of jdk.tools.jaotc.Main
public Options = jdk.tools.jaotc.Main$Options of jdk.tools.jaotc.Main