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 109
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 110
            aload 0 /* this */
            aload 1 /* outputDirectory */
            putfield org.graalvm.compiler.core.CompilationWrapper.outputDirectory:Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
         2: .line 111
            aload 0 /* this */
            aload 2 /* problemsHandledPerAction */
            putfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
         3: .line 112
            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, org.graalvm.compiler.options.EnumOptionKey<org.graalvm.compiler.core.CompilationWrapper$ExceptionAction>, java.lang.Throwable);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/EnumOptionKey;Ljava/lang/Throwable;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.options.OptionValues options
        start local 2 // org.graalvm.compiler.options.EnumOptionKey actionKey
        start local 3 // java.lang.Throwable cause
         0: .line 131
            aload 2 /* actionKey */
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            if_acmpne 10
         1: .line 132
            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 10
         2: .line 133
            getstatic org.graalvm.compiler.core.CompilationWrapper.$assertionsDisabled:Z
            ifne 3
            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 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 134
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.CompilationWrapper.$assertionsDisabled:Z
            ifne 4
            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 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 135
      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 9
            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 9
         5: .line 136
            ldc "WARNING: Ignoring %s=%s since %s=true has been explicitly specified.%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
         6: .line 137
            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
         7: .line 138
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.ExitVMOnException:Lorg/graalvm/compiler/options/OptionKey;
            invokevirtual org.graalvm.compiler.options.OptionKey.getName:()Ljava/lang/String;
            aastore
         8: .line 136
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 140
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            areturn
        10: .line 143
      StackMap locals:
      StackMap stack:
            aload 2 /* actionKey */
            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 3 // java.lang.Throwable cause
        end local 2 // org.graalvm.compiler.options.EnumOptionKey actionKey
        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   11     0       this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0   11     1    options  Lorg/graalvm/compiler/options/OptionValues;
            0   11     2  actionKey  Lorg/graalvm/compiler/options/EnumOptionKey<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;>;
            0   11     3      cause  Ljava/lang/Throwable;
    Signature: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/EnumOptionKey<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;>;Ljava/lang/Throwable;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    MethodParameters:
           Name  Flags
      options    
      actionKey  
      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.options.OptionValues);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      options  

  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=19, args_size=2
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.debug.DebugContext initialDebug
         0: .line 169
            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 170
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* cause */
        start local 2 // java.lang.Throwable cause
         3: .line 171
            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 173
            ldc "failure"
            astore 4 /* causeType */
        start local 4 // java.lang.String causeType
         5: .line 175
            aload 2 /* cause */
            instanceof jdk.vm.ci.code.BailoutException
            ifeq 9
         6: .line 176
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationBailoutAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            astore 5 /* actionKey */
        start local 5 // org.graalvm.compiler.options.EnumOptionKey actionKey
         7: .line 177
            ldc "bailout"
            astore 4 /* causeType */
         8: .line 178
            goto 11
        end local 5 // org.graalvm.compiler.options.EnumOptionKey actionKey
         9: .line 179
      StackMap locals: java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String
      StackMap stack:
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            astore 5 /* actionKey */
        start local 5 // org.graalvm.compiler.options.EnumOptionKey actionKey
        10: .line 180
            ldc "failure"
            astore 4 /* causeType */
        11: .line 182
      StackMap locals: org.graalvm.compiler.options.EnumOptionKey
      StackMap stack:
            aload 0 /* this */
            aload 3 /* initialOptions */
            aload 5 /* actionKey */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.lookupAction:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/EnumOptionKey;Ljava/lang/Throwable;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            astore 6 /* action */
        start local 6 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
        12: .line 184
            aload 0 /* this */
            aload 3 /* initialOptions */
            aload 5 /* actionKey */
            aload 6 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.adjustAction:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/EnumOptionKey;Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            astore 6 /* action */
        13: .line 186
            aload 6 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 15
        14: .line 187
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            areturn
        15: .line 190
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper$ExceptionAction
      StackMap stack:
            aload 6 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Print:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 45
        16: .line 191
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 7 /* baos */
        start local 7 // java.io.ByteArrayOutputStream baos
        17: .line 192
            aconst_null
            astore 8
            aconst_null
            astore 9
        18: new java.io.PrintStream
            dup
            aload 7 /* baos */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 10 /* ps */
        start local 10 // java.io.PrintStream ps
        19: .line 193
            aload 10 /* 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
        20: .line 194
            aload 2 /* cause */
            aload 10 /* ps */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        21: .line 195
            aload 10 /* ps */
            ldc "To disable compilation %s notifications, set %s to %s (e.g., -Dgraal.%s=%s).%n"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        22: .line 196
            aload 4 /* causeType */
            aastore
            dup
            iconst_1
        23: .line 197
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
        24: .line 198
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_4
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        25: .line 195
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        26: .line 199
            aload 10 /* ps */
            ldc "To capture more information for diagnosing or reporting a compilation %s, set %s to %s or %s (e.g., -Dgraal.%s=%s).%n"
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
        27: .line 201
            aload 4 /* causeType */
            aastore
            dup
            iconst_1
        28: .line 202
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Diagnose:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
        29: .line 203
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_4
        30: .line 204
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_5
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Diagnose:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        31: .line 199
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        32: .line 205
            aload 10 /* ps */
            ifnull 38
            aload 10 /* ps */
            invokevirtual java.io.PrintStream.close:()V
            goto 38
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String 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
        33: astore 8
            aload 10 /* ps */
            ifnull 34
            aload 10 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 10 // java.io.PrintStream ps
      StackMap locals:
      StackMap stack:
        34: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: astore 9
            aload 8
            ifnonnull 36
            aload 9
            astore 8
            goto 37
      StackMap locals:
      StackMap stack:
        36: aload 8
            aload 9
            if_acmpeq 37
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        37: aload 8
            athrow
        38: .line 206
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            dup
            astore 8
            monitorenter
        39: .line 209
            aload 7 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
        40: .line 206
            aload 8
            monitorexit
        41: goto 44
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey
      StackMap stack: java.lang.Throwable
        42: aload 8
            monitorexit
        43: athrow
        44: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            areturn
        end local 7 // java.io.ByteArrayOutputStream baos
        45: .line 216
      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 47
        46: .line 219
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            areturn
        47: .line 222
      StackMap locals:
      StackMap stack:
            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
        48: .line 223
            aload 7 /* dir */
            ifnonnull 50
        49: .line 224
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            areturn
        50: .line 226
      StackMap locals: java.lang.String
      StackMap stack:
            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
        51: .line 227
            new java.io.File
            dup
            aload 7 /* dir */
            aload 8 /* dumpName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 9 /* dumpPath */
        start local 9 // java.io.File dumpPath
        52: .line 228
            aload 9 /* dumpPath */
            invokevirtual java.io.File.mkdirs:()Z
            pop
        53: .line 229
            aload 9 /* dumpPath */
            invokevirtual java.io.File.exists:()Z
            ifne 56
        54: .line 230
            new java.lang.StringBuilder
            dup
            ldc "Warning: could not create diagnostics directory "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* 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
        55: .line 231
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            areturn
        56: .line 235
      StackMap locals: java.lang.String java.io.File
      StackMap stack:
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 11 /* baos */
        start local 11 // java.io.ByteArrayOutputStream baos
        57: .line 236
            aconst_null
            astore 12
            aconst_null
            astore 13
        58: new java.io.PrintStream
            dup
            aload 11 /* baos */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 14 /* ps */
        start local 14 // java.io.PrintStream ps
        59: .line 237
            aload 14 /* 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
        60: .line 238
            aload 2 /* cause */
            aload 14 /* ps */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        61: .line 239
            aload 14 /* ps */
            ldc "To disable compilation %s notifications, set %s to %s (e.g., -Dgraal.%s=%s).%n"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        62: .line 240
            aload 4 /* causeType */
            aastore
            dup
            iconst_1
        63: .line 241
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
        64: .line 242
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_4
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        65: .line 239
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        66: .line 243
            aload 14 /* ps */
            ldc "To print a message for a compilation %s without retrying the compilation, set %s to %s (e.g., -Dgraal.%s=%s).%n"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        67: .line 245
            aload 4 /* causeType */
            aastore
            dup
            iconst_1
        68: .line 246
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Print:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
        69: .line 247
            aload 5 /* actionKey */
            invokevirtual org.graalvm.compiler.options.EnumOptionKey.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_4
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Print:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
        70: .line 243
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        71: .line 248
            aload 14 /* 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
        72: .line 249
            aload 11 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
            astore 10 /* message */
        start local 10 // java.lang.String message
        73: .line 250
            aload 14 /* ps */
            ifnull 79
            aload 14 /* ps */
            invokevirtual java.io.PrintStream.close:()V
            goto 79
        end local 10 // java.lang.String message
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File top java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.PrintStream
      StackMap stack: java.lang.Throwable
        74: astore 12
            aload 14 /* ps */
            ifnull 75
            aload 14 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 14 // java.io.PrintStream ps
      StackMap locals:
      StackMap stack:
        75: aload 12
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        76: astore 13
            aload 12
            ifnonnull 77
            aload 13
            astore 12
            goto 78
      StackMap locals:
      StackMap stack:
        77: aload 12
            aload 13
            if_acmpeq 78
            aload 12
            aload 13
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        78: aload 12
            athrow
        start local 10 // java.lang.String message
        79: .line 252
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream
      StackMap stack:
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.CompilationFailureAction:Lorg/graalvm/compiler/options/EnumOptionKey;
            dup
            astore 12
            monitorenter
        80: .line 255
            aload 10 /* message */
            invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;)V
        81: .line 256
            new java.io.File
            dup
            aload 9 /* dumpPath */
            ldc "retry.log"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 13 /* retryLogFile */
        start local 13 // java.io.File retryLogFile
        82: .line 257
            aconst_null
            astore 14
            aconst_null
            astore 15
        83: new java.io.PrintStream
            dup
            new java.io.FileOutputStream
            dup
            aload 13 /* retryLogFile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 16 /* ps */
        start local 16 // java.io.PrintStream ps
        84: .line 258
            aload 16 /* ps */
            aload 10 /* message */
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        85: .line 259
            aload 16 /* ps */
            ifnull 93
            aload 16 /* ps */
            invokevirtual java.io.PrintStream.close:()V
            goto 93
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey java.io.File java.lang.Throwable java.lang.Throwable java.io.PrintStream
      StackMap stack: java.lang.Throwable
        86: astore 14
            aload 16 /* ps */
            ifnull 87
            aload 16 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 16 // java.io.PrintStream ps
      StackMap locals:
      StackMap stack:
        87: aload 14
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        88: astore 15
            aload 14
            ifnonnull 89
            aload 15
            astore 14
            goto 90
      StackMap locals:
      StackMap stack:
        89: aload 14
            aload 15
            if_acmpeq 90
            aload 14
            aload 15
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        90: aload 14
            athrow
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey java.io.File
      StackMap stack: java.io.IOException
        91: astore 14 /* ioe */
        start local 14 // java.io.IOException ioe
        92: .line 260
            ldc "Error writing to %s: %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 13 /* retryLogFile */
            aastore
            dup
            iconst_1
            aload 14 /* ioe */
            aastore
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 14 // java.io.IOException ioe
        93: .line 263
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.options.OptionValues
            dup
            aload 3 /* initialOptions */
        94: .line 264
            getstatic org.graalvm.compiler.debug.DebugOptions.Dump:Lorg/graalvm/compiler/options/OptionKey;
            ldc ":3"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        95: .line 265
            getstatic org.graalvm.compiler.debug.DebugOptions.MethodFilter:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_1
            aconst_null
            aastore
            dup
            iconst_2
        96: .line 266
            getstatic org.graalvm.compiler.debug.DebugOptions.DumpPath:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_3
            aload 9 /* dumpPath */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
        97: .line 263
            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 14 /* retryOptions */
        start local 14 // org.graalvm.compiler.options.OptionValues retryOptions
        98: .line 268
            aconst_null
            astore 15
            aconst_null
            astore 16
        99: aload 0 /* this */
            aload 14 /* retryOptions */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.createRetryDebugContext:(Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/debug/DebugContext;
            astore 17 /* retryDebug */
        start local 17 // org.graalvm.compiler.debug.DebugContext retryDebug
       100: .line 269
            aload 0 /* this */
            aload 17 /* retryDebug */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.performCompilation:(Lorg/graalvm/compiler/debug/DebugContext;)Ljava/lang/Object;
            astore 18 /* res */
        start local 18 // java.lang.Object res
       101: .line 270
            aload 0 /* this */
            aload 6 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.maybeExitVM:(Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)V
       102: .line 271
            aload 18 /* res */
       103: .line 272
            aload 17 /* retryDebug */
            ifnull 104
            aload 17 /* retryDebug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
       104: .line 271
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey java.io.File org.graalvm.compiler.options.OptionValues java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext java.lang.Object
      StackMap stack: java.lang.Object
            aload 12
            monitorexit
       105: areturn
        end local 18 // java.lang.Object res
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey java.io.File org.graalvm.compiler.options.OptionValues java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext
      StackMap stack: java.lang.Throwable
       106: astore 15
       107: .line 272
            aload 17 /* retryDebug */
            ifnull 108
            aload 17 /* retryDebug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
        end local 17 // org.graalvm.compiler.debug.DebugContext retryDebug
      StackMap locals:
      StackMap stack:
       108: aload 15
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       109: astore 16
            aload 15
            ifnonnull 110
            aload 16
            astore 15
            goto 111
      StackMap locals:
      StackMap stack:
       110: aload 15
            aload 16
            if_acmpeq 111
            aload 15
            aload 16
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       111: aload 15
            athrow
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey java.io.File org.graalvm.compiler.options.OptionValues
      StackMap stack: java.lang.Throwable
       112: pop
       113: .line 274
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.handleException:(Ljava/lang/Throwable;)Ljava/lang/Object;
            astore 15 /* res */
        start local 15 // java.lang.Object res
       114: .line 275
            aload 0 /* this */
            aload 6 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper.maybeExitVM:(Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)V
       115: .line 276
            aload 15 /* res */
            aload 12
            monitorexit
       116: areturn
        end local 15 // java.lang.Object res
        end local 14 // org.graalvm.compiler.options.OptionValues retryOptions
        end local 13 // java.io.File retryLogFile
       117: .line 252
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.debug.DebugContext java.lang.Throwable org.graalvm.compiler.options.OptionValues java.lang.String org.graalvm.compiler.options.EnumOptionKey org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.String java.lang.String java.io.File java.lang.String java.io.ByteArrayOutputStream org.graalvm.compiler.options.EnumOptionKey
      StackMap stack: java.lang.Throwable
            aload 12
            monitorexit
       118: athrow
        end local 11 // java.io.ByteArrayOutputStream baos
        end local 10 // java.lang.String message
        end local 9 // java.io.File dumpPath
        end local 8 // java.lang.String dumpName
        end local 7 // java.lang.String dir
        end local 6 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
        end local 5 // org.graalvm.compiler.options.EnumOptionKey actionKey
        end local 4 // java.lang.String causeType
        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  119     0            this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0  119     1    initialDebug  Lorg/graalvm/compiler/debug/DebugContext;
            3  119     2           cause  Ljava/lang/Throwable;
            4  119     3  initialOptions  Lorg/graalvm/compiler/options/OptionValues;
            5  119     4       causeType  Ljava/lang/String;
            7    9     5       actionKey  Lorg/graalvm/compiler/options/EnumOptionKey<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;>;
           10  119     5       actionKey  Lorg/graalvm/compiler/options/EnumOptionKey<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;>;
           12  119     6          action  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
           17   45     7            baos  Ljava/io/ByteArrayOutputStream;
           19   34    10              ps  Ljava/io/PrintStream;
           48  119     7             dir  Ljava/lang/String;
           51  119     8        dumpName  Ljava/lang/String;
           52  119     9        dumpPath  Ljava/io/File;
           73   74    10         message  Ljava/lang/String;
           79  119    10         message  Ljava/lang/String;
           57  119    11            baos  Ljava/io/ByteArrayOutputStream;
           59   75    14              ps  Ljava/io/PrintStream;
           82  117    13    retryLogFile  Ljava/io/File;
           84   87    16              ps  Ljava/io/PrintStream;
           92   93    14             ioe  Ljava/io/IOException;
           98  117    14    retryOptions  Lorg/graalvm/compiler/options/OptionValues;
          100  108    17      retryDebug  Lorg/graalvm/compiler/debug/DebugContext;
          101  106    18             res  TT;
          114  117    15             res  TT;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
          19    32      33  any
          18    35      35  any
          39    41      42  any
          42    43      42  any
          59    73      74  any
          58    76      76  any
          84    85      86  any
          83    88      88  any
          82    91      91  Class java.io.IOException
         100   103     106  any
          99   104     109  any
         106   109     109  any
          98   104     112  Class java.lang.Throwable
         106   112     112  Class java.lang.Throwable
          80   105     117  any
         106   116     117  any
         117   118     117  any
    Signature: (Lorg/graalvm/compiler/debug/DebugContext;)TT;
    MethodParameters:
              Name  Flags
      initialDebug  

  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=3, args_size=2
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
         0: .line 283
            aload 1 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.ExitVM:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 11
         1: .line 284
            ldc Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            dup
            astore 2
            monitorenter
         2: .line 288
            ldc Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            ldc 2000
            invokevirtual java.lang.Object.wait:(J)V
         3: .line 289
            goto 5
      StackMap locals: org.graalvm.compiler.core.CompilationWrapper org.graalvm.compiler.core.CompilationWrapper$ExceptionAction java.lang.Class
      StackMap stack: java.lang.InterruptedException
         4: pop
         5: .line 291
      StackMap locals:
      StackMap stack:
            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
         6: .line 292
            iconst_m1
            invokestatic java.lang.System.exit:(I)V
         7: .line 284
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 295
      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   12     0    this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0   12     1  action  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.InterruptedException
           2     8       9  any
           9    10       9  any
    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.options.EnumOptionKey<org.graalvm.compiler.core.CompilationWrapper$ExceptionAction>, org.graalvm.compiler.core.CompilationWrapper$ExceptionAction);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/EnumOptionKey;Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.core.CompilationWrapper this
        start local 1 // org.graalvm.compiler.options.OptionValues initialOptions
        start local 2 // org.graalvm.compiler.options.EnumOptionKey actionKey
        start local 3 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction initialAction
         0: .line 302
            aload 3 /* initialAction */
            astore 4 /* action */
        start local 4 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
         1: .line 303
            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 5 /* maxProblems */
        start local 5 // int maxProblems
         2: .line 304
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            dup
            astore 6
            monitorenter
         3: .line 305
            goto 12
         4: .line 306
      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 4 /* 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 7 /* problems */
        start local 7 // int problems
         5: .line 307
            iload 7 /* problems */
            iload 5 /* maxProblems */
            if_icmplt 13
         6: .line 308
            iload 7 /* problems */
            iload 5 /* maxProblems */
            if_icmpne 11
         7: .line 309
            ldc "Warning: adjusting %s from %s to %s after %s (%d) failed compilations%n"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* actionKey */
            aastore
            dup
            iconst_1
            aload 4 /* action */
            aastore
            dup
            iconst_2
            aload 4 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.quieter:()Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            aastore
            dup
            iconst_3
         8: .line 310
            getstatic org.graalvm.compiler.core.GraalCompilerOptions.MaxCompilationProblemsPerAction:Lorg/graalvm/compiler/options/OptionKey;
            aastore
            dup
            iconst_4
            iload 5 /* maxProblems */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         9: .line 309
            invokestatic org.graalvm.compiler.debug.TTY.printf:(Ljava/lang/String;[Ljava/lang/Object;)V
        10: .line 312
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 4 /* action */
            iload 7 /* 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
        11: .line 314
      StackMap locals: int
      StackMap stack:
            aload 4 /* action */
            invokevirtual org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.quieter:()Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            astore 4 /* action */
        end local 7 // int problems
        12: .line 305
      StackMap locals:
      StackMap stack:
            aload 4 /* action */
            getstatic org.graalvm.compiler.core.CompilationWrapper$ExceptionAction.Silent:Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            if_acmpne 4
        13: .line 319
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 4 /* action */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.CompilationWrapper.problemsHandledPerAction:Ljava/util/Map;
            aload 4 /* 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
        14: .line 304
            aload 6
            monitorexit
        15: goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: aload 6
            monitorexit
        17: athrow
        18: .line 321
      StackMap locals:
      StackMap stack:
            aload 4 /* action */
            areturn
        end local 5 // int maxProblems
        end local 4 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction action
        end local 3 // org.graalvm.compiler.core.CompilationWrapper$ExceptionAction initialAction
        end local 2 // org.graalvm.compiler.options.EnumOptionKey actionKey
        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   19     0            this  Lorg/graalvm/compiler/core/CompilationWrapper<TT;>;
            0   19     1  initialOptions  Lorg/graalvm/compiler/options/OptionValues;
            0   19     2       actionKey  Lorg/graalvm/compiler/options/EnumOptionKey<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;>;
            0   19     3   initialAction  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            1   19     4          action  Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
            2   19     5     maxProblems  I
            5   12     7        problems  I
      Exception table:
        from    to  target  type
           3    15      16  any
          16    17      16  any
    Signature: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/EnumOptionKey<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;>;Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;)Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;
    MethodParameters:
                Name  Flags
      initialOptions  
      actionKey       
      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