public interface jdk.vm.ci.code.CodeCacheProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: jdk.vm.ci.code.CodeCacheProvider
  super_class: java.lang.Object
{
  public jdk.vm.ci.code.InstalledCode addCode(jdk.vm.ci.meta.ResolvedJavaMethod, jdk.vm.ci.code.CompiledCode, jdk.vm.ci.meta.SpeculationLog, jdk.vm.ci.code.InstalledCode);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CompiledCode;Ljdk/vm/ci/meta/SpeculationLog;Ljdk/vm/ci/code/InstalledCode;)Ljdk/vm/ci/code/InstalledCode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // jdk.vm.ci.code.CodeCacheProvider this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        start local 2 // jdk.vm.ci.code.CompiledCode compiledCode
        start local 3 // jdk.vm.ci.meta.SpeculationLog log
        start local 4 // jdk.vm.ci.code.InstalledCode installedCode
         0: .line 49
            aload 0 /* this */
            aload 1 /* method */
            aload 2 /* compiledCode */
            aload 4 /* installedCode */
            aload 3 /* log */
            iconst_0
            invokeinterface jdk.vm.ci.code.CodeCacheProvider.installCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CompiledCode;Ljdk/vm/ci/code/InstalledCode;Ljdk/vm/ci/meta/SpeculationLog;Z)Ljdk/vm/ci/code/InstalledCode;
            areturn
        end local 4 // jdk.vm.ci.code.InstalledCode installedCode
        end local 3 // jdk.vm.ci.meta.SpeculationLog log
        end local 2 // jdk.vm.ci.code.CompiledCode compiledCode
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // jdk.vm.ci.code.CodeCacheProvider this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Ljdk/vm/ci/code/CodeCacheProvider;
            0    1     1         method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0    1     2   compiledCode  Ljdk/vm/ci/code/CompiledCode;
            0    1     3            log  Ljdk/vm/ci/meta/SpeculationLog;
            0    1     4  installedCode  Ljdk/vm/ci/code/InstalledCode;
    MethodParameters:
               Name  Flags
      method         
      compiledCode   
      log            
      installedCode  

  public jdk.vm.ci.code.InstalledCode setDefaultCode(jdk.vm.ci.meta.ResolvedJavaMethod, jdk.vm.ci.code.CompiledCode);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CompiledCode;)Ljdk/vm/ci/code/InstalledCode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // jdk.vm.ci.code.CodeCacheProvider this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        start local 2 // jdk.vm.ci.code.CompiledCode compiledCode
         0: .line 63
            aload 0 /* this */
            aload 1 /* method */
            aload 2 /* compiledCode */
            aconst_null
            aconst_null
            iconst_1
            invokeinterface jdk.vm.ci.code.CodeCacheProvider.installCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CompiledCode;Ljdk/vm/ci/code/InstalledCode;Ljdk/vm/ci/meta/SpeculationLog;Z)Ljdk/vm/ci/code/InstalledCode;
            areturn
        end local 2 // jdk.vm.ci.code.CompiledCode compiledCode
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // jdk.vm.ci.code.CodeCacheProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Ljdk/vm/ci/code/CodeCacheProvider;
            0    1     1        method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0    1     2  compiledCode  Ljdk/vm/ci/code/CompiledCode;
    MethodParameters:
              Name  Flags
      method        
      compiledCode  

  public abstract jdk.vm.ci.code.InstalledCode installCode(jdk.vm.ci.meta.ResolvedJavaMethod, jdk.vm.ci.code.CompiledCode, jdk.vm.ci.code.InstalledCode, jdk.vm.ci.meta.SpeculationLog, boolean);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CompiledCode;Ljdk/vm/ci/code/InstalledCode;Ljdk/vm/ci/meta/SpeculationLog;Z)Ljdk/vm/ci/code/InstalledCode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      method         
      compiledCode   
      installedCode  
      log            
      isDefault      

  public abstract void invalidateInstalledCode(jdk.vm.ci.code.InstalledCode);
    descriptor: (Ljdk/vm/ci/code/InstalledCode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      installedCode  

  public java.lang.String getMarkName(jdk.vm.ci.code.site.Mark);
    descriptor: (Ljdk/vm/ci/code/site/Mark;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.vm.ci.code.CodeCacheProvider this
        start local 1 // jdk.vm.ci.code.site.Mark mark
         0: .line 96
            aload 1 /* mark */
            getfield jdk.vm.ci.code.site.Mark.id:Ljava/lang/Object;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // jdk.vm.ci.code.site.Mark mark
        end local 0 // jdk.vm.ci.code.CodeCacheProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/code/CodeCacheProvider;
            0    1     1  mark  Ljdk/vm/ci/code/site/Mark;
    MethodParameters:
      Name  Flags
      mark  

  public java.lang.String getTargetName(jdk.vm.ci.code.site.Call);
    descriptor: (Ljdk/vm/ci/code/site/Call;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.vm.ci.code.CodeCacheProvider this
        start local 1 // jdk.vm.ci.code.site.Call call
         0: .line 103
            aload 1 /* call */
            getfield jdk.vm.ci.code.site.Call.target:Ljdk/vm/ci/meta/InvokeTarget;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // jdk.vm.ci.code.site.Call call
        end local 0 // jdk.vm.ci.code.CodeCacheProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/code/CodeCacheProvider;
            0    1     1  call  Ljdk/vm/ci/code/site/Call;
    MethodParameters:
      Name  Flags
      call  

  public abstract jdk.vm.ci.code.RegisterConfig getRegisterConfig();
    descriptor: ()Ljdk/vm/ci/code/RegisterConfig;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract int getMinimumOutgoingSize();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract jdk.vm.ci.code.TargetDescription getTarget();
    descriptor: ()Ljdk/vm/ci/code/TargetDescription;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract jdk.vm.ci.meta.SpeculationLog createSpeculationLog();
    descriptor: ()Ljdk/vm/ci/meta/SpeculationLog;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract long getMaxCallTargetOffset(long);
    descriptor: (J)J
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      address  

  public abstract boolean shouldDebugNonSafepoints();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
}
SourceFile: "CodeCacheProvider.java"