public abstract class org.graalvm.compiler.core.CompilationWrapper<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.core.CompilationWrapper
  super_class: java.lang.Object
{
  private final org.graalvm.compiler.debug.DiagnosticsOutputDirectory outputDirectory;
    descriptor: Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<org.graalvm.compiler.core.CompilationWrapper$ExceptionAction, java.lang.Integer> problemsHandledPerAction;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;Ljava/lang/Integer;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 59
            ldc Lorg/graalvm/compiler/core/CompilationWrapper;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.core.CompilationWrapper.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.debug.DiagnosticsOutputDirectory, java.util.Map<org.graalvm.compiler.core.CompilationWrapper$ExceptionAction, java.lang.Integer>);
    descriptor: (Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.debug.DiagnosticsOutputDirectory outputDirectory
        start local 2 // java.util.Map problemsHandledPerAction
         0: .line 114
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 115
            aload 0 /* this */
            aload 1 /* outputDirectory */
            putfield org.graalvm.compiler.core.CompilationWrapper.outputDirectory:Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
         2: .line 116
            aload 0 /* this */
            aload 2 /* problemsHandledPerAction */
            putfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
         3: .line 117
            return
        end local 2 // java.util.Map problemsHandledPerAction
        end local 1 // org.graalvm.compiler.debug.DiagnosticsOutputDirectory outputDirectory
        end local 0 // org.graalvm.compiler.core.CompilationWrapper this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    4     0                      this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0    4     1           outputDirectory  Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
            0    4     2  problemsHandledPerAction  Ljava/util/Map<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;Ljava/lang/Integer;>;
    Signature: (Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;Ljava/util/Map<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;Ljava/lang/Integer;>;)V
    MethodParameters:
                          Name  Flags
      outputDirectory           
      problemsHandledPerAction  

  protected abstract T handleException(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)Ljava/lang/Object;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Ljava/lang/Throwable;)TT;
    MethodParameters:
      Name  Flags
      t     

  protected org.graalvm.compiler.core.CompilationWrapper$ExceptionAction lookupAction(org.graalvm.compiler.options.OptionValues, java.lang.Throwable);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Throwable;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.options.OptionValues options
        start local 2 // java.lang.Throwable cause
         0: .line 138
            aload 2 /* cause */
            instanceof jdk.vm.ci.code.BailoutException
            ifeq 2
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationBailoutAsFailure:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 2
         1: .line 139
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            areturn
         2: .line 141
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.ExitVMOnException:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 11
         3: .line 142
            getstatic org.graalvm.compiler.core.CompilationWrapper.$assertionsDisabled:Z
            ifne 4
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getDefaultValue:()Ljava/lang/Object;
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 143
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.CompilationWrapper.$assertionsDisabled:Z
            ifne 5
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.ExitVMOnException:Lorg/graalvm/compiler/options/OptionKey;
            invokevirtual org.graalvm.compiler.options.OptionKey.getDefaultValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 144
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.hasBeenSet:(Lorg/graalvm/compiler/options/OptionValues;)Z
            ifeq 10
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpeq 10
         6: .line 145
            ldc "WARNING: Ignoring %s=%s since %s=true has been explicitly specified.%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
         7: .line 146
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            aastore
            dup
            iconst_2
         8: .line 147
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.ExitVMOnException:Lorg/graalvm/compiler/options/OptionKey;
            invokevirtual org.graalvm.compiler.options.OptionKey.getName:()Ljava/lang/String;
            aastore
         9: .line 145
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        10: .line 149
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            areturn
        11: .line 151
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.CompilationWrapper$ExceptionAction
            areturn
        end local 2 // java.lang.Throwable cause
        end local 1 // org.graalvm.compiler.options.OptionValues options
        end local 0 // org.graalvm.compiler.core.CompilationWrapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0   12     1  options  Lorg/graalvm/compiler/options/OptionValues;
            0   12     2    cause  Ljava/lang/Throwable;
    Signature: (Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Throwable;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    MethodParameters:
         Name  Flags
      options  
      cause    

  protected abstract T performCompilation(org.graalvm.compiler.debug.DebugContext);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)Ljava/lang/Object;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Lorg/graalvm/compiler/debug/DebugContext;)TT;
    MethodParameters:
       Name  Flags
      debug  

  public abstract java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  protected abstract org.graalvm.compiler.debug.DebugContext createRetryDebugContext(org.graalvm.compiler.debug.DebugContext, org.graalvm.compiler.options.OptionValues, java.io.PrintStream);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/options/OptionValues;Ljava/io/PrintStream;)Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
              Name  Flags
      initialDebug  
      options       
      logStream     

  public final T run(org.graalvm.compiler.debug.DebugContext);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=9, locals=22, args_size=2
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.debug.DebugContext initialDebug
         0: .line 179
            aload 0 /* this */
            aload 1 /* initialDebug */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.performCompilation:(Lorg/graalvm/compiler/debug/DebugContext;)Ljava/lang/Object;
         1: areturn
         2: .line 180
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* cause */
        start local 2 // java.lang.Throwable cause
         3: .line 181
            aload 1 /* initialDebug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            astore 3 /* initialOptions */
        start local 3 // org.graalvm.compiler.options.OptionValues initialOptions
         4: .line 183
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            dup
            astore 4
            monitorenter
         5: .line 192
            aload 0 /* this */
            aload 3 /* initialOptions */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.lookupAction:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Throwable;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            astore 5 /* action */
        start local 5 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
         6: .line 194
            aload 0 /* this */
            aload 3 /* initialOptions */
            aload 5 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.adjustAction:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            astore 5 /* action */
         7: .line 196
            aload 5 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 10
         8: .line 197
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            aload 4
            monitorexit
         9: areturn
        10: .line 200
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction
      StackMap stack:
            aload 5 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Print:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 34
        11: .line 201
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 6 /* baos */
        start local 6 // java.io.ByteArrayOutputStream baos
        12: .line 202
            aconst_null
            astore 7
            aconst_null
            astore 8
        13: new java.io.PrintStream
            dup
            aload 6 /* baos */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 9 /* ps */
        start local 9 // java.io.PrintStream ps
        14: .line 203
            aload 9 /* ps */
            ldc "%s: Compilation of %s failed: "
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        15: .line 204
            aload 2 /* cause */
            aload 9 /* ps */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        16: .line 205
            aload 9 /* ps */
            ldc "To disable compilation failure notifications, set %s to %s (e.g., -Dgraal.%s=%s).%n"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        17: .line 206
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_2
        18: .line 207
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        19: .line 205
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        20: .line 208
            aload 9 /* ps */
            ldc "To capture more information for diagnosing or reporting a compilation failure, set %s to %s or %s (e.g., -Dgraal.%s=%s).%n"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        21: .line 210
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Diagnose:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_2
        22: .line 211
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
        23: .line 212
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_4
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Diagnose:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        24: .line 208
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        25: .line 213
            aload 9 /* ps */
            ifnull 31
            aload 9 /* ps */
            invokevirtual java.io.PrintStream.close:()V
            goto 31
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.PrintStream
      StackMap stack: java.lang.Throwable
        26: astore 7
            aload 9 /* ps */
            ifnull 27
            aload 9 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 9 // java.io.PrintStream ps
      StackMap locals:
      StackMap stack:
        27: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        28: astore 8
            aload 7
            ifnonnull 29
            aload 8
            astore 7
            goto 30
      StackMap locals:
      StackMap stack:
        29: aload 7
            aload 8
            if_acmpeq 30
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        30: aload 7
            athrow
        31: .line 214
      StackMap locals:
      StackMap stack:
            aload 6 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
        32: .line 215
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            aload 4
            monitorexit
        33: areturn
        end local 6 // java.io.ByteArrayOutputStream baos
        34: .line 220
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.debug.DebugOptions.Dump:Lorg/graalvm/compiler/options/OptionKey;
            aload 3 /* initialOptions */
            invokevirtual org.graalvm.compiler.options.OptionKey.hasBeenSet:(Lorg/graalvm/compiler/options/OptionValues;)Z
            ifeq 37
        35: .line 223
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            aload 4
            monitorexit
        36: areturn
        37: .line 226
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6 /* dumpPath */
        start local 6 // java.io.File dumpPath
        38: .line 228
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.outputDirectory:Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
            invokevirtual org.graalvm.compiler.debug.DiagnosticsOutputDirectory.getPath:()Ljava/lang/String;
            astore 7 /* dir */
        start local 7 // java.lang.String dir
        39: .line 229
            aload 7 /* dir */
            ifnull 50
        40: .line 230
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.PathUtilities.sanitizeFileName:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* dumpName */
        start local 8 // java.lang.String dumpName
        41: .line 231
            new java.io.File
            dup
            aload 7 /* dir */
            aload 8 /* dumpName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 6 /* dumpPath */
        42: .line 232
            aload 6 /* dumpPath */
            invokevirtual java.io.File.mkdirs:()Z
            pop
        43: .line 233
            aload 6 /* dumpPath */
            invokevirtual java.io.File.exists:()Z
            ifne 50
        44: .line 234
            new java.lang.StringBuilder
            dup
            ldc "Warning: could not create diagnostics directory "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* dumpPath */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
        45: .line 235
            aconst_null
            astore 6 /* dumpPath */
        end local 8 // java.lang.String dumpName
        end local 7 // java.lang.String dir
        46: .line 238
            goto 50
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File
      StackMap stack: java.lang.Throwable
        47: astore 7 /* t */
        start local 7 // java.lang.Throwable t
        48: .line 239
            ldc "Warning: could not create Graal diagnostic directory"
            invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
        49: .line 240
            aload 7 /* t */
            getstatic org.graalvm.compiler.debug.TTY.out:Ljava/io/PrintStream;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        end local 7 // java.lang.Throwable t
        50: .line 244
      StackMap locals:
      StackMap stack:
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 8 /* baos */
        start local 8 // java.io.ByteArrayOutputStream baos
        51: .line 245
            aconst_null
            astore 9
            aconst_null
            astore 10
        52: new java.io.PrintStream
            dup
            aload 8 /* baos */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 11 /* ps */
        start local 11 // java.io.PrintStream ps
        53: .line 247
            aload 11 /* ps */
            ldc "[[[Graal compilation failure]]]"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        54: .line 249
            aload 11 /* ps */
            ldc "%s: Compilation of %s failed:%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        55: .line 250
            aload 2 /* cause */
            aload 11 /* ps */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        56: .line 251
            aload 11 /* ps */
            ldc "To disable compilation failure notifications, set %s to %s (e.g., -Dgraal.%s=%s).%n"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        57: .line 252
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_2
        58: .line 253
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        59: .line 251
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        60: .line 254
            aload 11 /* ps */
            ldc "To print a message for a compilation failure without retrying the compilation, set %s to %s (e.g., -Dgraal.%s=%s).%n"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        61: .line 256
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Print:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_2
        62: .line 257
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Print:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        63: .line 254
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        64: .line 258
            aload 6 /* dumpPath */
            ifnull 67
        65: .line 259
            aload 11 /* ps */
            new java.lang.StringBuilder
            dup
            ldc "Retrying compilation of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        66: .line 260
            goto 68
        67: .line 261
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File top java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.PrintStream
      StackMap stack:
            aload 11 /* ps */
            new java.lang.StringBuilder
            dup
            ldc "Not retrying compilation of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " as the dump path could not 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
        68: .line 263
      StackMap locals:
      StackMap stack:
            aload 8 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
            astore 7 /* message */
        start local 7 // java.lang.String message
        69: .line 264
            aload 11 /* ps */
            ifnull 75
            aload 11 /* ps */
            invokevirtual java.io.PrintStream.close:()V
            goto 75
        end local 7 // java.lang.String message
      StackMap locals:
      StackMap stack: java.lang.Throwable
        70: astore 9
            aload 11 /* ps */
            ifnull 71
            aload 11 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 11 // java.io.PrintStream ps
      StackMap locals:
      StackMap stack:
        71: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        72: astore 10
            aload 9
            ifnonnull 73
            aload 10
            astore 9
            goto 74
      StackMap locals:
      StackMap stack:
        73: aload 9
            aload 10
            if_acmpeq 74
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        74: aload 9
            athrow
        start local 7 // java.lang.String message
        75: .line 266
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream
      StackMap stack:
            aload 7 /* message */
            invokestatic org.graalvm.compiler.debug.TTY.print:(Ljava/lang/String;)V
        76: .line 267
            aload 6 /* dumpPath */
            ifnonnull 79
        77: .line 268
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            aload 4
            monitorexit
        78: areturn
        79: .line 271
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 6 /* dumpPath */
            ldc "retry.log"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* retryLogFile */
        start local 9 // java.io.File retryLogFile
        80: .line 272
            aconst_null
            astore 10
            aconst_null
            astore 11
        81: new java.io.PrintStream
            dup
            new java.io.FileOutputStream
            dup
            aload 9 /* retryLogFile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 12 /* ps */
        start local 12 // java.io.PrintStream ps
        82: .line 273
            aload 12 /* ps */
            aload 7 /* message */
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        83: .line 274
            aload 12 /* ps */
            ifnull 91
            aload 12 /* ps */
            invokevirtual java.io.PrintStream.close:()V
            goto 91
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File java.lang.Throwable java.lang.Throwable java.io.PrintStream
      StackMap stack: java.lang.Throwable
        84: astore 10
            aload 12 /* ps */
            ifnull 85
            aload 12 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 12 // java.io.PrintStream ps
      StackMap locals:
      StackMap stack:
        85: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        86: astore 11
            aload 10
            ifnonnull 87
            aload 11
            astore 10
            goto 88
      StackMap locals:
      StackMap stack:
        87: aload 10
            aload 11
            if_acmpeq 88
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        88: aload 10
            athrow
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File
      StackMap stack: java.io.IOException
        89: astore 10 /* ioe */
        start local 10 // java.io.IOException ioe
        90: .line 275
            ldc "Error writing to %s: %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* retryLogFile */
            aastore
            dup
            iconst_1
            aload 10 /* ioe */
            aastore
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 10 // java.io.IOException ioe
        91: .line 278
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.options.OptionValues
            dup
            aload 3 /* initialOptions */
        92: .line 279
            getstatic org.graalvm.compiler.debug.DebugOptions.Dump:Lorg/graalvm/compiler/options/OptionKey;
            ldc ":3"
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
        93: .line 280
            getstatic org.graalvm.compiler.debug.DebugOptions.MethodFilter:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_1
            aconst_null
            aastore
            dup
            iconst_2
        94: .line 281
            getstatic org.graalvm.compiler.debug.DebugOptions.DumpPath:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_3
            aload 6 /* dumpPath */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            aastore
            dup
            iconst_4
        95: .line 282
            getstatic org.graalvm.compiler.core.common.GraalOptions.TrackNodeSourcePosition:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_5
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
        96: .line 278
            aastore
            invokespecial org.graalvm.compiler.options.OptionValues.<init>:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/OptionKey;Ljava/lang/Object;[Ljava/lang/Object;)V
            astore 10 /* retryOptions */
        start local 10 // org.graalvm.compiler.options.OptionValues retryOptions
        97: .line 284
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 11 /* logBaos */
        start local 11 // java.io.ByteArrayOutputStream logBaos
        98: .line 285
            new java.io.PrintStream
            dup
            aload 11 /* logBaos */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 12 /* ps */
        start local 12 // java.io.PrintStream ps
        99: .line 286
            aconst_null
            astore 13
            aconst_null
            astore 14
       100: aload 0 /* this */
            aload 1 /* initialDebug */
            aload 10 /* retryOptions */
            aload 12 /* ps */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.createRetryDebugContext:(Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/options/OptionValues;Ljava/io/PrintStream;)Lorg/graalvm/compiler/debug/DebugContext;
            astore 15 /* retryDebug */
        start local 15 // org.graalvm.compiler.debug.DebugContext retryDebug
       101: .line 287
            aload 0 /* this */
            aload 15 /* retryDebug */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.performCompilation:(Lorg/graalvm/compiler/debug/DebugContext;)Ljava/lang/Object;
            astore 16 /* res */
        start local 16 // java.lang.Object res
       102: .line 288
            aload 12 /* ps */
            ldc "There was no exception during retry."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       103: .line 289
            aload 0 /* this */
            aload 5 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.maybeExitVM:(Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)V
       104: .line 290
            aload 16 /* res */
            astore 18
       105: .line 291
            aload 15 /* retryDebug */
            ifnull 106
            aload 15 /* retryDebug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
       106: .line 299
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext java.lang.Object top java.lang.Object
      StackMap stack:
            aload 12 /* ps */
            invokevirtual java.io.PrintStream.close:()V
       107: .line 300
            aconst_null
            astore 19
            aconst_null
            astore 20
       108: new java.io.FileOutputStream
            dup
            aload 9 /* retryLogFile */
            iconst_1
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;Z)V
            astore 21 /* fos */
        start local 21 // java.io.FileOutputStream fos
       109: .line 301
            aload 21 /* fos */
            aload 11 /* logBaos */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            invokevirtual java.io.FileOutputStream.write:([B)V
       110: .line 302
            aload 21 /* fos */
            ifnull 118
            aload 21 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
            goto 118
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext java.lang.Object top java.lang.Object java.lang.Throwable java.lang.Throwable java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
       111: astore 19
            aload 21 /* fos */
            ifnull 112
            aload 21 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 21 // java.io.FileOutputStream fos
      StackMap locals:
      StackMap stack:
       112: aload 19
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       113: astore 20
            aload 19
            ifnonnull 114
            aload 20
            astore 19
            goto 115
      StackMap locals:
      StackMap stack:
       114: aload 19
            aload 20
            if_acmpeq 115
            aload 19
            aload 20
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       115: aload 19
            athrow
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext java.lang.Object top java.lang.Object
      StackMap stack: java.lang.Throwable
       116: astore 19 /* e */
        start local 19 // java.lang.Throwable e
       117: .line 303
            ldc "Error writing to %s: %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* retryLogFile */
            aastore
            dup
            iconst_1
            aload 19 /* e */
            aastore
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 19 // java.lang.Throwable e
       118: .line 290
      StackMap locals:
      StackMap stack:
            aload 4
            monitorexit
       119: aload 18
            areturn
        end local 16 // java.lang.Object res
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext
      StackMap stack: java.lang.Throwable
       120: astore 13
       121: .line 291
            aload 15 /* retryDebug */
            ifnull 122
            aload 15 /* retryDebug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
        end local 15 // org.graalvm.compiler.debug.DebugContext retryDebug
      StackMap locals:
      StackMap stack:
       122: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       123: astore 14
            aload 13
            ifnonnull 124
            aload 14
            astore 13
            goto 125
      StackMap locals:
      StackMap stack:
       124: aload 13
            aload 14
            if_acmpeq 125
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       125: aload 13
            athrow
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream
      StackMap stack: java.lang.Throwable
       126: astore 13 /* e */
        start local 13 // java.lang.Throwable e
       127: .line 292
            aload 12 /* ps */
            ldc "Exception during retry:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       128: .line 293
            aload 13 /* e */
            aload 12 /* ps */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
       129: .line 295
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            astore 14 /* res */
        start local 14 // java.lang.Object res
       130: .line 296
            aload 0 /* this */
            aload 5 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.maybeExitVM:(Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)V
       131: .line 297
            aload 14 /* res */
            astore 18
       132: .line 299
            aload 12 /* ps */
            invokevirtual java.io.PrintStream.close:()V
       133: .line 300
            aconst_null
            astore 19
            aconst_null
            astore 20
       134: new java.io.FileOutputStream
            dup
            aload 9 /* retryLogFile */
            iconst_1
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;Z)V
            astore 21 /* fos */
        start local 21 // java.io.FileOutputStream fos
       135: .line 301
            aload 21 /* fos */
            aload 11 /* logBaos */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            invokevirtual java.io.FileOutputStream.write:([B)V
       136: .line 302
            aload 21 /* fos */
            ifnull 144
            aload 21 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
            goto 144
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream java.lang.Throwable java.lang.Object top top top java.lang.Object java.lang.Throwable java.lang.Throwable java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
       137: astore 19
            aload 21 /* fos */
            ifnull 138
            aload 21 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 21 // java.io.FileOutputStream fos
      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
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream java.lang.Throwable java.lang.Object top top top java.lang.Object
      StackMap stack: java.lang.Throwable
       142: astore 19 /* e */
        start local 19 // java.lang.Throwable e
       143: .line 303
            ldc "Error writing to %s: %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* retryLogFile */
            aastore
            dup
            iconst_1
            aload 19 /* e */
            aastore
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 19 // java.lang.Throwable e
       144: .line 297
      StackMap locals:
      StackMap stack:
            aload 4
            monitorexit
       145: aload 18
            areturn
        end local 14 // java.lang.Object res
        end local 13 // java.lang.Throwable e
       146: .line 298
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream
      StackMap stack: java.lang.Throwable
            astore 17
       147: .line 299
            aload 12 /* ps */
            invokevirtual java.io.PrintStream.close:()V
       148: .line 300
            aconst_null
            astore 19
            aconst_null
            astore 20
       149: new java.io.FileOutputStream
            dup
            aload 9 /* retryLogFile */
            iconst_1
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;Z)V
            astore 21 /* fos */
        start local 21 // java.io.FileOutputStream fos
       150: .line 301
            aload 21 /* fos */
            aload 11 /* logBaos */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            invokevirtual java.io.FileOutputStream.write:([B)V
       151: .line 302
            aload 21 /* fos */
            ifnull 159
            aload 21 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
            goto 159
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream top top top top java.lang.Throwable top java.lang.Throwable java.lang.Throwable java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
       152: astore 19
            aload 21 /* fos */
            ifnull 153
            aload 21 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 21 // java.io.FileOutputStream fos
      StackMap locals:
      StackMap stack:
       153: aload 19
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       154: astore 20
            aload 19
            ifnonnull 155
            aload 20
            astore 19
            goto 156
      StackMap locals:
      StackMap stack:
       155: aload 19
            aload 20
            if_acmpeq 156
            aload 19
            aload 20
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       156: aload 19
            athrow
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.File java.lang.String java.io.ByteArrayOutputStream java.io.File org.graalvm.compiler.options.OptionValues java.io.ByteArrayOutputStream java.io.PrintStream top top top top java.lang.Throwable
      StackMap stack: java.lang.Throwable
       157: astore 19 /* e */
        start local 19 // java.lang.Throwable e
       158: .line 303
            ldc "Error writing to %s: %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* retryLogFile */
            aastore
            dup
            iconst_1
            aload 19 /* e */
            aastore
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 19 // java.lang.Throwable e
       159: .line 305
      StackMap locals:
      StackMap stack:
            aload 17
            athrow
        end local 12 // java.io.PrintStream ps
        end local 11 // java.io.ByteArrayOutputStream logBaos
        end local 10 // org.graalvm.compiler.options.OptionValues retryOptions
        end local 9 // java.io.File retryLogFile
        end local 8 // java.io.ByteArrayOutputStream baos
        end local 7 // java.lang.String message
        end local 6 // java.io.File dumpPath
        end local 5 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
       160: .line 183
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.EnumOptionKey
      StackMap stack: java.lang.Throwable
            aload 4
            monitorexit
       161: athrow
        end local 3 // org.graalvm.compiler.options.OptionValues initialOptions
        end local 2 // java.lang.Throwable cause
        end local 1 // org.graalvm.compiler.debug.DebugContext initialDebug
        end local 0 // org.graalvm.compiler.core.CompilationWrapper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0  162     0            this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0  162     1    initialDebug  Lorg/graalvm/compiler/debug/DebugContext;
            3  162     2           cause  Ljava/lang/Throwable;
            4  162     3  initialOptions  Lorg/graalvm/compiler/options/OptionValues;
            6  160     5          action  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
           12   34     6            baos  Ljava/io/ByteArrayOutputStream;
           14   27     9              ps  Ljava/io/PrintStream;
           38  160     6        dumpPath  Ljava/io/File;
           39   46     7             dir  Ljava/lang/String;
           41   46     8        dumpName  Ljava/lang/String;
           48   50     7               t  Ljava/lang/Throwable;
           69   70     7         message  Ljava/lang/String;
           75  160     7         message  Ljava/lang/String;
           51  160     8            baos  Ljava/io/ByteArrayOutputStream;
           53   71    11              ps  Ljava/io/PrintStream;
           80  160     9    retryLogFile  Ljava/io/File;
           82   85    12              ps  Ljava/io/PrintStream;
           90   91    10             ioe  Ljava/io/IOException;
           97  160    10    retryOptions  Lorg/graalvm/compiler/options/OptionValues;
           98  160    11         logBaos  Ljava/io/ByteArrayOutputStream;
           99  160    12              ps  Ljava/io/PrintStream;
          101  122    15      retryDebug  Lorg/graalvm/compiler/debug/DebugContext;
          102  120    16             res  TT;
          127  146    13               e  Ljava/lang/Throwable;
          130  146    14             res  TT;
          109  112    21             fos  Ljava/io/FileOutputStream;
          135  138    21             fos  Ljava/io/FileOutputStream;
          150  153    21             fos  Ljava/io/FileOutputStream;
          117  118    19               e  Ljava/lang/Throwable;
          143  144    19               e  Ljava/lang/Throwable;
          158  159    19               e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
          14    25      26  any
          13    28      28  any
          38    46      47  Class java.lang.Throwable
          53    69      70  any
          52    72      72  any
          82    83      84  any
          81    86      86  any
          80    89      89  Class java.io.IOException
         109   110     111  any
         108   113     113  any
         107   116     116  Class java.lang.Throwable
         101   105     120  any
         100   106     123  any
         120   123     123  any
          99   106     126  Class java.lang.Throwable
         120   126     126  Class java.lang.Throwable
         135   136     137  any
         134   139     139  any
         133   142     142  Class java.lang.Throwable
          99   106     146  any
         120   132     146  any
         150   151     152  any
         149   154     154  any
         148   157     157  Class java.lang.Throwable
           5     9     160  any
          10    33     160  any
          34    36     160  any
          37    78     160  any
          79   119     160  any
         120   145     160  any
         146   161     160  any
    Signature: (Lorg/graalvm/compiler/debug/DebugContext;)TT;
    MethodParameters:
              Name  Flags
      initialDebug  

  protected abstract void exitHostVM(int);
    descriptor: (I)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
        Name  Flags
      status  

  private void maybeExitVM(org.graalvm.compiler.core.CompilationWrapper$ExceptionAction);
    descriptor: (Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
         0: .line 317
            aload 1 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 3
         1: .line 318
            new java.lang.StringBuilder
            dup
            ldc "Exiting VM after retry compilation of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
         2: .line 319
            aload 0 /* this */
            iconst_m1
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.exitHostVM:(I)V
         3: .line 321
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
        end local 0 // org.graalvm.compiler.core.CompilationWrapper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0    4     1  action  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    Signature: (Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)V
    MethodParameters:
        Name  Flags
      action  

  private org.graalvm.compiler.core.CompilationWrapper$ExceptionAction adjustAction(org.graalvm.compiler.options.OptionValues, org.graalvm.compiler.core.CompilationWrapper$ExceptionAction);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.options.OptionValues initialOptions
        start local 2 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction initialAction
         0: .line 328
            aload 2 /* initialAction */
            astore 3 /* action */
        start local 3 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
         1: .line 329
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.MaxCompilationProblemsPerAction:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* initialOptions */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 4 /* maxProblems */
        start local 4 // int maxProblems
         2: .line 330
            aload 3 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpeq 19
         3: .line 331
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            dup
            astore 5
            monitorenter
         4: .line 332
            goto 13
         5: .line 333
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper$ExceptionAction int java.util.Map
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 3 /* action */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 6 /* problems */
        start local 6 // int problems
         6: .line 334
            iload 6 /* problems */
            iload 4 /* maxProblems */
            if_icmplt 14
         7: .line 335
            iload 6 /* problems */
            iload 4 /* maxProblems */
            if_icmpne 12
         8: .line 336
            ldc "Warning: adjusting %s from %s to %s after %s (%d) failed compilations%n"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            aastore
            dup
            iconst_1
            aload 3 /* action */
            aastore
            dup
            iconst_2
            aload 3 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.quieter:()Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
         9: .line 337
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.MaxCompilationProblemsPerAction:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_4
            iload 4 /* maxProblems */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        10: .line 336
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        11: .line 339
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 3 /* action */
            iload 6 /* problems */
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 341
      StackMap locals: int
      StackMap stack:
            aload 3 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.quieter:()Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            astore 3 /* action */
        end local 6 // int problems
        13: .line 332
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 5
        14: .line 346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 3 /* action */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 3 /* action */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 331
            aload 5
            monitorexit
        16: goto 19
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: aload 5
            monitorexit
        18: athrow
        19: .line 349
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            areturn
        end local 4 // int maxProblems
        end local 3 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
        end local 2 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction initialAction
        end local 1 // org.graalvm.compiler.options.OptionValues initialOptions
        end local 0 // org.graalvm.compiler.core.CompilationWrapper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   20     0            this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0   20     1  initialOptions  Lorg/graalvm/compiler/options/OptionValues;
            0   20     2   initialAction  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            1   20     3          action  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            2   20     4     maxProblems  I
            6   13     6        problems  I
      Exception table:
        from    to  target  type
           4    16      17  any
          17    18      17  any
    Signature: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    MethodParameters:
                Name  Flags
      initialOptions  
      initialAction   
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "CompilationWrapper.java"
NestMembers:
  org.graalvm.compiler.core.CompilationWrapper$ExceptionAction
InnerClasses:
  public final ExceptionAction = org.graalvm.compiler.core.CompilationWrapper$ExceptionAction of org.graalvm.compiler.core.CompilationWrapper