public class org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext extends org.graalvm.compiler.replacements.PEGraphDecoder$PENonAppendGraphBuilderContext
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext
  super_class: org.graalvm.compiler.replacements.PEGraphDecoder$PENonAppendGraphBuilderContext
{
  protected org.graalvm.compiler.nodes.FixedWithNextNode insertBefore;
    descriptor: Lorg/graalvm/compiler/nodes/FixedWithNextNode;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.nodes.ValueNode pushedNode;
    descriptor: Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0004) ACC_PROTECTED

  final org.graalvm.compiler.replacements.PEGraphDecoder this$0;
    descriptor: Lorg/graalvm/compiler/replacements/PEGraphDecoder;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  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 572
            ldc Lorg/graalvm/compiler/replacements/PEGraphDecoder;
            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.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.replacements.PEGraphDecoder, org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope, org.graalvm.compiler.nodes.FixedWithNextNode);
    descriptor: (Lorg/graalvm/compiler/replacements/PEGraphDecoder;Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEMethodScope;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
        start local 2 // org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope inlineScope
        start local 3 // org.graalvm.compiler.nodes.FixedWithNextNode insertBefore
         0: .line 576
            aload 0 /* this */
            aload 1
            putfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.this$0:Lorg/graalvm/compiler/replacements/PEGraphDecoder;
         1: .line 577
            aload 0 /* this */
            aload 1
            aload 2 /* inlineScope */
            aload 2 /* inlineScope */
            getfield org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope.invokeData:Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
            ifnull 2
            aload 2 /* inlineScope */
            getfield org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope.invokeData:Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            goto 3
      StackMap locals: uninitialized-this org.graalvm.compiler.replacements.PEGraphDecoder org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope org.graalvm.compiler.nodes.FixedWithNextNode
      StackMap stack: uninitialized-this org.graalvm.compiler.replacements.PEGraphDecoder org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope
         2: aconst_null
      StackMap locals: uninitialized-this org.graalvm.compiler.replacements.PEGraphDecoder org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope org.graalvm.compiler.nodes.FixedWithNextNode
      StackMap stack: uninitialized-this org.graalvm.compiler.replacements.PEGraphDecoder org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope org.graalvm.compiler.nodes.Invoke
         3: invokespecial org.graalvm.compiler.replacements.PEGraphDecoder$PENonAppendGraphBuilderContext.<init>:(Lorg/graalvm/compiler/replacements/PEGraphDecoder;Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEMethodScope;Lorg/graalvm/compiler/nodes/Invoke;)V
         4: .line 578
            aload 0 /* this */
            aload 3 /* insertBefore */
            putfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.insertBefore:Lorg/graalvm/compiler/nodes/FixedWithNextNode;
         5: .line 579
            return
        end local 3 // org.graalvm.compiler.nodes.FixedWithNextNode insertBefore
        end local 2 // org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope inlineScope
        end local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEPluginGraphBuilderContext;
            0    6     2   inlineScope  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEMethodScope;
            0    6     3  insertBefore  Lorg/graalvm/compiler/nodes/FixedWithNextNode;
    MethodParameters:
              Name  Flags
      this$0        final
      inlineScope   
      insertBefore  

  public void push(jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
        start local 1 // jdk.vm.ci.meta.JavaKind kind
        start local 2 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 583
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.pushedNode:Lorg/graalvm/compiler/nodes/ValueNode;
            ifnull 2
         1: .line 584
            ldc "Only one push is supported"
            invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         2: .line 586
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            putfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.pushedNode:Lorg/graalvm/compiler/nodes/ValueNode;
         3: .line 587
            return
        end local 2 // org.graalvm.compiler.nodes.ValueNode value
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEPluginGraphBuilderContext;
            0    4     1   kind  Ljdk/vm/ci/meta/JavaKind;
            0    4     2  value  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
       Name  Flags
      kind   
      value  

  public void setStateAfter(org.graalvm.compiler.nodes.StateSplit);
    descriptor: (Lorg/graalvm/compiler/nodes/StateSplit;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
        start local 1 // org.graalvm.compiler.nodes.StateSplit sideEffect
         0: .line 591
            getstatic org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.$assertionsDisabled:Z
            ifne 1
            aload 1 /* sideEffect */
            invokeinterface org.graalvm.compiler.nodes.StateSplit.hasSideEffect:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.FrameState
            dup
            bipush -2
            invokespecial org.graalvm.compiler.nodes.FrameState.<init>:(I)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FrameState
            astore 2 /* stateAfter */
        start local 2 // org.graalvm.compiler.nodes.FrameState stateAfter
         2: .line 593
            aload 1 /* sideEffect */
            aload 2 /* stateAfter */
            invokeinterface org.graalvm.compiler.nodes.StateSplit.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
         3: .line 594
            return
        end local 2 // org.graalvm.compiler.nodes.FrameState stateAfter
        end local 1 // org.graalvm.compiler.nodes.StateSplit sideEffect
        end local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEPluginGraphBuilderContext;
            0    4     1  sideEffect  Lorg/graalvm/compiler/nodes/StateSplit;
            2    4     2  stateAfter  Lorg/graalvm/compiler/nodes/FrameState;
    MethodParameters:
            Name  Flags
      sideEffect  

  public <T extends org.graalvm.compiler.nodes.ValueNode> T append();
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
        start local 1 // org.graalvm.compiler.nodes.ValueNode v
         0: .line 599
            aload 1 /* v */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            ifnull 2
         1: .line 600
            aload 1 /* v */
            areturn
         2: .line 602
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2
            aconst_null
            astore 3
         3: aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.withNodeSoucePosition:()Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 4 /* position */
        start local 4 // org.graalvm.compiler.debug.DebugCloseable position
         4: .line 603
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 1 /* v */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUniqueWithInputs:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 5 /* added */
        start local 5 // org.graalvm.compiler.nodes.ValueNode added
         5: .line 604
            aload 5 /* added */
            aload 1 /* v */
            if_acmpne 7
         6: .line 605
            aload 0 /* this */
            aload 1 /* v */
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.updateLastInstruction:(Lorg/graalvm/compiler/nodes/ValueNode;)V
         7: .line 607
      StackMap locals: org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext org.graalvm.compiler.nodes.ValueNode java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 5 /* added */
         8: .line 608
            aload 4 /* position */
            ifnull 9
            aload 4 /* position */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
         9: .line 607
      StackMap locals:
      StackMap stack: org.graalvm.compiler.nodes.ValueNode
            areturn
        end local 5 // org.graalvm.compiler.nodes.ValueNode added
      StackMap locals: org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext org.graalvm.compiler.nodes.ValueNode java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 608
            aload 4 /* position */
            ifnull 12
            aload 4 /* position */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 4 // org.graalvm.compiler.debug.DebugCloseable position
      StackMap locals:
      StackMap stack:
        12: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 3
            aload 2
            ifnonnull 14
            aload 3
            astore 2
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 2
            aload 3
            if_acmpeq 15
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        15: aload 2
            athrow
        end local 1 // org.graalvm.compiler.nodes.ValueNode v
        end local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEPluginGraphBuilderContext;
            0   16     1         v  TT;
            4   12     4  position  Lorg/graalvm/compiler/debug/DebugCloseable;
            5   10     5     added  TT;
      Exception table:
        from    to  target  type
           4     8      10  any
           3     9      13  any
          10    13      13  any
    Signature: <T:Lorg/graalvm/compiler/nodes/ValueNode;>(TT;)TT;
    MethodParameters:
      Name  Flags
      v     

  private org.graalvm.compiler.debug.DebugCloseable withNodeSoucePosition();
    descriptor: ()Lorg/graalvm/compiler/debug/DebugCloseable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
         0: .line 612
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
            ifeq 4
         1: .line 613
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.methodScope:Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEMethodScope;
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope.getCallerBytecodePosition:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
            astore 1 /* callerBytecodePosition */
        start local 1 // org.graalvm.compiler.graph.NodeSourcePosition callerBytecodePosition
         2: .line 614
            aload 1 /* callerBytecodePosition */
            ifnull 4
         3: .line 615
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 1 /* callerBytecodePosition */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.withNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)Lorg/graalvm/compiler/debug/DebugCloseable;
            areturn
        end local 1 // org.graalvm.compiler.graph.NodeSourcePosition callerBytecodePosition
         4: .line 618
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    5     0                    this  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEPluginGraphBuilderContext;
            2    4     1  callerBytecodePosition  Lorg/graalvm/compiler/graph/NodeSourcePosition;

  private <T extends org.graalvm.compiler.nodes.ValueNode> void updateLastInstruction();
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
        start local 1 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 622
            aload 1 /* value */
            instanceof org.graalvm.compiler.nodes.FixedWithNextNode
            ifeq 4
         1: .line 623
            aload 1 /* value */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            astore 2 /* fixed */
        start local 2 // org.graalvm.compiler.nodes.FixedWithNextNode fixed
         2: .line 624
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.this$0:Lorg/graalvm/compiler/replacements/PEGraphDecoder;
            invokestatic org.graalvm.compiler.replacements.PEGraphDecoder.access$1:(Lorg/graalvm/compiler/replacements/PEGraphDecoder;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext.insertBefore:Lorg/graalvm/compiler/nodes/FixedWithNextNode;
            aload 2 /* fixed */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
        end local 2 // org.graalvm.compiler.nodes.FixedWithNextNode fixed
         3: .line 625
            goto 6
      StackMap locals:
      StackMap stack:
         4: aload 1 /* value */
            instanceof org.graalvm.compiler.nodes.FixedNode
            ifeq 6
         5: .line 627
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
         6: .line 629
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.ValueNode value
        end local 0 // org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/graalvm/compiler/replacements/PEGraphDecoder$PEPluginGraphBuilderContext;
            0    7     1  value  TT;
            2    3     2  fixed  Lorg/graalvm/compiler/nodes/FixedWithNextNode;
    Signature: <T:Lorg/graalvm/compiler/nodes/ValueNode;>(TT;)V
    MethodParameters:
       Name  Flags
      value  
}
SourceFile: "PEGraphDecoder.java"
NestHost: org.graalvm.compiler.replacements.PEGraphDecoder
InnerClasses:
  protected InvokeData = org.graalvm.compiler.nodes.GraphDecoder$InvokeData of org.graalvm.compiler.nodes.GraphDecoder
  protected PEMethodScope = org.graalvm.compiler.replacements.PEGraphDecoder$PEMethodScope of org.graalvm.compiler.replacements.PEGraphDecoder
  protected PENonAppendGraphBuilderContext = org.graalvm.compiler.replacements.PEGraphDecoder$PENonAppendGraphBuilderContext of org.graalvm.compiler.replacements.PEGraphDecoder
  protected PEPluginGraphBuilderContext = org.graalvm.compiler.replacements.PEGraphDecoder$PEPluginGraphBuilderContext of org.graalvm.compiler.replacements.PEGraphDecoder