public interface org.graalvm.compiler.hotspot.HotSpotLIRGenerator extends org.graalvm.compiler.lir.gen.LIRGeneratorTool
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.compiler.hotspot.HotSpotLIRGenerator
  super_class: java.lang.Object
{
  public abstract void emitTailcall(jdk.vm.ci.meta.Value[], jdk.vm.ci.meta.Value);
    descriptor: ([Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      args     
      address  

  public abstract void emitDeoptimizeCaller(jdk.vm.ci.meta.DeoptimizationAction, jdk.vm.ci.meta.DeoptimizationReason);
    descriptor: (Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
        Name  Flags
      action  
      reason  

  public abstract void emitDeoptimizeWithExceptionInCaller(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
           Name  Flags
      exception  

  public jdk.vm.ci.meta.Value emitLoadObjectAddress(jdk.vm.ci.meta.Constant);
    descriptor: (Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant constant
         0: .line 85
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to load an object address is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 1 // jdk.vm.ci.meta.Constant constant
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1  constant  Ljdk/vm/ci/meta/Constant;
    MethodParameters:
          Name  Flags
      constant  

  public jdk.vm.ci.meta.Value emitLoadMetaspaceAddress(jdk.vm.ci.meta.Constant, org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction);
    descriptor: (Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant constant
        start local 2 // org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction action
         0: .line 96
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to load a metaspace address is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 2 // org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction action
        end local 1 // jdk.vm.ci.meta.Constant constant
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1  constant  Ljdk/vm/ci/meta/Constant;
            0    1     2    action  Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
    MethodParameters:
          Name  Flags
      constant  
      action    

  public jdk.vm.ci.meta.Value emitLoadConfigValue(org.graalvm.compiler.hotspot.HotSpotMarkId, org.graalvm.compiler.core.common.LIRKind);
    descriptor: (Lorg/graalvm/compiler/hotspot/HotSpotMarkId;Lorg/graalvm/compiler/core/common/LIRKind;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // org.graalvm.compiler.hotspot.HotSpotMarkId markId
        start local 2 // org.graalvm.compiler.core.common.LIRKind kind
         0: .line 107
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to load a config value is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 2 // org.graalvm.compiler.core.common.LIRKind kind
        end local 1 // org.graalvm.compiler.hotspot.HotSpotMarkId markId
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1  markId  Lorg/graalvm/compiler/hotspot/HotSpotMarkId;
            0    1     2    kind  Lorg/graalvm/compiler/core/common/LIRKind;
    MethodParameters:
        Name  Flags
      markId  
      kind    

  public jdk.vm.ci.meta.Value emitObjectConstantRetrieval(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant constant
        start local 2 // jdk.vm.ci.meta.Value constantDescription
        start local 3 // org.graalvm.compiler.lir.LIRFrameState frameState
         0: .line 120
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to resolve an object constant is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 3 // org.graalvm.compiler.lir.LIRFrameState frameState
        end local 2 // jdk.vm.ci.meta.Value constantDescription
        end local 1 // jdk.vm.ci.meta.Constant constant
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1             constant  Ljdk/vm/ci/meta/Constant;
            0    1     2  constantDescription  Ljdk/vm/ci/meta/Value;
            0    1     3           frameState  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
                     Name  Flags
      constant             
      constantDescription  
      frameState           

  public jdk.vm.ci.meta.Value emitResolveDynamicInvoke(jdk.vm.ci.meta.Constant, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant constant
        start local 2 // org.graalvm.compiler.lir.LIRFrameState frameState
         0: .line 131
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to resolve a dynamic constant is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 2 // org.graalvm.compiler.lir.LIRFrameState frameState
        end local 1 // jdk.vm.ci.meta.Constant constant
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1    constant  Ljdk/vm/ci/meta/Constant;
            0    1     2  frameState  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
            Name  Flags
      constant    
      frameState  

  public jdk.vm.ci.meta.Value emitMetaspaceConstantRetrieval(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant constant
        start local 2 // jdk.vm.ci.meta.Value constantDescription
        start local 3 // org.graalvm.compiler.lir.LIRFrameState frameState
         0: .line 144
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to resolve a metaspace constant is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 3 // org.graalvm.compiler.lir.LIRFrameState frameState
        end local 2 // jdk.vm.ci.meta.Value constantDescription
        end local 1 // jdk.vm.ci.meta.Constant constant
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1             constant  Ljdk/vm/ci/meta/Constant;
            0    1     2  constantDescription  Ljdk/vm/ci/meta/Value;
            0    1     3           frameState  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
                     Name  Flags
      constant             
      constantDescription  
      frameState           

  public jdk.vm.ci.meta.Value emitResolveMethodAndLoadCounters(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant method
        start local 2 // jdk.vm.ci.meta.Value klassHint
        start local 3 // jdk.vm.ci.meta.Value methodDescription
        start local 4 // org.graalvm.compiler.lir.LIRFrameState frameState
         0: .line 160
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to resolve a method and load counters is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 4 // org.graalvm.compiler.lir.LIRFrameState frameState
        end local 3 // jdk.vm.ci.meta.Value methodDescription
        end local 2 // jdk.vm.ci.meta.Value klassHint
        end local 1 // jdk.vm.ci.meta.Constant method
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0               this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1             method  Ljdk/vm/ci/meta/Constant;
            0    1     2          klassHint  Ljdk/vm/ci/meta/Value;
            0    1     3  methodDescription  Ljdk/vm/ci/meta/Value;
            0    1     4         frameState  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
                   Name  Flags
      method             
      klassHint          
      methodDescription  
      frameState         

  public jdk.vm.ci.meta.Value emitKlassInitializationAndRetrieval(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Constant constant
        start local 2 // jdk.vm.ci.meta.Value constantDescription
        start local 3 // org.graalvm.compiler.lir.LIRFrameState frameState
         0: .line 175
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to initialize a class is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 3 // org.graalvm.compiler.lir.LIRFrameState frameState
        end local 2 // jdk.vm.ci.meta.Value constantDescription
        end local 1 // jdk.vm.ci.meta.Constant constant
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;
            0    1     1             constant  Ljdk/vm/ci/meta/Constant;
            0    1     2  constantDescription  Ljdk/vm/ci/meta/Value;
            0    1     3           frameState  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
                     Name  Flags
      constant             
      constantDescription  
      frameState           

  public jdk.vm.ci.meta.Value emitRandomSeed();
    descriptor: ()Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
         0: .line 184
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Emitting code to return a random seed is not currently supported on %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 0 // org.graalvm.compiler.hotspot.HotSpotLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;

  public abstract org.graalvm.compiler.lir.VirtualStackSlot getLockSlot(int);
    descriptor: (I)Lorg/graalvm/compiler/lir/VirtualStackSlot;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
           Name  Flags
      lockDepth  

  public abstract org.graalvm.compiler.hotspot.meta.HotSpotProviders getProviders();
    descriptor: ()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public org.graalvm.compiler.core.common.spi.CodeGenProviders getProviders();
    descriptor: ()Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokeinterface org.graalvm.compiler.hotspot.HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "HotSpotLIRGenerator.java"