public interface org.graalvm.compiler.nodes.Invoke extends org.graalvm.compiler.nodes.StateSplit, org.graalvm.compiler.nodes.spi.Lowerable, org.graalvm.compiler.nodes.DeoptimizingNode$DeoptDuring, org.graalvm.compiler.nodes.FixedNodeInterface, org.graalvm.compiler.nodes.Invokable
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.compiler.nodes.Invoke
  super_class: java.lang.Object
{
  public static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1019) ACC_PUBLIC, 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 36
            ldc Lorg/graalvm/compiler/nodes/Invoke;
            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.nodes.Invoke.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public abstract org.graalvm.compiler.nodes.FixedNode next();
    descriptor: ()Lorg/graalvm/compiler/nodes/FixedNode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setNext(org.graalvm.compiler.nodes.FixedNode);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x     

  public abstract org.graalvm.compiler.nodes.CallTargetNode callTarget();
    descriptor: ()Lorg/graalvm/compiler/nodes/CallTargetNode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

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

  public abstract org.graalvm.compiler.graph.Node predecessor();
    descriptor: ()Lorg/graalvm/compiler/graph/Node;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract org.graalvm.compiler.nodes.ValueNode classInit();
    descriptor: ()Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setClassInit(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      node  

  public abstract void intrinsify(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      node  

  public abstract boolean useForInlining();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setUseForInlining(boolean);
    descriptor: (Z)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      value  

  public abstract boolean isPolymorphic();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setPolymorphic(boolean);
    descriptor: (Z)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      value  

  public jdk.vm.ci.meta.ResolvedJavaMethod getTargetMethod();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.Invoke this
         0: .line 68
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            ifnull 1
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            invokevirtual org.graalvm.compiler.nodes.CallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.ResolvedJavaMethod
         2: areturn
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/nodes/Invoke;

  public jdk.vm.ci.meta.ResolvedJavaMethod getContextMethod();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.Invoke this
         0: .line 79
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            astore 1 /* state */
        start local 1 // org.graalvm.compiler.nodes.FrameState state
         1: .line 80
            aload 1 /* state */
            ifnonnull 3
         2: .line 81
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.stateDuring:()Lorg/graalvm/compiler/nodes/FrameState;
            astore 1 /* state */
         3: .line 83
      StackMap locals: org.graalvm.compiler.nodes.FrameState
      StackMap stack:
            aload 1 /* state */
            invokevirtual org.graalvm.compiler.nodes.FrameState.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            areturn
        end local 1 // org.graalvm.compiler.nodes.FrameState state
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/graalvm/compiler/nodes/Invoke;
            1    4     1  state  Lorg/graalvm/compiler/nodes/FrameState;

  public jdk.vm.ci.meta.ResolvedJavaType getContextType();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.Invoke this
         0: .line 93
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.getContextMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 1 /* contextMethod */
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod contextMethod
         1: .line 94
            aload 1 /* contextMethod */
            ifnonnull 3
         2: .line 95
            aconst_null
            areturn
         3: .line 97
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaMethod
      StackMap stack:
            aload 1 /* contextMethod */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            areturn
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod contextMethod
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/graalvm/compiler/nodes/Invoke;
            1    4     1  contextMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;

  public void computeStateDuring(org.graalvm.compiler.nodes.FrameState);
    descriptor: (Lorg/graalvm/compiler/nodes/FrameState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.Invoke this
        start local 1 // org.graalvm.compiler.nodes.FrameState stateAfter
         0: .line 102
            aload 1 /* stateAfter */
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.bci:()I
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            invokevirtual org.graalvm.compiler.nodes.FixedNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual org.graalvm.compiler.nodes.FrameState.duplicateModifiedDuringCall:(ILjdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/nodes/FrameState;
            astore 2 /* newStateDuring */
        start local 2 // org.graalvm.compiler.nodes.FrameState newStateDuring
         1: .line 103
            aload 0 /* this */
            aload 2 /* newStateDuring */
            invokeinterface org.graalvm.compiler.nodes.Invoke.setStateDuring:(Lorg/graalvm/compiler/nodes/FrameState;)V
         2: .line 104
            return
        end local 2 // org.graalvm.compiler.nodes.FrameState newStateDuring
        end local 1 // org.graalvm.compiler.nodes.FrameState stateAfter
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/graalvm/compiler/nodes/Invoke;
            0    3     1      stateAfter  Lorg/graalvm/compiler/nodes/FrameState;
            1    3     2  newStateDuring  Lorg/graalvm/compiler/nodes/FrameState;
    MethodParameters:
            Name  Flags
      stateAfter  

  public org.graalvm.compiler.nodes.ValueNode getReceiver();
    descriptor: ()Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.Invoke this
         0: .line 107
            getstatic org.graalvm.compiler.nodes.Invoke.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.getInvokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
            invokevirtual org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.hasReceiver:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            invokevirtual org.graalvm.compiler.nodes.CallTargetNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
            iconst_0
            invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            areturn
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/nodes/Invoke;

  public jdk.vm.ci.meta.ResolvedJavaType getReceiverType();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.Invoke this
         0: .line 112
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.getReceiver:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.type.StampTool.typeOrNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 1 /* receiverType */
        start local 1 // jdk.vm.ci.meta.ResolvedJavaType receiverType
         1: .line 113
            aload 1 /* receiverType */
            ifnonnull 3
         2: .line 114
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 1 /* receiverType */
         3: .line 116
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
            aload 1 /* receiverType */
            areturn
        end local 1 // jdk.vm.ci.meta.ResolvedJavaType receiverType
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/nodes/Invoke;
            1    4     1  receiverType  Ljdk/vm/ci/meta/ResolvedJavaType;

  public org.graalvm.compiler.nodes.CallTargetNode$InvokeKind getInvokeKind();
    descriptor: ()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.Invoke this
         0: .line 120
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            invokevirtual org.graalvm.compiler.nodes.CallTargetNode.invokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
            areturn
        end local 0 // org.graalvm.compiler.nodes.Invoke this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/Invoke;
}
SourceFile: "Invoke.java"
InnerClasses:
  public final InvokeKind = org.graalvm.compiler.nodes.CallTargetNode$InvokeKind of org.graalvm.compiler.nodes.CallTargetNode
  public abstract DeoptDuring = org.graalvm.compiler.nodes.DeoptimizingNode$DeoptDuring of org.graalvm.compiler.nodes.DeoptimizingNode