public class com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl extends org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl implements com.oracle.svm.truffle.api.SubstrateTruffleCompiler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl
  super_class: org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl
{
  private final java.lang.String compilerConfigurationName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration);
    descriptor: (Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration config
         0: .line 62
            aload 0 /* this */
            aload 1 /* config */
            invokespecial org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.<init>:(Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;)V
         1: .line 63
            aload 0 /* this */
            invokestatic com.oracle.svm.core.graal.GraalConfiguration.instance:()Lcom/oracle/svm/core/graal/GraalConfiguration;
            invokevirtual com.oracle.svm.core.graal.GraalConfiguration.getCompilerConfigurationName:()Ljava/lang/String;
            putfield com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl.compilerConfigurationName:Ljava/lang/String;
         2: .line 64
            return
        end local 1 // org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration config
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    3     1  config  Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
    MethodParameters:
        Name  Flags
      config  

  protected org.graalvm.compiler.truffle.compiler.PartialEvaluator createPartialEvaluator(org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration);
    descriptor: (Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;)Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration configuration
         0: .line 69
            invokestatic com.oracle.svm.truffle.TruffleFeature.getSupport:()Lcom/oracle/svm/truffle/TruffleFeature$Support;
            aload 1 /* configuration */
            aload 0 /* this */
            getfield com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl.builderConfig:Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
            invokevirtual com.oracle.svm.truffle.TruffleFeature$Support.createPartialEvaluator:(Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;)Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
            areturn
        end local 1 // org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration configuration
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    1     1  configuration  Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
    MethodParameters:
               Name  Flags
      configuration  

  public void initialize(java.util.Map<java.lang.String, java.lang.Object>, org.graalvm.compiler.truffle.common.CompilableTruffleAST, );
    descriptor: (Ljava/util/Map;Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // java.util.Map optionsMap
        start local 2 // org.graalvm.compiler.truffle.common.CompilableTruffleAST compilable
        start local 3 // boolean firstInitialization
         0: .line 74
            aload 0 /* this */
            aload 1 /* optionsMap */
            aload 2 /* compilable */
            iload 3 /* firstInitialization */
            invokespecial org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.initialize:(Ljava/util/Map;Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;Z)V
         1: .line 75
            aload 0 /* this */
            invokevirtual com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl.getBackend:()Lorg/graalvm/compiler/core/target/Backend;
            invokestatic com.oracle.svm.graal.SubstrateGraalUtils.updateGraalArchitectureWithHostCPUFeatures:(Lorg/graalvm/compiler/core/target/Backend;)V
         2: .line 76
            return
        end local 3 // boolean firstInitialization
        end local 2 // org.graalvm.compiler.truffle.common.CompilableTruffleAST compilable
        end local 1 // java.util.Map optionsMap
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    3     1           optionsMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            0    3     2           compilable  Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;
            0    3     3  firstInitialization  Z
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;Z)V
    MethodParameters:
                     Name  Flags
      optionsMap           
      compilable           
      firstInitialization  

  public org.graalvm.compiler.phases.PhaseSuite<org.graalvm.compiler.phases.tiers.HighTierContext> createGraphBuilderSuite();
    descriptor: ()Lorg/graalvm/compiler/phases/PhaseSuite;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
         0: .line 80
            aconst_null
            areturn
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
    Signature: ()Lorg/graalvm/compiler/phases/PhaseSuite<Lorg/graalvm/compiler/phases/tiers/HighTierContext;>;

  public java.lang.String getCompilerConfigurationName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
         0: .line 85
            aload 0 /* this */
            getfield com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl.compilerConfigurationName:Ljava/lang/String;
            areturn
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;

  public void teardown();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
         0: .line 90
            return
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;

  protected org.graalvm.compiler.code.CompilationResult createCompilationResult(java.lang.String, org.graalvm.compiler.core.common.CompilationIdentifier, org.graalvm.compiler.truffle.common.CompilableTruffleAST);
    descriptor: (Ljava/lang/String;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;)Lorg/graalvm/compiler/code/CompilationResult;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // java.lang.String name
        start local 2 // org.graalvm.compiler.core.common.CompilationIdentifier compilationIdentifier
        start local 3 // org.graalvm.compiler.truffle.common.CompilableTruffleAST compilable
         0: .line 94
            new com.oracle.svm.core.graal.code.SubstrateCompilationResult
            dup
            aload 2 /* compilationIdentifier */
            aload 1 /* name */
            invokespecial com.oracle.svm.core.graal.code.SubstrateCompilationResult.<init>:(Lorg/graalvm/compiler/core/common/CompilationIdentifier;Ljava/lang/String;)V
            areturn
        end local 3 // org.graalvm.compiler.truffle.common.CompilableTruffleAST compilable
        end local 2 // org.graalvm.compiler.core.common.CompilationIdentifier compilationIdentifier
        end local 1 // java.lang.String name
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    1     0                   this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    1     1                   name  Ljava/lang/String;
            0    1     2  compilationIdentifier  Lorg/graalvm/compiler/core/common/CompilationIdentifier;
            0    1     3             compilable  Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;
    MethodParameters:
                       Name  Flags
      name                   
      compilationIdentifier  
      compilable             

  public org.graalvm.compiler.truffle.compiler.TruffleCompilationIdentifier createCompilationIdentifier(org.graalvm.compiler.truffle.common.CompilableTruffleAST);
    descriptor: (Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;)Lorg/graalvm/compiler/truffle/compiler/TruffleCompilationIdentifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // org.graalvm.compiler.truffle.common.CompilableTruffleAST optimizedCallTarget
         0: .line 99
            new com.oracle.svm.truffle.SubstrateTruffleCompilationIdentifier
            dup
            aload 1 /* optimizedCallTarget */
            checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
            invokespecial com.oracle.svm.truffle.SubstrateTruffleCompilationIdentifier.<init>:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
            areturn
        end local 1 // org.graalvm.compiler.truffle.common.CompilableTruffleAST optimizedCallTarget
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    1     1  optimizedCallTarget  Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;
    MethodParameters:
                     Name  Flags
      optimizedCallTarget  

  public org.graalvm.compiler.debug.DebugContext createDebugContext(org.graalvm.compiler.options.OptionValues, org.graalvm.compiler.core.common.CompilationIdentifier, org.graalvm.compiler.truffle.common.CompilableTruffleAST, java.io.PrintStream);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;Ljava/io/PrintStream;)Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // org.graalvm.compiler.options.OptionValues options
        start local 2 // org.graalvm.compiler.core.common.CompilationIdentifier compilationId
        start local 3 // org.graalvm.compiler.truffle.common.CompilableTruffleAST callTarget
        start local 4 // java.io.PrintStream logStream
         0: .line 104
            invokestatic com.oracle.svm.graal.GraalSupport.get:()Lcom/oracle/svm/graal/GraalSupport;
            aload 1 /* options */
            aload 2 /* compilationId */
            aload 3 /* callTarget */
            aload 4 /* logStream */
            invokevirtual com.oracle.svm.graal.GraalSupport.openDebugContext:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Ljava/lang/Object;Ljava/io/PrintStream;)Lorg/graalvm/compiler/debug/DebugContext;
            areturn
        end local 4 // java.io.PrintStream logStream
        end local 3 // org.graalvm.compiler.truffle.common.CompilableTruffleAST callTarget
        end local 2 // org.graalvm.compiler.core.common.CompilationIdentifier compilationId
        end local 1 // org.graalvm.compiler.options.OptionValues options
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    1     1        options  Lorg/graalvm/compiler/options/OptionValues;
            0    1     2  compilationId  Lorg/graalvm/compiler/core/common/CompilationIdentifier;
            0    1     3     callTarget  Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;
            0    1     4      logStream  Ljava/io/PrintStream;
    MethodParameters:
               Name  Flags
      options        
      compilationId  
      callTarget     
      logStream      

  protected org.graalvm.compiler.debug.DiagnosticsOutputDirectory getDebugOutputDirectory();
    descriptor: ()Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
         0: .line 109
            invokestatic com.oracle.svm.graal.GraalSupport.get:()Lcom/oracle/svm/graal/GraalSupport;
            invokevirtual com.oracle.svm.graal.GraalSupport.getDebugOutputDirectory:()Lorg/graalvm/compiler/debug/DiagnosticsOutputDirectory;
            areturn
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;

  protected java.util.Map<org.graalvm.compiler.core.CompilationWrapper$ExceptionAction, java.lang.Integer> getCompilationProblemsPerAction();
    descriptor: ()Ljava/util/Map;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
         0: .line 114
            invokestatic com.oracle.svm.graal.GraalSupport.get:()Lcom/oracle/svm/graal/GraalSupport;
            invokevirtual com.oracle.svm.graal.GraalSupport.getCompilationProblemsPerAction:()Ljava/util/Map;
            areturn
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
    Signature: ()Ljava/util/Map<Lorg/graalvm/compiler/core/CompilationWrapper$ExceptionAction;Ljava/lang/Integer;>;

  protected jdk.vm.ci.code.InstalledCode createInstalledCode(org.graalvm.compiler.truffle.common.CompilableTruffleAST);
    descriptor: (Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;)Ljdk/vm/ci/code/InstalledCode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
        start local 1 // org.graalvm.compiler.truffle.common.CompilableTruffleAST compilable
         0: .line 119
            aload 1 /* compilable */
            checkcast com.oracle.svm.truffle.api.SubstrateCompilableTruffleAST
            invokeinterface com.oracle.svm.truffle.api.SubstrateCompilableTruffleAST.createPreliminaryInstalledCode:()Ljdk/vm/ci/code/InstalledCode;
            areturn
        end local 1 // org.graalvm.compiler.truffle.common.CompilableTruffleAST compilable
        end local 0 // com.oracle.svm.truffle.api.SubstrateTruffleCompilerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/svm/truffle/api/SubstrateTruffleCompilerImpl;
            0    1     1  compilable  Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;
    MethodParameters:
            Name  Flags
      compilable  
}
SourceFile: "SubstrateTruffleCompilerImpl.java"
InnerClasses:
  public Support = com.oracle.svm.truffle.TruffleFeature$Support of com.oracle.svm.truffle.TruffleFeature
  public final ExceptionAction = org.graalvm.compiler.core.CompilationWrapper$ExceptionAction of org.graalvm.compiler.core.CompilationWrapper