public class org.graalvm.compiler.nodes.GraphDecoder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.nodes.GraphDecoder
  super_class: java.lang.Object
{
  private static final org.graalvm.compiler.debug.TimerKey MakeSuccessorStubsTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.debug.TimerKey ReadPropertiesTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected final jdk.vm.ci.code.Architecture architecture;
    descriptor: Ljdk/vm/ci/code/Architecture;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.graalvm.compiler.nodes.StructuredGraph graph;
    descriptor: Lorg/graalvm/compiler/nodes/StructuredGraph;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.graalvm.compiler.options.OptionValues options;
    descriptor: Lorg/graalvm/compiler/options/OptionValues;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.graalvm.compiler.debug.DebugContext debug;
    descriptor: Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private final org.graalvm.collections.EconomicMap<org.graalvm.compiler.graph.NodeClass<?>, java.util.ArrayDeque<org.graalvm.compiler.graph.Node>> reusableFloatingNodes;
    descriptor: Lorg/graalvm/collections/EconomicMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/graph/NodeClass<*>;Ljava/util/ArrayDeque<Lorg/graalvm/compiler/graph/Node;>;>;

  public static final boolean DUMP_DURING_FIXED_NODE_PROCESSING;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  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=2, locals=0, args_size=0
         0: .line 88
            ldc Lorg/graalvm/compiler/nodes/GraphDecoder;
            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.GraphDecoder.$assertionsDisabled:Z
         3: .line 466
            ldc "PartialEvaluation-MakeSuccessorStubs"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            ldc "Time spent in making successor stubs for the PE."
            invokeinterface org.graalvm.compiler.debug.TimerKey.doc:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.nodes.GraphDecoder.MakeSuccessorStubsTimer:Lorg/graalvm/compiler/debug/TimerKey;
         4: .line 467
            ldc "PartialEvaluation-ReadProperties"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            ldc "Time spent in reading node properties in the PE."
            invokeinterface org.graalvm.compiler.debug.TimerKey.doc:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.nodes.GraphDecoder.ReadPropertiesTimer:Lorg/graalvm/compiler/debug/TimerKey;
         5: .line 577
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(jdk.vm.ci.code.Architecture, org.graalvm.compiler.nodes.StructuredGraph);
    descriptor: (Ljdk/vm/ci/code/Architecture;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // jdk.vm.ci.code.Architecture architecture
        start local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
         0: .line 477
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 478
            aload 0 /* this */
            aload 1 /* architecture */
            putfield org.graalvm.compiler.nodes.GraphDecoder.architecture:Ljdk/vm/ci/code/Architecture;
         2: .line 479
            aload 0 /* this */
            aload 2 /* graph */
            putfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
         3: .line 480
            aload 0 /* this */
            aload 2 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            putfield org.graalvm.compiler.nodes.GraphDecoder.options:Lorg/graalvm/compiler/options/OptionValues;
         4: .line 481
            aload 0 /* this */
            aload 2 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            putfield org.graalvm.compiler.nodes.GraphDecoder.debug:Lorg/graalvm/compiler/debug/DebugContext;
         5: .line 482
            aload 0 /* this */
            getstatic org.graalvm.collections.Equivalence.IDENTITY:Lorg/graalvm/collections/Equivalence;
            invokestatic org.graalvm.collections.EconomicMap.create:(Lorg/graalvm/collections/Equivalence;)Lorg/graalvm/collections/EconomicMap;
            putfield org.graalvm.compiler.nodes.GraphDecoder.reusableFloatingNodes:Lorg/graalvm/collections/EconomicMap;
         6: .line 483
            return
        end local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 1 // jdk.vm.ci.code.Architecture architecture
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    7     1  architecture  Ljdk/vm/ci/code/Architecture;
            0    7     2         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
    MethodParameters:
              Name  Flags
      architecture  
      graph         

  public final void decode(org.graalvm.compiler.nodes.EncodedGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/EncodedGraph;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.EncodedGraph encodedGraph
         0: .line 487
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "GraphDecoder"
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 4 /* scope */
        start local 4 // org.graalvm.compiler.debug.DebugContext$Scope scope
         2: .line 488
            new org.graalvm.compiler.nodes.GraphDecoder$MethodScope
            dup
            aload 0 /* this */
            aconst_null
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 1 /* encodedGraph */
            getstatic org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.NONE:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$MethodScope.<init>:(Lorg/graalvm/compiler/nodes/GraphDecoder;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/EncodedGraph;Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;)V
            astore 5 /* methodScope */
        start local 5 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
         3: .line 489
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* methodScope */
            aconst_null
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.createInitialLoopScope:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.decode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
         4: .line 490
            aload 0 /* this */
            aload 5 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.cleanupGraph:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)V
         5: .line 491
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 6
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.verify:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 5 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
         6: .line 492
      StackMap locals: java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack:
            aload 4 /* scope */
            ifnull 14
            aload 4 /* scope */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
            goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: astore 2
            aload 4 /* scope */
            ifnull 8
            aload 4 /* scope */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 4 // org.graalvm.compiler.debug.DebugContext$Scope scope
      StackMap locals:
      StackMap stack:
         8: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 3
            aload 2
            ifnonnull 10
            aload 3
            astore 2
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 2
            aload 3
            if_acmpeq 11
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        11: aload 2
            athrow
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.EncodedGraph
      StackMap stack: java.lang.Throwable
        12: astore 2 /* ex */
        start local 2 // java.lang.Throwable ex
        13: .line 493
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.debug:Lorg/graalvm/compiler/debug/DebugContext;
            aload 2 /* ex */
            invokevirtual org.graalvm.compiler.debug.DebugContext.handle:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            pop
        end local 2 // java.lang.Throwable ex
        14: .line 495
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.EncodedGraph encodedGraph
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   15     1  encodedGraph  Lorg/graalvm/compiler/nodes/EncodedGraph;
            2    8     4         scope  Lorg/graalvm/compiler/debug/DebugContext$Scope;
            3    6     5   methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
           13   14     2            ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2     6       7  any
           1     9       9  any
           0    12      12  Class java.lang.Throwable
    MethodParameters:
              Name  Flags
      encodedGraph  

  protected final org.graalvm.compiler.nodes.GraphDecoder$LoopScope createInitialLoopScope(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.FixedWithNextNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.FixedWithNextNode startNode
         0: .line 498
            new org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            dup
            aload 1 /* methodScope */
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopScope.<init>:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)V
            astore 3 /* loopScope */
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
         1: .line 500
            aload 2 /* startNode */
            ifnull 7
         2: .line 506
            aload 0 /* this */
            aload 3 /* loopScope */
            iconst_1
            aload 2 /* startNode */
            invokestatic org.graalvm.compiler.nodes.AbstractBeginNode.prevBegin:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
         3: .line 508
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 3 /* loopScope */
            iconst_2
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            astore 4 /* firstNode */
        start local 4 // org.graalvm.compiler.nodes.FixedNode firstNode
         4: .line 509
            aload 2 /* startNode */
            aload 4 /* firstNode */
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
         5: .line 510
            aload 3 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iconst_2
            invokevirtual java.util.BitSet.set:(I)V
         6: .line 511
            goto 10
        end local 4 // org.graalvm.compiler.nodes.FixedNode firstNode
         7: .line 512
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScope
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.start:()Lorg/graalvm/compiler/nodes/StartNode;
            astore 4 /* firstNode */
        start local 4 // org.graalvm.compiler.nodes.FixedNode firstNode
         8: .line 513
            aload 0 /* this */
            aload 3 /* loopScope */
            iconst_1
            aload 4 /* firstNode */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
         9: .line 514
            aload 3 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iconst_1
            invokevirtual java.util.BitSet.set:(I)V
        10: .line 516
      StackMap locals: org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 3 /* loopScope */
            areturn
        end local 4 // org.graalvm.compiler.nodes.FixedNode firstNode
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 2 // org.graalvm.compiler.nodes.FixedWithNextNode startNode
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   11     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   11     2    startNode  Lorg/graalvm/compiler/nodes/FixedWithNextNode;
            1   11     3    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            4    7     4    firstNode  Lorg/graalvm/compiler/nodes/FixedNode;
            8   11     4    firstNode  Lorg/graalvm/compiler/nodes/FixedNode;
    MethodParameters:
             Name  Flags
      methodScope  
      startNode    

  protected final void decode(org.graalvm.compiler.nodes.GraphDecoder$LoopScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope initialLoopScope
         0: .line 520
            aload 1 /* initialLoopScope */
            astore 2 /* loopScope */
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
         1: .line 522
            goto 19
         2: .line 523
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScope
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.methodScope:Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            astore 3 /* methodScope */
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
         3: .line 526
            goto 12
         4: .line 529
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$MethodScope
      StackMap stack:
            aload 0 /* this */
            aload 3 /* methodScope */
            aload 2 /* loopScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.processNextNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 2 /* loopScope */
         5: .line 530
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.methodScope:Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            astore 3 /* methodScope */
         6: .line 528
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            invokevirtual java.util.BitSet.isEmpty:()Z
            ifeq 4
         7: .line 537
            aload 2 /* loopScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder$LoopScope.hasIterationsToProcess:()Z
            ifeq 10
         8: .line 538
            aload 2 /* loopScope */
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder$LoopScope.getNextIterationToProcess:(Z)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 2 /* loopScope */
         9: .line 539
            goto 12
        10: .line 540
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            invokestatic org.graalvm.compiler.nodes.GraphDecoder.propagateCreatedNodes:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
        11: .line 541
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 2 /* loopScope */
        12: .line 526
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            ifnonnull 6
        13: .line 548
            aload 3 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 16
        14: .line 549
            new org.graalvm.compiler.nodes.LoopDetector
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 3 /* methodScope */
            invokespecial org.graalvm.compiler.nodes.LoopDetector.<init>:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)V
            astore 4 /* loopDetector */
        start local 4 // org.graalvm.compiler.nodes.LoopDetector loopDetector
        15: .line 550
            aload 4 /* loopDetector */
            invokevirtual org.graalvm.compiler.nodes.LoopDetector.run:()V
        end local 4 // org.graalvm.compiler.nodes.LoopDetector loopDetector
        16: .line 552
      StackMap locals:
      StackMap stack:
            aload 3 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder$MethodScope.isInlinedMethod:()Z
            ifeq 18
        17: .line 553
            aload 0 /* this */
            aload 3 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.finishInlining:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)V
        18: .line 557
      StackMap locals:
      StackMap stack:
            aload 3 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.callerLoopScope:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 2 /* loopScope */
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        19: .line 522
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            ifnonnull 2
        20: .line 559
            return
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope initialLoopScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   21     0              this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   21     1  initialLoopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            1   21     2         loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            3   19     3       methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
           15   16     4      loopDetector  Lorg/graalvm/compiler/nodes/LoopDetector;
    MethodParameters:
                  Name  Flags
      initialLoopScope  

  protected void finishInlining(org.graalvm.compiler.nodes.GraphDecoder$MethodScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope inlineScope
         0: .line 562
            return
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope inlineScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  inlineScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
    MethodParameters:
             Name  Flags
      inlineScope  

  private static void propagateCreatedNodes(org.graalvm.compiler.nodes.GraphDecoder$LoopScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
         0: .line 565
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            ifnull 1
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            if_acmpeq 2
         1: .line 566
      StackMap locals:
      StackMap stack:
            return
         2: .line 570
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 7
         4: .line 571
      StackMap locals: int
      StackMap stack:
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 1 /* i */
            aaload
            ifnonnull 6
         5: .line 572
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 1 /* i */
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 1 /* i */
            aaload
            aastore
         6: .line 570
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            if_icmplt 4
        end local 1 // int i
         8: .line 575
            return
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0  loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            3    8     1          i  I
    MethodParameters:
           Name  Flags
      loopScope  

  protected org.graalvm.compiler.nodes.GraphDecoder$LoopScope processNextNode(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=15, locals=16, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
         0: .line 580
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iconst_0
            invokevirtual java.util.BitSet.nextSetBit:(I)I
            istore 3 /* nodeOrderId */
        start local 3 // int nodeOrderId
         1: .line 581
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iload 3 /* nodeOrderId */
            invokevirtual java.util.BitSet.clear:(I)V
         2: .line 583
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FixedNode
            astore 4 /* node */
        start local 4 // org.graalvm.compiler.nodes.FixedNode node
         3: .line 585
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.isDeleted:()Z
            ifeq 5
         4: .line 586
            aload 2 /* loopScope */
            areturn
         5: .line 597
      StackMap locals: int org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.MergeNode
            ifne 8
         6: .line 598
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.LoopBeginNode
            ifeq 17
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.unrollLoops:()Z
            ifeq 17
         7: .line 599
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifne 17
         8: .line 600
      StackMap locals:
      StackMap stack:
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.AbstractMergeNode
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndCount:()I
            iconst_1
            if_icmpne 17
         9: .line 605
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.AbstractMergeNode
            astore 5 /* merge */
        start local 5 // org.graalvm.compiler.nodes.AbstractMergeNode merge
        10: .line 606
            aload 5 /* merge */
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndAt:(I)Lorg/graalvm/compiler/nodes/EndNode;
            astore 6 /* singleEnd */
        start local 6 // org.graalvm.compiler.nodes.EndNode singleEnd
        11: .line 609
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            aload 6 /* singleEnd */
            invokestatic org.graalvm.compiler.nodes.AbstractBeginNode.prevBegin:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        12: .line 611
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            iconst_1
            iadd
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            astore 7 /* next */
        start local 7 // org.graalvm.compiler.nodes.FixedNode next
        13: .line 612
            aload 6 /* singleEnd */
            aload 7 /* next */
            invokevirtual org.graalvm.compiler.nodes.EndNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
        14: .line 614
            aload 5 /* merge */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.safeDelete:()V
        15: .line 615
            aload 6 /* singleEnd */
            invokevirtual org.graalvm.compiler.nodes.EndNode.safeDelete:()V
        16: .line 616
            aload 2 /* loopScope */
            areturn
        end local 7 // org.graalvm.compiler.nodes.FixedNode next
        end local 6 // org.graalvm.compiler.nodes.EndNode singleEnd
        end local 5 // org.graalvm.compiler.nodes.AbstractMergeNode merge
        17: .line 619
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            astore 5 /* successorAddScope */
        start local 5 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope successorAddScope
        18: .line 620
            iconst_1
            istore 6 /* updatePredecessors */
        start local 6 // boolean updatePredecessors
        19: .line 621
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.LoopExitNode
            ifeq 48
        20: .line 622
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopExits:()Z
            ifne 21
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 46
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iconst_1
            if_icmple 46
        21: .line 629
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScope int
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 7 /* outerScope */
        start local 7 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope outerScope
        22: .line 630
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopExitDuplication:Ljava/util/Deque;
            invokeinterface java.util.Deque.isEmpty:()Z
            ifeq 23
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            iconst_1
            iadd
            goto 24
        23: .line 631
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScope
      StackMap stack:
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopExitDuplication:Ljava/util/Deque;
            invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            iconst_1
            iadd
        24: .line 630
      StackMap locals:
      StackMap stack: int
            istore 8 /* nextIterationNumber */
        start local 8 // int nextIterationNumber
        25: .line 632
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            ifnonnull 26
            aconst_null
            goto 29
        26: .line 633
      StackMap locals: int
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 28
        27: .line 634
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
            goto 29
        28: .line 635
      StackMap locals:
      StackMap stack:
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
        29: .line 632
      StackMap locals:
      StackMap stack: org.graalvm.compiler.graph.Node[]
            astore 9 /* initialCreatedNodes */
        start local 9 // org.graalvm.compiler.graph.Node[] initialCreatedNodes
        30: .line 636
            new org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            dup
            aload 1 /* methodScope */
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iload 8 /* nextIterationNumber */
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.LOOP_EXIT_DUPLICATION:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
        31: .line 637
            aload 9 /* initialCreatedNodes */
        32: .line 638
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
        33: .line 639
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopExitDuplication:Ljava/util/Deque;
        34: .line 640
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopEndDuplication:Ljava/util/Deque;
        35: .line 641
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
        36: .line 642
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.iterationStates:Lorg/graalvm/collections/EconomicMap;
        37: .line 636
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopScope.<init>:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;IIILorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;[Lorg/graalvm/compiler/graph/Node;[Lorg/graalvm/compiler/graph/Node;Ljava/util/Deque;Ljava/util/Deque;Ljava/util/Deque;Lorg/graalvm/collections/EconomicMap;)V
            astore 5 /* successorAddScope */
        38: .line 643
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 5 /* successorAddScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.checkLoopExplosionIteration:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
        39: .line 650
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iconst_0
            invokevirtual java.util.BitSet.nextSetBit:(I)I
            istore 10 /* id */
        start local 10 // int id
        40: goto 43
        41: .line 651
      StackMap locals: org.graalvm.compiler.graph.Node[] int
      StackMap stack:
            aload 5 /* successorAddScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 10 /* id */
            aconst_null
            aastore
        42: .line 650
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iload 10 /* id */
            iconst_1
            iadd
            invokevirtual java.util.BitSet.nextSetBit:(I)I
            istore 10 /* id */
      StackMap locals:
      StackMap stack:
        43: iload 10 /* id */
            ifge 41
        end local 10 // int id
        44: .line 654
            aload 7 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopExitDuplication:Ljava/util/Deque;
            aload 5 /* successorAddScope */
            invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
        end local 9 // org.graalvm.compiler.graph.Node[] initialCreatedNodes
        end local 8 // int nextIterationNumber
        end local 7 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope outerScope
        45: .line 655
            goto 47
        46: .line 656
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 5 /* successorAddScope */
        47: .line 658
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.isNoExplosion:()Z
            istore 6 /* updatePredecessors */
        48: .line 661
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            getfield org.graalvm.compiler.nodes.EncodedGraph.nodeStartOffsets:[I
            iload 3 /* nodeOrderId */
            iaload
            i2l
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.setByteIndex:(J)V
        49: .line 662
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            istore 7 /* typeId */
        start local 7 // int typeId
        50: .line 663
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 51
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            invokevirtual org.graalvm.compiler.nodes.EncodedGraph.getNodeClasses:()[Lorg/graalvm/compiler/graph/NodeClass;
            iload 7 /* typeId */
            aaload
            if_acmpeq 51
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        51: .line 664
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeFixedNodeInputs:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)V
        52: .line 665
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readProperties:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/graph/Node;)V
        53: .line 667
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.IfNode
            ifne 54
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.extended.SwitchNode
            ifeq 56
        54: .line 668
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 5 /* successorAddScope */
            iload 3 /* nodeOrderId */
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.earlyCanonicalization:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/nodes/FixedNode;)Z
            ifeq 56
        55: .line 669
            aload 2 /* loopScope */
            areturn
        56: .line 672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 5 /* successorAddScope */
            aload 4 /* node */
            iload 6 /* updatePredecessors */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeSuccessorStubs:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;Z)V
        57: .line 674
            aload 2 /* loopScope */
            astore 8 /* resultScope */
        start local 8 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope resultScope
        58: .line 675
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.LoopBeginNode
            ifeq 62
        59: .line 676
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 158
        60: .line 677
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.LoopBeginNode
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleLoopExplosionBegin:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/LoopBeginNode;)V
        61: .line 680
            goto 158
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScope
      StackMap stack:
        62: aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.LoopExitNode
            ifeq 68
        63: .line 681
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 66
        64: .line 682
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 5 /* successorAddScope */
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.LoopExitNode
            iload 3 /* nodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleLoopExplosionProxyNodes:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/LoopExitNode;I)V
        65: .line 683
            goto 158
        66: .line 684
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.LoopExitNode
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleProxyNodes:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/LoopExitNode;)V
        67: .line 687
            goto 158
      StackMap locals:
      StackMap stack:
        68: aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.MergeNode
            ifeq 71
        69: .line 688
            aload 0 /* this */
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.MergeNode
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleMergeNode:(Lorg/graalvm/compiler/nodes/MergeNode;)V
        70: .line 689
            goto 158
      StackMap locals:
      StackMap stack:
        71: aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.AbstractEndNode
            ifeq 150
        72: .line 690
            aload 2 /* loopScope */
            astore 9 /* phiInputScope */
        start local 9 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiInputScope
        73: .line 691
            aload 2 /* loopScope */
            astore 10 /* phiNodeScope */
        start local 10 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiNodeScope
        74: .line 692
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 11 /* mergeOrderId */
        start local 11 // int mergeOrderId
        75: .line 694
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.unrollLoops:()Z
            ifeq 82
        76: .line 695
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopExits:()Z
            ifeq 82
        77: .line 696
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopEnds:()Z
            ifne 82
        78: .line 697
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifne 82
        79: .line 698
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.LoopEndNode
            ifeq 82
        80: .line 699
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.trigger:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.LOOP_EXIT_DUPLICATION:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            if_acmpne 82
        81: .line 694
            iconst_1
            goto 83
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int
      StackMap stack:
        82: iconst_0
      StackMap locals:
      StackMap stack: int
        83: istore 12 /* requiresMergeOfOuterLoop */
        start local 12 // boolean requiresMergeOfOuterLoop
        84: .line 701
            iload 12 /* requiresMergeOfOuterLoop */
            ifeq 111
        85: .line 702
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.EndNode
            dup
            invokespecial org.graalvm.compiler.nodes.EndNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 13 /* replacementNode */
        start local 13 // org.graalvm.compiler.nodes.EndNode replacementNode
        86: .line 703
            aload 4 /* node */
            aload 13 /* replacementNode */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
        87: .line 704
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.safeDelete:()V
        88: .line 705
            aload 13 /* replacementNode */
            astore 4 /* node */
        89: .line 714
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            invokeinterface java.util.Deque.isEmpty:()Z
            ifeq 109
        90: .line 716
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            invokeinterface java.util.Deque.isEmpty:()Z
            ifeq 91
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            iconst_1
            iadd
            goto 92
      StackMap locals: int org.graalvm.compiler.nodes.EndNode
      StackMap stack:
        91: aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
        92: istore 14 /* nextIterationNumber */
        start local 14 // int nextIterationNumber
        93: .line 717
            new org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            dup
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iload 14 /* nextIterationNumber */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
        94: .line 718
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.LOOP_BEGIN_UNROLLING:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
        95: .line 719
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 96
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
            goto 97
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.EndNode int
      StackMap stack: new 93 new 93 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger
        96: aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
        97: .line 720
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.EndNode int
      StackMap stack: new 93 new 93 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[]
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
        98: .line 721
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopExitDuplication:Ljava/util/Deque;
        99: .line 722
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopEndDuplication:Ljava/util/Deque;
       100: .line 723
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
       101: .line 724
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.iterationStates:Lorg/graalvm/collections/EconomicMap;
       102: .line 717
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopScope.<init>:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;IIILorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;[Lorg/graalvm/compiler/graph/Node;[Lorg/graalvm/compiler/graph/Node;Ljava/util/Deque;Ljava/util/Deque;Ljava/util/Deque;Lorg/graalvm/collections/EconomicMap;)V
            astore 15 /* outerLoopMergeScope */
        start local 15 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope outerLoopMergeScope
       103: .line 725
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 15 /* outerLoopMergeScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.checkLoopExplosionIteration:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
       104: .line 726
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            aload 15 /* outerLoopMergeScope */
            invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
       105: .line 727
            aload 0 /* this */
            aload 15 /* outerLoopMergeScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
       106: .line 728
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 15 /* outerLoopMergeScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            pop
       107: .line 729
            aload 15 /* outerLoopMergeScope */
            astore 10 /* phiNodeScope */
        end local 15 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope outerLoopMergeScope
        end local 14 // int nextIterationNumber
       108: .line 730
            goto 121
       109: .line 732
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            astore 10 /* phiNodeScope */
        end local 13 // org.graalvm.compiler.nodes.EndNode replacementNode
       110: .line 735
            goto 121
      StackMap locals:
      StackMap stack:
       111: aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 121
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.LoopEndNode
            ifeq 121
       112: .line 736
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.EndNode
            dup
            invokespecial org.graalvm.compiler.nodes.EndNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 13 /* replacementNode */
        start local 13 // org.graalvm.compiler.nodes.EndNode replacementNode
       113: .line 737
            aload 4 /* node */
            aload 13 /* replacementNode */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
       114: .line 738
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.safeDelete:()V
       115: .line 739
            aload 13 /* replacementNode */
            astore 4 /* node */
       116: .line 740
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleLoopExplosionEnd:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            astore 14 /* trigger */
        start local 14 // org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger trigger
       117: .line 741
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            astore 15 /* phiScope */
        start local 15 // java.util.Deque phiScope
       118: .line 742
            aload 14 /* trigger */
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.LOOP_END_DUPLICATION:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            if_acmpne 120
       119: .line 743
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopEndDuplication:Ljava/util/Deque;
            astore 15 /* phiScope */
       120: .line 745
      StackMap locals: org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger java.util.Deque
      StackMap stack:
            aload 15 /* phiScope */
            invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            astore 10 /* phiNodeScope */
        end local 15 // java.util.Deque phiScope
        end local 14 // org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger trigger
        end local 13 // org.graalvm.compiler.nodes.EndNode replacementNode
       121: .line 747
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* phiNodeScope */
            iload 11 /* mergeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.AbstractMergeNode
            astore 13 /* merge */
        start local 13 // org.graalvm.compiler.nodes.AbstractMergeNode merge
       122: .line 748
            aload 13 /* merge */
            ifnonnull 148
       123: .line 749
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 10 /* phiNodeScope */
            iload 11 /* mergeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            checkcast org.graalvm.compiler.nodes.AbstractMergeNode
            astore 13 /* merge */
       124: .line 750
            aload 13 /* merge */
            instanceof org.graalvm.compiler.nodes.LoopBeginNode
            ifeq 148
       125: .line 767
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 127
            aload 10 /* phiNodeScope */
            aload 9 /* phiInputScope */
            if_acmpne 126
            aload 10 /* phiNodeScope */
            aload 2 /* loopScope */
            if_acmpeq 127
      StackMap locals: org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack:
       126: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       127: .line 768
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            dup
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iconst_1
            iadd
            iconst_0
            iload 11 /* mergeOrderId */
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.START:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
       128: .line 769
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 129
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
            goto 130
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger
       129: aconst_null
       130: .line 770
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[]
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 131
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
            goto 132
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[]
       131: aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
       132: .line 771
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[]
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopExits:()Z
            ifne 133
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 134
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[]
       133: new java.util.ArrayDeque
            dup
            iconst_2
            invokespecial java.util.ArrayDeque.<init>:(I)V
            goto 135
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[]
       134: aconst_null
       135: .line 772
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopEnds:()Z
            ifeq 136
            new java.util.ArrayDeque
            dup
            iconst_2
            invokespecial java.util.ArrayDeque.<init>:(I)V
            goto 137
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque
       136: aconst_null
       137: .line 773
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque java.util.ArrayDeque
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.unrollLoops:()Z
            ifeq 138
            new java.util.ArrayDeque
            dup
            iconst_2
            invokespecial java.util.ArrayDeque.<init>:(I)V
            goto 139
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque java.util.ArrayDeque
       138: aconst_null
       139: .line 774
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque java.util.ArrayDeque java.util.ArrayDeque
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 140
            getstatic org.graalvm.collections.Equivalence.DEFAULT:Lorg/graalvm/collections/Equivalence;
            invokestatic org.graalvm.collections.EconomicMap.create:(Lorg/graalvm/collections/Equivalence;)Lorg/graalvm/collections/EconomicMap;
            goto 141
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque java.util.ArrayDeque java.util.ArrayDeque
       140: aconst_null
       141: .line 768
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack: new 127 new 127 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[] org.graalvm.compiler.graph.Node[] java.util.ArrayDeque java.util.ArrayDeque java.util.ArrayDeque org.graalvm.collections.EconomicMap
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopScope.<init>:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;IIILorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;[Lorg/graalvm/compiler/graph/Node;[Lorg/graalvm/compiler/graph/Node;Ljava/util/Deque;Ljava/util/Deque;Ljava/util/Deque;Lorg/graalvm/collections/EconomicMap;)V
            astore 8 /* resultScope */
       142: .line 775
            aload 8 /* resultScope */
            astore 9 /* phiInputScope */
       143: .line 776
            aload 8 /* resultScope */
            astore 10 /* phiNodeScope */
       144: .line 778
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 146
       145: .line 779
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 11 /* mergeOrderId */
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
       146: .line 781
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iload 11 /* mergeOrderId */
            invokevirtual java.util.BitSet.clear:(I)V
       147: .line 782
            aload 8 /* resultScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iload 11 /* mergeOrderId */
            invokevirtual java.util.BitSet.set:(I)V
       148: .line 785
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 9 /* phiInputScope */
            aload 10 /* phiNodeScope */
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.AbstractEndNode
            aload 13 /* merge */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handlePhiFunctions:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/nodes/AbstractMergeNode;)V
        end local 13 // org.graalvm.compiler.nodes.AbstractMergeNode merge
        end local 12 // boolean requiresMergeOfOuterLoop
        end local 11 // int mergeOrderId
        end local 10 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiNodeScope
        end local 9 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiInputScope
       149: .line 786
            goto 158
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int org.graalvm.compiler.nodes.GraphDecoder$LoopScope
      StackMap stack:
       150: aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.Invoke
            ifeq 154
       151: .line 787
            aload 0 /* this */
            aload 1 /* methodScope */
            iload 3 /* nodeOrderId */
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.Invoke
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readInvokeData:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;ILorg/graalvm/compiler/nodes/Invoke;)Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
            astore 9 /* invokeData */
        start local 9 // org.graalvm.compiler.nodes.GraphDecoder$InvokeData invokeData
       152: .line 788
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 9 /* invokeData */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleInvoke:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            astore 8 /* resultScope */
        end local 9 // org.graalvm.compiler.nodes.GraphDecoder$InvokeData invokeData
       153: .line 789
            goto 158
      StackMap locals:
      StackMap stack:
       154: aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.ReturnNode
            ifne 155
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.UnwindNode
            ifeq 157
       155: .line 790
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.returnAndUnwindNodes:Ljava/util/List;
            aload 4 /* node */
            checkcast org.graalvm.compiler.nodes.ControlSinkNode
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       156: .line 791
            goto 158
       157: .line 792
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleFixedNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/nodes/FixedNode;)V
       158: .line 803
      StackMap locals:
      StackMap stack:
            aload 8 /* resultScope */
            areturn
        end local 8 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope resultScope
        end local 7 // int typeId
        end local 6 // boolean updatePredecessors
        end local 5 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope successorAddScope
        end local 4 // org.graalvm.compiler.nodes.FixedNode node
        end local 3 // int nodeOrderId
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0  159     0                      this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0  159     1               methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0  159     2                 loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            1  159     3               nodeOrderId  I
            3  159     4                      node  Lorg/graalvm/compiler/nodes/FixedNode;
           10   17     5                     merge  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
           11   17     6                 singleEnd  Lorg/graalvm/compiler/nodes/EndNode;
           13   17     7                      next  Lorg/graalvm/compiler/nodes/FixedNode;
           18  159     5         successorAddScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
           19  159     6        updatePredecessors  Z
           22   45     7                outerScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
           25   45     8       nextIterationNumber  I
           30   45     9       initialCreatedNodes  [Lorg/graalvm/compiler/graph/Node;
           40   44    10                        id  I
           50  159     7                    typeId  I
           58  159     8               resultScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
           73  149     9             phiInputScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
           74  149    10              phiNodeScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
           75  149    11              mergeOrderId  I
           84  149    12  requiresMergeOfOuterLoop  Z
           86  110    13           replacementNode  Lorg/graalvm/compiler/nodes/EndNode;
           93  108    14       nextIterationNumber  I
          103  108    15       outerLoopMergeScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
          113  121    13           replacementNode  Lorg/graalvm/compiler/nodes/EndNode;
          117  121    14                   trigger  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
          118  121    15                  phiScope  Ljava/util/Deque<Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;>;
          122  149    13                     merge  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
          152  153     9                invokeData  Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    

  protected org.graalvm.compiler.nodes.GraphDecoder$InvokeData readInvokeData(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, int, org.graalvm.compiler.nodes.Invoke);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;ILorg/graalvm/compiler/nodes/Invoke;)Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=12, locals=12, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // int invokeOrderId
        start local 3 // org.graalvm.compiler.nodes.Invoke invoke
         0: .line 807
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readObject:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)Ljava/lang/Object;
            checkcast jdk.vm.ci.meta.ResolvedJavaType
            astore 4 /* contextType */
        start local 4 // jdk.vm.ci.meta.ResolvedJavaType contextType
         1: .line 808
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 5 /* callTargetOrderId */
        start local 5 // int callTargetOrderId
         2: .line 809
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 6 /* stateAfterOrderId */
        start local 6 // int stateAfterOrderId
         3: .line 810
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 7 /* nextOrderId */
        start local 7 // int nextOrderId
         4: .line 812
            aload 3 /* invoke */
            instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
            ifeq 12
         5: .line 813
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 8 /* nextNextOrderId */
        start local 8 // int nextNextOrderId
         6: .line 814
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 9 /* exceptionOrderId */
        start local 9 // int exceptionOrderId
         7: .line 815
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 10 /* exceptionStateOrderId */
        start local 10 // int exceptionStateOrderId
         8: .line 816
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 11 /* exceptionNextOrderId */
        start local 11 // int exceptionNextOrderId
         9: .line 817
            new org.graalvm.compiler.nodes.GraphDecoder$InvokeData
            dup
            aload 3 /* invoke */
            aload 4 /* contextType */
            iload 2 /* invokeOrderId */
            iload 5 /* callTargetOrderId */
            iload 6 /* stateAfterOrderId */
            iload 7 /* nextOrderId */
            iload 8 /* nextNextOrderId */
            iload 9 /* exceptionOrderId */
            iload 10 /* exceptionStateOrderId */
        10: .line 818
            iload 11 /* exceptionNextOrderId */
        11: .line 817
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$InvokeData.<init>:(Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaType;IIIIIIII)V
            areturn
        end local 11 // int exceptionNextOrderId
        end local 10 // int exceptionStateOrderId
        end local 9 // int exceptionOrderId
        end local 8 // int nextNextOrderId
        12: .line 820
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope int org.graalvm.compiler.nodes.Invoke jdk.vm.ci.meta.ResolvedJavaType int int int
      StackMap stack:
            new org.graalvm.compiler.nodes.GraphDecoder$InvokeData
            dup
            aload 3 /* invoke */
            aload 4 /* contextType */
            iload 2 /* invokeOrderId */
            iload 5 /* callTargetOrderId */
            iload 6 /* stateAfterOrderId */
            iload 7 /* nextOrderId */
            iconst_m1
            iconst_m1
            iconst_m1
            iconst_m1
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$InvokeData.<init>:(Lorg/graalvm/compiler/nodes/Invoke;Ljdk/vm/ci/meta/ResolvedJavaType;IIIIIIII)V
            areturn
        end local 7 // int nextOrderId
        end local 6 // int stateAfterOrderId
        end local 5 // int callTargetOrderId
        end local 4 // jdk.vm.ci.meta.ResolvedJavaType contextType
        end local 3 // org.graalvm.compiler.nodes.Invoke invoke
        end local 2 // int invokeOrderId
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   13     0                   this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   13     1            methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   13     2          invokeOrderId  I
            0   13     3                 invoke  Lorg/graalvm/compiler/nodes/Invoke;
            1   13     4            contextType  Ljdk/vm/ci/meta/ResolvedJavaType;
            2   13     5      callTargetOrderId  I
            3   13     6      stateAfterOrderId  I
            4   13     7            nextOrderId  I
            6   12     8        nextNextOrderId  I
            7   12     9       exceptionOrderId  I
            8   12    10  exceptionStateOrderId  I
            9   12    11   exceptionNextOrderId  I
    MethodParameters:
               Name  Flags
      methodScope    
      invokeOrderId  
      invoke         

  protected org.graalvm.compiler.nodes.GraphDecoder$LoopScope handleInvoke(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.GraphDecoder$InvokeData);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$InvokeData invokeData
         0: .line 835
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 1
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            ifnull 1
            new java.lang.AssertionError
            dup
            ldc "callTarget edge is ignored during decoding of Invoke"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.callTargetOrderId:I
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.CallTargetNode
            astore 4 /* callTarget */
        start local 4 // org.graalvm.compiler.nodes.CallTargetNode callTarget
         2: .line 837
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 3 /* invokeData */
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.appendInvoke:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;Lorg/graalvm/compiler/nodes/CallTargetNode;)V
         3: .line 838
            aload 2 /* loopScope */
            areturn
        end local 4 // org.graalvm.compiler.nodes.CallTargetNode callTarget
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$InvokeData invokeData
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    4     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    4     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    4     3   invokeData  Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
            2    4     4   callTarget  Lorg/graalvm/compiler/nodes/CallTargetNode;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      invokeData   

  protected void appendInvoke(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.GraphDecoder$InvokeData, org.graalvm.compiler.nodes.CallTargetNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;Lorg/graalvm/compiler/nodes/CallTargetNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$InvokeData invokeData
        start local 4 // org.graalvm.compiler.nodes.CallTargetNode callTarget
         0: .line 842
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
            ifeq 3
         1: .line 843
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            checkcast org.graalvm.compiler.nodes.InvokeWithExceptionNode
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.setCallTarget:(Lorg/graalvm/compiler/nodes/CallTargetNode;)V
         2: .line 844
            goto 4
         3: .line 845
      StackMap locals:
      StackMap stack:
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            checkcast org.graalvm.compiler.nodes.InvokeNode
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.InvokeNode.setCallTarget:(Lorg/graalvm/compiler/nodes/CallTargetNode;)V
         4: .line 848
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 6
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            ifnonnull 5
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            invokeinterface org.graalvm.compiler.nodes.Invoke.stateDuring:()Lorg/graalvm/compiler/nodes/FrameState;
            ifnull 6
      StackMap locals:
      StackMap stack:
         5: new java.lang.AssertionError
            dup
            ldc "FrameState edges are ignored during decoding of Invoke"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 849
      StackMap locals:
      StackMap stack:
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.stateAfterOrderId:I
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FrameState
            invokeinterface org.graalvm.compiler.nodes.Invoke.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
         7: .line 851
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.nextOrderId:I
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            invokeinterface org.graalvm.compiler.nodes.Invoke.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
         8: .line 852
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
            ifeq 10
         9: .line 853
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.invoke:Lorg/graalvm/compiler/nodes/Invoke;
            checkcast org.graalvm.compiler.nodes.InvokeWithExceptionNode
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 3 /* invokeData */
            getfield org.graalvm.compiler.nodes.GraphDecoder$InvokeData.exceptionOrderId:I
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            checkcast org.graalvm.compiler.nodes.AbstractBeginNode
            invokevirtual org.graalvm.compiler.nodes.InvokeWithExceptionNode.setExceptionEdge:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)V
        10: .line 855
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.graalvm.compiler.nodes.CallTargetNode callTarget
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$InvokeData invokeData
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   11     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   11     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   11     3   invokeData  Lorg/graalvm/compiler/nodes/GraphDecoder$InvokeData;
            0   11     4   callTarget  Lorg/graalvm/compiler/nodes/CallTargetNode;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      invokeData   
      callTarget   

  protected void handleMergeNode(org.graalvm.compiler.nodes.MergeNode);
    descriptor: (Lorg/graalvm/compiler/nodes/MergeNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.MergeNode merge
         0: .line 863
            return
        end local 1 // org.graalvm.compiler.nodes.MergeNode merge
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  merge  Lorg/graalvm/compiler/nodes/MergeNode;
    MethodParameters:
       Name  Flags
      merge  

  protected void handleLoopExplosionBegin(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.LoopBeginNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/LoopBeginNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=13, locals=13, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.nodes.LoopBeginNode loopBegin
         0: .line 866
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.checkLoopExplosionIteration:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
         1: .line 868
            aload 3 /* loopBegin */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.forwardEnds:()Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.snapshot:()Ljava/util/List;
            astore 4 /* predecessors */
        start local 4 // java.util.List predecessors
         2: .line 869
            aload 3 /* loopBegin */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 5 /* successor */
        start local 5 // org.graalvm.compiler.nodes.FixedNode successor
         3: .line 870
            aload 3 /* loopBegin */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            astore 6 /* frameState */
        start local 6 // org.graalvm.compiler.nodes.FrameState frameState
         4: .line 872
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 15
         5: .line 873
            new org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState
            dup
            aload 6 /* frameState */
            aconst_null
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState.<init>:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/MergeNode;)V
            astore 7 /* queryState */
        start local 7 // org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState queryState
         6: .line 874
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.iterationStates:Lorg/graalvm/collections/EconomicMap;
            aload 7 /* queryState */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState
            astore 8 /* existingState */
        start local 8 // org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState existingState
         7: .line 875
            aload 8 /* existingState */
            ifnull 15
         8: .line 876
            aload 3 /* loopBegin */
            aload 8 /* existingState */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState.merge:Lorg/graalvm/compiler/nodes/MergeNode;
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
         9: .line 877
            aload 5 /* successor */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.safeDelete:()V
        10: .line 878
            aload 4 /* predecessors */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 13
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState top java.util.Iterator
      StackMap stack:
        11: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 9 /* predecessor */
        start local 9 // org.graalvm.compiler.nodes.EndNode predecessor
        12: .line 879
            aload 8 /* existingState */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState.merge:Lorg/graalvm/compiler/nodes/MergeNode;
            aload 9 /* predecessor */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.addForwardEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
        end local 9 // org.graalvm.compiler.nodes.EndNode predecessor
        13: .line 878
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 881
            return
        end local 8 // org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState existingState
        end local 7 // org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState queryState
        15: .line 885
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.MergeNode
            dup
            invokespecial org.graalvm.compiler.nodes.MergeNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 7 /* merge */
        start local 7 // org.graalvm.compiler.nodes.MergeNode merge
        16: .line 886
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosionMerges:Lorg/graalvm/collections/EconomicSet;
            aload 7 /* merge */
            invokeinterface org.graalvm.collections.EconomicSet.add:(Ljava/lang/Object;)Z
            pop
        17: .line 888
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 49
        18: .line 889
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.iterationStates:Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.size:()I
            ifne 22
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iconst_1
            if_icmpne 22
        19: .line 890
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosionHead:Lorg/graalvm/compiler/nodes/MergeNode;
            ifnull 21
        20: .line 891
            new org.graalvm.compiler.core.common.PermanentBailoutException
            dup
            ldc "Graal implementation restriction: Method with %s loop explosion must not have more than one top-level loop"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.MERGE_EXPLODE:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            aastore
            invokespecial org.graalvm.compiler.core.common.PermanentBailoutException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        21: .line 893
      StackMap locals: org.graalvm.compiler.nodes.MergeNode
      StackMap stack:
            aload 1 /* methodScope */
            aload 7 /* merge */
            putfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosionHead:Lorg/graalvm/compiler/nodes/MergeNode;
        22: .line 919
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* newFrameStateValues */
        start local 8 // java.util.List newFrameStateValues
        23: .line 920
            aload 6 /* frameState */
            getfield org.graalvm.compiler.nodes.FrameState.values:Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.iterator:()Ljava/util/Iterator;
            astore 10
            goto 43
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.MergeNode java.util.List top java.util.Iterator
      StackMap stack:
        24: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 9 /* frameStateValue */
        start local 9 // org.graalvm.compiler.nodes.ValueNode frameStateValue
        25: .line 921
            aload 9 /* frameStateValue */
            ifnull 26
            aload 9 /* frameStateValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 26
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.methodStartMark:Lorg/graalvm/compiler/graph/Graph$Mark;
            aload 9 /* frameStateValue */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.isNew:(Lorg/graalvm/compiler/graph/Graph$Mark;Lorg/graalvm/compiler/graph/Node;)Z
            ifne 28
        26: .line 922
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.MergeNode java.util.List org.graalvm.compiler.nodes.ValueNode java.util.Iterator
      StackMap stack:
            aload 8 /* newFrameStateValues */
            aload 9 /* frameStateValue */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        27: .line 924
            goto 43
        28: .line 925
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder
            dup
            aload 9 /* frameStateValue */
            aload 7 /* merge */
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/MergeNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder
            astore 11 /* newFrameStateValue */
        start local 11 // org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder newFrameStateValue
        29: .line 926
            aload 8 /* newFrameStateValues */
            aload 11 /* newFrameStateValue */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        30: .line 932
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        31: goto 35
        32: .line 933
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder int
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 12 /* i */
            aaload
            aload 9 /* frameStateValue */
            if_acmpne 34
        33: .line 934
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 12 /* i */
            aload 11 /* newFrameStateValue */
            aastore
        34: .line 932
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 12 /* i */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            if_icmplt 32
        end local 12 // int i
        36: .line 938
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            ifnull 43
        37: .line 939
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        38: goto 42
        39: .line 940
      StackMap locals:
      StackMap stack:
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 12 /* i */
            aaload
            aload 9 /* frameStateValue */
            if_acmpne 41
        40: .line 941
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 12 /* i */
            aload 11 /* newFrameStateValue */
            aastore
        41: .line 939
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        42: iload 12 /* i */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            if_icmplt 39
        end local 12 // int i
        end local 11 // org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder newFrameStateValue
        end local 9 // org.graalvm.compiler.nodes.ValueNode frameStateValue
        43: .line 920
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.MergeNode java.util.List top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 24
        44: .line 948
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.FrameState
            dup
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.getCode:()Lorg/graalvm/compiler/bytecode/Bytecode;
            aload 6 /* frameState */
            getfield org.graalvm.compiler.nodes.FrameState.bci:I
            aload 8 /* newFrameStateValues */
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.localsSize:()I
        45: .line 949
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.stackSize:()I
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.rethrowException:()Z
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.duringCall:()Z
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.monitorIds:()Lorg/graalvm/compiler/graph/NodeInputList;
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.virtualObjectMappings:()Lorg/graalvm/compiler/graph/NodeInputList;
            invokespecial org.graalvm.compiler.nodes.FrameState.<init>:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/bytecode/Bytecode;ILjava/util/List;IIZZLjava/util/List;Ljava/util/List;)V
        46: .line 948
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FrameState
            astore 9 /* newFrameState */
        start local 9 // org.graalvm.compiler.nodes.FrameState newFrameState
        47: .line 951
            aload 6 /* frameState */
            aload 9 /* newFrameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        48: .line 952
            aload 9 /* newFrameState */
            astore 6 /* frameState */
        end local 9 // org.graalvm.compiler.nodes.FrameState newFrameState
        end local 8 // java.util.List newFrameStateValues
        49: .line 955
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.MergeNode
      StackMap stack:
            aload 3 /* loopBegin */
            aload 7 /* merge */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        50: .line 956
            aload 7 /* merge */
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
        51: .line 957
            aload 7 /* merge */
            aload 5 /* successor */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        52: .line 958
            aload 4 /* predecessors */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 55
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.MergeNode top java.util.Iterator
      StackMap stack:
        53: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 8 /* predecessor */
        start local 8 // org.graalvm.compiler.nodes.EndNode predecessor
        54: .line 959
            aload 7 /* merge */
            aload 8 /* predecessor */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.addForwardEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
        end local 8 // org.graalvm.compiler.nodes.EndNode predecessor
        55: .line 958
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 53
        56: .line 962
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 59
        57: .line 963
            new org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState
            dup
            aload 6 /* frameState */
            aload 7 /* merge */
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState.<init>:(Lorg/graalvm/compiler/nodes/FrameState;Lorg/graalvm/compiler/nodes/MergeNode;)V
            astore 8 /* explosionState */
        start local 8 // org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState explosionState
        58: .line 964
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.iterationStates:Lorg/graalvm/collections/EconomicMap;
            aload 8 /* explosionState */
            aload 8 /* explosionState */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState explosionState
        59: .line 966
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopBeginNode java.util.List org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FrameState org.graalvm.compiler.nodes.MergeNode
      StackMap stack:
            return
        end local 7 // org.graalvm.compiler.nodes.MergeNode merge
        end local 6 // org.graalvm.compiler.nodes.FrameState frameState
        end local 5 // org.graalvm.compiler.nodes.FixedNode successor
        end local 4 // java.util.List predecessors
        end local 3 // org.graalvm.compiler.nodes.LoopBeginNode loopBegin
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   60     0                 this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   60     1          methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   60     2            loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   60     3            loopBegin  Lorg/graalvm/compiler/nodes/LoopBeginNode;
            2   60     4         predecessors  Ljava/util/List<Lorg/graalvm/compiler/nodes/EndNode;>;
            3   60     5            successor  Lorg/graalvm/compiler/nodes/FixedNode;
            4   60     6           frameState  Lorg/graalvm/compiler/nodes/FrameState;
            6   15     7           queryState  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopExplosionState;
            7   15     8        existingState  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopExplosionState;
           12   13     9          predecessor  Lorg/graalvm/compiler/nodes/EndNode;
           16   60     7                merge  Lorg/graalvm/compiler/nodes/MergeNode;
           23   49     8  newFrameStateValues  Ljava/util/List<Lorg/graalvm/compiler/nodes/ValueNode;>;
           25   43     9      frameStateValue  Lorg/graalvm/compiler/nodes/ValueNode;
           29   43    11   newFrameStateValue  Lorg/graalvm/compiler/nodes/GraphDecoder$ProxyPlaceholder;
           31   36    12                    i  I
           38   43    12                    i  I
           47   49     9        newFrameState  Lorg/graalvm/compiler/nodes/FrameState;
           54   55     8          predecessor  Lorg/graalvm/compiler/nodes/EndNode;
           58   59     8       explosionState  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopExplosionState;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      loopBegin    

  protected void checkLoopExplosionIteration(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
         0: .line 975
            ldc "when subclass uses loop explosion, it needs to implement this method"
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    1     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    

  protected org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger handleLoopExplosionEnd(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=14, locals=7, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
         0: .line 983
            aconst_null
            astore 3 /* trigger */
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger trigger
         1: .line 984
            aconst_null
            astore 4 /* nextIterations */
        start local 4 // java.util.Deque nextIterations
         2: .line 985
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopEnds:()Z
            ifeq 6
         3: .line 991
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.LOOP_END_DUPLICATION:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            astore 3 /* trigger */
         4: .line 992
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopEndDuplication:Ljava/util/Deque;
            astore 4 /* nextIterations */
         5: .line 993
            goto 9
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger java.util.Deque
      StackMap stack:
         6: aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            invokeinterface java.util.Deque.isEmpty:()Z
            ifeq 9
         7: .line 998
            getstatic org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger.LOOP_BEGIN_UNROLLING:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            astore 3 /* trigger */
         8: .line 999
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
            astore 4 /* nextIterations */
         9: .line 1001
      StackMap locals:
      StackMap stack:
            aload 3 /* trigger */
            ifnull 26
        10: .line 1002
            aload 4 /* nextIterations */
            invokeinterface java.util.Deque.isEmpty:()Z
            ifeq 11
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            iconst_1
            iadd
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 4 /* nextIterations */
            invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
        12: istore 5 /* nextIterationNumber */
        start local 5 // int nextIterationNumber
        13: .line 1003
            new org.graalvm.compiler.nodes.GraphDecoder$LoopScope
            dup
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iload 5 /* nextIterationNumber */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
            aload 3 /* trigger */
        14: .line 1004
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 15
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
            goto 16
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger java.util.Deque int
      StackMap stack: new 13 new 13 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger
        15: aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
        16: .line 1005
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger java.util.Deque int
      StackMap stack: new 13 new 13 org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope int int int org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger org.graalvm.compiler.graph.Node[]
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.initialCreatedNodes:[Lorg/graalvm/compiler/graph/Node;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node[]
        17: .line 1006
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopExitDuplication:Ljava/util/Deque;
        18: .line 1007
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationFromLoopEndDuplication:Ljava/util/Deque;
        19: .line 1008
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nextIterationsFromUnrolling:Ljava/util/Deque;
        20: .line 1009
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.iterationStates:Lorg/graalvm/collections/EconomicMap;
        21: .line 1003
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$LoopScope.<init>:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;IIILorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;[Lorg/graalvm/compiler/graph/Node;[Lorg/graalvm/compiler/graph/Node;Ljava/util/Deque;Ljava/util/Deque;Ljava/util/Deque;Lorg/graalvm/collections/EconomicMap;)V
            astore 6 /* nextIterationScope */
        start local 6 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope nextIterationScope
        22: .line 1010
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 6 /* nextIterationScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.checkLoopExplosionIteration:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;)V
        23: .line 1011
            aload 4 /* nextIterations */
            aload 6 /* nextIterationScope */
            invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
        24: .line 1012
            aload 0 /* this */
            aload 6 /* nextIterationScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        25: .line 1013
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 6 /* nextIterationScope */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopBeginOrderId:I
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            pop
        end local 6 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope nextIterationScope
        end local 5 // int nextIterationNumber
        26: .line 1015
      StackMap locals:
      StackMap stack:
            aload 3 /* trigger */
            areturn
        end local 4 // java.util.Deque nextIterations
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger trigger
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   27     0                 this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   27     1          methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   27     2            loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            1   27     3              trigger  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScopeTrigger;
            2   27     4       nextIterations  Ljava/util/Deque<Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;>;
           13   26     5  nextIterationNumber  I
           22   26     6   nextIterationScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    

  protected void handleFixedNode(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int, org.graalvm.compiler.nodes.FixedNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/nodes/FixedNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // int nodeOrderId
        start local 4 // org.graalvm.compiler.nodes.FixedNode node
         0: .line 1027
            return
        end local 4 // org.graalvm.compiler.nodes.FixedNode node
        end local 3 // int nodeOrderId
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    1     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    1     3  nodeOrderId  I
            0    1     4         node  Lorg/graalvm/compiler/nodes/FixedNode;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      nodeOrderId  
      node         

  protected boolean earlyCanonicalization(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int, org.graalvm.compiler.nodes.FixedNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/nodes/FixedNode;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // int nodeOrderId
        start local 4 // org.graalvm.compiler.nodes.FixedNode node
         0: .line 1043
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.nodes.FixedNode node
        end local 3 // int nodeOrderId
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    1     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    1     3  nodeOrderId  I
            0    1     4         node  Lorg/graalvm/compiler/nodes/FixedNode;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      nodeOrderId  
      node         

  protected void handleProxyNodes(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.LoopExitNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/LoopExitNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.nodes.LoopExitNode loopExit
         0: .line 1047
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 1
            aload 3 /* loopExit */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1048
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 4 /* stateAfterOrderId */
        start local 4 // int stateAfterOrderId
         2: .line 1049
            aload 3 /* loopExit */
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 4 /* stateAfterOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FrameState
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
         3: .line 1051
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            istore 5 /* numProxies */
        start local 5 // int numProxies
         4: .line 1052
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         5: goto 11
         6: .line 1053
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 7 /* proxyOrderId */
        start local 7 // int proxyOrderId
         7: .line 1054
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 7 /* proxyOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ProxyNode
            astore 8 /* proxy */
        start local 8 // org.graalvm.compiler.nodes.ProxyNode proxy
         8: .line 1059
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            if_acmpeq 10
         9: .line 1060
            aload 0 /* this */
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.outer:Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            iload 7 /* proxyOrderId */
            aload 8 /* proxy */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        end local 8 // org.graalvm.compiler.nodes.ProxyNode proxy
        end local 7 // int proxyOrderId
        10: .line 1052
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            iload 5 /* numProxies */
            if_icmplt 6
        end local 6 // int i
        12: .line 1063
            return
        end local 5 // int numProxies
        end local 4 // int stateAfterOrderId
        end local 3 // org.graalvm.compiler.nodes.LoopExitNode loopExit
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   13     0               this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   13     1        methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   13     2          loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   13     3           loopExit  Lorg/graalvm/compiler/nodes/LoopExitNode;
            2   13     4  stateAfterOrderId  I
            4   13     5         numProxies  I
            5   12     6                  i  I
            7   10     7       proxyOrderId  I
            8   10     8              proxy  Lorg/graalvm/compiler/nodes/ProxyNode;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      loopExit     

  protected void handleLoopExplosionProxyNodes(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.LoopExitNode, int);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/LoopExitNode;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=22, args_size=6
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope outerScope
        start local 4 // org.graalvm.compiler.nodes.LoopExitNode loopExit
        start local 5 // int loopExitOrderId
         0: .line 1066
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 1
            aload 4 /* loopExit */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1067
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 6 /* stateAfterOrderId */
        start local 6 // int stateAfterOrderId
         2: .line 1069
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.BeginNode
            dup
            invokespecial org.graalvm.compiler.nodes.BeginNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.BeginNode
            astore 7 /* begin */
        start local 7 // org.graalvm.compiler.nodes.BeginNode begin
         3: .line 1071
            aload 4 /* loopExit */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 8 /* loopExitSuccessor */
        start local 8 // org.graalvm.compiler.nodes.FixedNode loopExitSuccessor
         4: .line 1072
            aload 4 /* loopExit */
            aload 7 /* begin */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
         5: .line 1074
            aconst_null
            astore 9 /* loopExitPlaceholder */
        start local 9 // org.graalvm.compiler.nodes.MergeNode loopExitPlaceholder
         6: .line 1075
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.mergeLoops:()Z
            ifeq 14
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopDepth:I
            iconst_1
            if_icmpne 14
         7: .line 1080
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.MergeNode
            dup
            invokespecial org.graalvm.compiler.nodes.MergeNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 9 /* loopExitPlaceholder */
         8: .line 1081
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosionMerges:Lorg/graalvm/collections/EconomicSet;
            aload 9 /* loopExitPlaceholder */
            invokeinterface org.graalvm.collections.EconomicSet.add:(Ljava/lang/Object;)Z
            pop
         9: .line 1083
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.EndNode
            dup
            invokespecial org.graalvm.compiler.nodes.EndNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 10 /* end */
        start local 10 // org.graalvm.compiler.nodes.EndNode end
        10: .line 1084
            aload 7 /* begin */
            aload 10 /* end */
            invokevirtual org.graalvm.compiler.nodes.BeginNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        11: .line 1085
            aload 9 /* loopExitPlaceholder */
            aload 10 /* end */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.addForwardEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
        12: .line 1087
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.BeginNode
            dup
            invokespecial org.graalvm.compiler.nodes.BeginNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.BeginNode
            astore 7 /* begin */
        13: .line 1088
            aload 9 /* loopExitPlaceholder */
            aload 7 /* begin */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        end local 10 // org.graalvm.compiler.nodes.EndNode end
        14: .line 1096
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopExitNode int int org.graalvm.compiler.nodes.BeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.MergeNode
      StackMap stack:
            aconst_null
            astore 10 /* merge */
        start local 10 // org.graalvm.compiler.nodes.MergeNode merge
        15: .line 1097
            aload 0 /* this */
            aload 3 /* outerScope */
            iload 5 /* loopExitOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 11 /* existingExit */
        start local 11 // org.graalvm.compiler.graph.Node existingExit
        16: .line 1098
            aload 11 /* existingExit */
            ifnonnull 20
        17: .line 1100
            aload 0 /* this */
            aload 3 /* outerScope */
            iload 5 /* loopExitOrderId */
            aload 7 /* begin */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        18: .line 1101
            aload 7 /* begin */
            aload 8 /* loopExitSuccessor */
            invokevirtual org.graalvm.compiler.nodes.BeginNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        19: .line 1103
            goto 29
      StackMap locals: org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.graph.Node
      StackMap stack:
        20: aload 11 /* existingExit */
            instanceof org.graalvm.compiler.nodes.BeginNode
            ifeq 28
        21: .line 1105
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.MergeNode
            dup
            invokespecial org.graalvm.compiler.nodes.MergeNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 10 /* merge */
        22: .line 1106
            aload 0 /* this */
            aload 3 /* outerScope */
            iload 5 /* loopExitOrderId */
            aload 10 /* merge */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        23: .line 1108
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.EndNode
            dup
            invokespecial org.graalvm.compiler.nodes.EndNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 12 /* firstEnd */
        start local 12 // org.graalvm.compiler.nodes.EndNode firstEnd
        24: .line 1109
            aload 11 /* existingExit */
            checkcast org.graalvm.compiler.nodes.BeginNode
            aload 12 /* firstEnd */
            invokevirtual org.graalvm.compiler.nodes.BeginNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        25: .line 1110
            aload 10 /* merge */
            aload 12 /* firstEnd */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.addForwardEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
        26: .line 1111
            aload 10 /* merge */
            aload 8 /* loopExitSuccessor */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        end local 12 // org.graalvm.compiler.nodes.EndNode firstEnd
        27: .line 1113
            goto 29
        28: .line 1115
      StackMap locals:
      StackMap stack:
            aload 11 /* existingExit */
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 10 /* merge */
        29: .line 1118
      StackMap locals:
      StackMap stack:
            aload 10 /* merge */
            ifnull 33
        30: .line 1119
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.EndNode
            dup
            invokespecial org.graalvm.compiler.nodes.EndNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 12 /* end */
        start local 12 // org.graalvm.compiler.nodes.EndNode end
        31: .line 1120
            aload 7 /* begin */
            aload 12 /* end */
            invokevirtual org.graalvm.compiler.nodes.BeginNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        32: .line 1121
            aload 10 /* merge */
            aload 12 /* end */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.addForwardEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
        end local 12 // org.graalvm.compiler.nodes.EndNode end
        33: .line 1129
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            istore 12 /* numProxies */
        start local 12 // int numProxies
        34: .line 1130
            iconst_0
            istore 13 /* phiCreated */
        start local 13 // boolean phiCreated
        35: .line 1131
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        36: goto 67
        37: .line 1132
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 15 /* proxyOrderId */
        start local 15 // int proxyOrderId
        38: .line 1133
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 15 /* proxyOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ProxyNode
            astore 16 /* proxy */
        start local 16 // org.graalvm.compiler.nodes.ProxyNode proxy
        39: .line 1134
            aload 16 /* proxy */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 17 /* phiInput */
        start local 17 // org.graalvm.compiler.nodes.ValueNode phiInput
        40: .line 1136
            aload 9 /* loopExitPlaceholder */
            ifnull 44
        41: .line 1137
            aload 17 /* phiInput */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 43
        42: .line 1138
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder
            dup
            aload 17 /* phiInput */
            aload 9 /* loopExitPlaceholder */
            invokespecial org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/MergeNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 17 /* phiInput */
        43: .line 1140
      StackMap locals: int org.graalvm.compiler.nodes.ProxyNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 15 /* proxyOrderId */
            aload 17 /* phiInput */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        44: .line 1144
      StackMap locals:
      StackMap stack:
            aload 3 /* outerScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 15 /* proxyOrderId */
            aaload
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 19 /* existing */
        start local 19 // org.graalvm.compiler.nodes.ValueNode existing
        45: .line 1145
            aload 19 /* existing */
            ifnull 46
            aload 19 /* existing */
            aload 17 /* phiInput */
            if_acmpne 49
        46: .line 1150
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopExitNode int int org.graalvm.compiler.nodes.BeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.graph.Node int int int int org.graalvm.compiler.nodes.ProxyNode org.graalvm.compiler.nodes.ValueNode top org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 0 /* this */
            aload 3 /* outerScope */
            iload 15 /* proxyOrderId */
            aload 17 /* phiInput */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        47: .line 1151
            aload 17 /* phiInput */
            astore 18 /* replacement */
        start local 18 // org.graalvm.compiler.nodes.ValueNode replacement
        48: .line 1153
            goto 65
        end local 18 // org.graalvm.compiler.nodes.ValueNode replacement
        49: .line 1155
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 50
            aload 10 /* merge */
            ifnonnull 50
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        50: .line 1157
      StackMap locals:
      StackMap stack:
            aload 10 /* merge */
            aload 19 /* existing */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.isPhiAtMerge:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 62
        51: .line 1159
            aload 16 /* proxy */
            aload 10 /* merge */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.createPhi:(Lorg/graalvm/compiler/nodes/AbstractMergeNode;)Lorg/graalvm/compiler/nodes/PhiNode;
            astore 20 /* phi */
        start local 20 // org.graalvm.compiler.nodes.PhiNode phi
        52: .line 1161
            iconst_0
            istore 21 /* j */
        start local 21 // int j
        53: goto 56
        54: .line 1162
      StackMap locals: org.graalvm.compiler.nodes.PhiNode int
      StackMap stack:
            aload 20 /* phi */
            aload 19 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        55: .line 1161
            iinc 21 /* j */ 1
      StackMap locals:
      StackMap stack:
        56: iload 21 /* j */
            aload 10 /* merge */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.phiPredecessorCount:()I
            iconst_1
            isub
            if_icmplt 54
        end local 21 // int j
        57: .line 1165
            aload 20 /* phi */
            aload 17 /* phiInput */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        58: .line 1166
            aload 0 /* this */
            aload 3 /* outerScope */
            iload 15 /* proxyOrderId */
            aload 20 /* phi */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        59: .line 1167
            aload 20 /* phi */
            astore 18 /* replacement */
        start local 18 // org.graalvm.compiler.nodes.ValueNode replacement
        60: .line 1168
            iconst_1
            istore 13 /* phiCreated */
        end local 20 // org.graalvm.compiler.nodes.PhiNode phi
        61: .line 1170
            goto 65
        end local 18 // org.graalvm.compiler.nodes.ValueNode replacement
        62: .line 1172
      StackMap locals:
      StackMap stack:
            aload 19 /* existing */
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 20 /* phi */
        start local 20 // org.graalvm.compiler.nodes.PhiNode phi
        63: .line 1173
            aload 20 /* phi */
            aload 17 /* phiInput */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        64: .line 1174
            aload 20 /* phi */
            astore 18 /* replacement */
        end local 20 // org.graalvm.compiler.nodes.PhiNode phi
        start local 18 // org.graalvm.compiler.nodes.ValueNode replacement
        65: .line 1177
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopExitNode int int org.graalvm.compiler.nodes.BeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.graph.Node int int int int org.graalvm.compiler.nodes.ProxyNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 16 /* proxy */
            aload 18 /* replacement */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 19 // org.graalvm.compiler.nodes.ValueNode existing
        end local 18 // org.graalvm.compiler.nodes.ValueNode replacement
        end local 17 // org.graalvm.compiler.nodes.ValueNode phiInput
        end local 16 // org.graalvm.compiler.nodes.ProxyNode proxy
        end local 15 // int proxyOrderId
        66: .line 1131
            iinc 14 /* i */ 1
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.LoopExitNode int int org.graalvm.compiler.nodes.BeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.nodes.MergeNode org.graalvm.compiler.graph.Node int int int
      StackMap stack:
        67: iload 14 /* i */
            iload 12 /* numProxies */
            if_icmplt 37
        end local 14 // int i
        68: .line 1180
            aload 9 /* loopExitPlaceholder */
            ifnull 71
        69: .line 1181
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 6 /* stateAfterOrderId */
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        70: .line 1182
            aload 9 /* loopExitPlaceholder */
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 6 /* stateAfterOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FrameState
            invokevirtual org.graalvm.compiler.nodes.MergeNode.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
        71: .line 1185
      StackMap locals:
      StackMap stack:
            aload 10 /* merge */
            ifnull 77
            aload 10 /* merge */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            ifnull 72
            iload 13 /* phiCreated */
            ifeq 77
        72: .line 1186
      StackMap locals:
      StackMap stack:
            aload 10 /* merge */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            astore 14 /* oldStateAfter */
        start local 14 // org.graalvm.compiler.nodes.FrameState oldStateAfter
        73: .line 1187
            aload 0 /* this */
            aload 3 /* outerScope */
            iload 6 /* stateAfterOrderId */
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        74: .line 1188
            aload 10 /* merge */
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 3 /* outerScope */
            iload 6 /* stateAfterOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FrameState
            invokevirtual org.graalvm.compiler.nodes.MergeNode.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
        75: .line 1189
            aload 14 /* oldStateAfter */
            ifnull 77
        76: .line 1190
            aload 14 /* oldStateAfter */
            invokevirtual org.graalvm.compiler.nodes.FrameState.safeDelete:()V
        end local 14 // org.graalvm.compiler.nodes.FrameState oldStateAfter
        77: .line 1193
      StackMap locals:
      StackMap stack:
            aload 4 /* loopExit */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.safeDelete:()V
        78: .line 1194
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 79
            aload 8 /* loopExitSuccessor */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
            ifnull 79
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        79: .line 1195
      StackMap locals:
      StackMap stack:
            aload 10 /* merge */
            ifnull 82
        80: .line 1196
            aload 10 /* merge */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getSuccessorEdges:()Lorg/graalvm/compiler/graph/Edges;
            aload 10 /* merge */
            aconst_null
            aload 8 /* loopExitSuccessor */
            invokevirtual org.graalvm.compiler.graph.Edges.update:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        81: .line 1197
            goto 83
        82: .line 1198
      StackMap locals:
      StackMap stack:
            aload 7 /* begin */
            invokevirtual org.graalvm.compiler.nodes.BeginNode.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getSuccessorEdges:()Lorg/graalvm/compiler/graph/Edges;
            aload 7 /* begin */
            aconst_null
            aload 8 /* loopExitSuccessor */
            invokevirtual org.graalvm.compiler.graph.Edges.update:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        83: .line 1200
      StackMap locals:
      StackMap stack:
            return
        end local 13 // boolean phiCreated
        end local 12 // int numProxies
        end local 11 // org.graalvm.compiler.graph.Node existingExit
        end local 10 // org.graalvm.compiler.nodes.MergeNode merge
        end local 9 // org.graalvm.compiler.nodes.MergeNode loopExitPlaceholder
        end local 8 // org.graalvm.compiler.nodes.FixedNode loopExitSuccessor
        end local 7 // org.graalvm.compiler.nodes.BeginNode begin
        end local 6 // int stateAfterOrderId
        end local 5 // int loopExitOrderId
        end local 4 // org.graalvm.compiler.nodes.LoopExitNode loopExit
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope outerScope
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   84     0                 this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   84     1          methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   84     2            loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   84     3           outerScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   84     4             loopExit  Lorg/graalvm/compiler/nodes/LoopExitNode;
            0   84     5      loopExitOrderId  I
            2   84     6    stateAfterOrderId  I
            3   84     7                begin  Lorg/graalvm/compiler/nodes/BeginNode;
            4   84     8    loopExitSuccessor  Lorg/graalvm/compiler/nodes/FixedNode;
            6   84     9  loopExitPlaceholder  Lorg/graalvm/compiler/nodes/MergeNode;
           10   14    10                  end  Lorg/graalvm/compiler/nodes/EndNode;
           15   84    10                merge  Lorg/graalvm/compiler/nodes/MergeNode;
           16   84    11         existingExit  Lorg/graalvm/compiler/graph/Node;
           24   27    12             firstEnd  Lorg/graalvm/compiler/nodes/EndNode;
           31   33    12                  end  Lorg/graalvm/compiler/nodes/EndNode;
           34   84    12           numProxies  I
           35   84    13           phiCreated  Z
           36   68    14                    i  I
           38   66    15         proxyOrderId  I
           39   66    16                proxy  Lorg/graalvm/compiler/nodes/ProxyNode;
           40   66    17             phiInput  Lorg/graalvm/compiler/nodes/ValueNode;
           48   49    18          replacement  Lorg/graalvm/compiler/nodes/ValueNode;
           60   62    18          replacement  Lorg/graalvm/compiler/nodes/ValueNode;
           65   66    18          replacement  Lorg/graalvm/compiler/nodes/ValueNode;
           45   66    19             existing  Lorg/graalvm/compiler/nodes/ValueNode;
           52   61    20                  phi  Lorg/graalvm/compiler/nodes/PhiNode;
           53   57    21                    j  I
           63   65    20                  phi  Lorg/graalvm/compiler/nodes/PhiNode;
           73   77    14        oldStateAfter  Lorg/graalvm/compiler/nodes/FrameState;
    MethodParameters:
                 Name  Flags
      methodScope      
      loopScope        
      outerScope       
      loopExit         
      loopExitOrderId  

  protected void handlePhiFunctions(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.nodes.AbstractEndNode, org.graalvm.compiler.nodes.AbstractMergeNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/nodes/AbstractMergeNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=15, args_size=6
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiInputScope
        start local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiNodeScope
        start local 4 // org.graalvm.compiler.nodes.AbstractEndNode end
        start local 5 // org.graalvm.compiler.nodes.AbstractMergeNode merge
         0: .line 1204
            aload 4 /* end */
            instanceof org.graalvm.compiler.nodes.LoopEndNode
            ifeq 5
         1: .line 1210
            aload 5 /* merge */
            checkcast org.graalvm.compiler.nodes.LoopBeginNode
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.loopEnds:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
            istore 6 /* numEnds */
        start local 6 // int numEnds
         2: .line 1211
            aload 5 /* merge */
            checkcast org.graalvm.compiler.nodes.LoopBeginNode
            iload 6 /* numEnds */
            putfield org.graalvm.compiler.nodes.LoopBeginNode.nextEndIndex:I
         3: .line 1212
            aload 4 /* end */
            checkcast org.graalvm.compiler.nodes.LoopEndNode
            iload 6 /* numEnds */
            iconst_1
            isub
            putfield org.graalvm.compiler.nodes.LoopEndNode.endIndex:I
        end local 6 // int numEnds
         4: .line 1214
            goto 8
         5: .line 1215
      StackMap locals:
      StackMap stack:
            aload 5 /* merge */
            getfield org.graalvm.compiler.nodes.AbstractMergeNode.ends:Lorg/graalvm/compiler/graph/NodeInputList;
            ifnonnull 7
         6: .line 1216
            aload 5 /* merge */
            new org.graalvm.compiler.graph.NodeInputList
            dup
            aload 5 /* merge */
            invokespecial org.graalvm.compiler.graph.NodeInputList.<init>:(Lorg/graalvm/compiler/graph/Node;)V
            putfield org.graalvm.compiler.nodes.AbstractMergeNode.ends:Lorg/graalvm/compiler/graph/NodeInputList;
         7: .line 1218
      StackMap locals:
      StackMap stack:
            aload 5 /* merge */
            aload 4 /* end */
            checkcast org.graalvm.compiler.nodes.EndNode
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.addForwardEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
         8: .line 1230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.allowLazyPhis:()Z
            ifeq 10
            aload 5 /* merge */
            instanceof org.graalvm.compiler.nodes.LoopBeginNode
            ifeq 9
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.useExplosion:()Z
            ifeq 10
      StackMap locals:
      StackMap stack:
         9: iconst_1
            goto 11
      StackMap locals:
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 6 /* lazyPhi */
        start local 6 // boolean lazyPhi
        12: .line 1231
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            istore 7 /* numPhis */
        start local 7 // int numPhis
        13: .line 1232
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        14: goto 40
        15: .line 1233
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 9 /* phiInputOrderId */
        start local 9 // int phiInputOrderId
        16: .line 1234
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 10 /* phiNodeOrderId */
        start local 10 // int phiNodeOrderId
        17: .line 1236
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* phiInputScope */
            iload 9 /* phiInputOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 11 /* phiInput */
        start local 11 // org.graalvm.compiler.nodes.ValueNode phiInput
        18: .line 1237
            aload 0 /* this */
            aload 3 /* phiNodeScope */
            iload 10 /* phiNodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 12 /* existing */
        start local 12 // org.graalvm.compiler.nodes.ValueNode existing
        19: .line 1239
            aload 12 /* existing */
            ifnull 23
            aload 5 /* merge */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.phiPredecessorCount:()I
            iconst_1
            if_icmpne 23
        20: .line 1249
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 22
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.loopExplosion:Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin$LoopExplosionKind;
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind.duplicateLoopExits:()Z
            ifeq 21
            aload 3 /* phiNodeScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.loopIteration:I
            ifgt 22
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.AbstractEndNode org.graalvm.compiler.nodes.AbstractMergeNode int int int int int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
        21: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        22: .line 1250
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 12 /* existing */
        23: .line 1253
      StackMap locals:
      StackMap stack:
            iload 6 /* lazyPhi */
            ifeq 26
            aload 12 /* existing */
            ifnull 24
            aload 12 /* existing */
            aload 11 /* phiInput */
            if_acmpne 26
        24: .line 1255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* phiNodeScope */
            iload 10 /* phiNodeOrderId */
            aload 11 /* phiInput */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        25: .line 1257
            goto 39
      StackMap locals:
      StackMap stack:
        26: aload 5 /* merge */
            aload 12 /* existing */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.isPhiAtMerge:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 37
        27: .line 1262
            aload 0 /* this */
            aload 3 /* phiNodeScope */
            iload 10 /* phiNodeOrderId */
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        28: .line 1263
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 3 /* phiNodeScope */
            iload 10 /* phiNodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 13 /* phi */
        start local 13 // org.graalvm.compiler.nodes.PhiNode phi
        29: .line 1265
            aload 13 /* phi */
            aload 5 /* merge */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.setMerge:(Lorg/graalvm/compiler/nodes/AbstractMergeNode;)V
        30: .line 1266
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        31: goto 34
        32: .line 1267
      StackMap locals: org.graalvm.compiler.nodes.PhiNode int
      StackMap stack:
            aload 13 /* phi */
            aload 12 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        33: .line 1266
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        34: iload 14 /* j */
            aload 5 /* merge */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.phiPredecessorCount:()I
            iconst_1
            isub
            if_icmplt 32
        end local 14 // int j
        35: .line 1269
            aload 13 /* phi */
            aload 11 /* phiInput */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        end local 13 // org.graalvm.compiler.nodes.PhiNode phi
        36: .line 1271
            goto 39
        37: .line 1273
      StackMap locals:
      StackMap stack:
            aload 12 /* existing */
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 13 /* phi */
        start local 13 // org.graalvm.compiler.nodes.PhiNode phi
        38: .line 1274
            aload 13 /* phi */
            aload 11 /* phiInput */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        end local 13 // org.graalvm.compiler.nodes.PhiNode phi
        end local 12 // org.graalvm.compiler.nodes.ValueNode existing
        end local 11 // org.graalvm.compiler.nodes.ValueNode phiInput
        end local 10 // int phiNodeOrderId
        end local 9 // int phiInputOrderId
        39: .line 1232
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.nodes.AbstractEndNode org.graalvm.compiler.nodes.AbstractMergeNode int int int
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 8 /* i */
            iload 7 /* numPhis */
            if_icmplt 15
        end local 8 // int i
        41: .line 1277
            return
        end local 7 // int numPhis
        end local 6 // boolean lazyPhi
        end local 5 // org.graalvm.compiler.nodes.AbstractMergeNode merge
        end local 4 // org.graalvm.compiler.nodes.AbstractEndNode end
        end local 3 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiNodeScope
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope phiInputScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   42     0             this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   42     1      methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   42     2    phiInputScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   42     3     phiNodeScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   42     4              end  Lorg/graalvm/compiler/nodes/AbstractEndNode;
            0   42     5            merge  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            2    4     6          numEnds  I
           12   42     6          lazyPhi  Z
           13   42     7          numPhis  I
           14   41     8                i  I
           16   39     9  phiInputOrderId  I
           17   39    10   phiNodeOrderId  I
           18   39    11         phiInput  Lorg/graalvm/compiler/nodes/ValueNode;
           19   39    12         existing  Lorg/graalvm/compiler/nodes/ValueNode;
           29   36    13              phi  Lorg/graalvm/compiler/nodes/PhiNode;
           31   35    14                j  I
           38   39    13              phi  Lorg/graalvm/compiler/nodes/PhiNode;
    MethodParameters:
               Name  Flags
      methodScope    
      phiInputScope  
      phiNodeScope   
      end            
      merge          

  protected boolean allowLazyPhis();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
         0: .line 1281
            iconst_0
            ireturn
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/GraphDecoder;

  protected void readProperties(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=11, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.graph.Node node
         0: .line 1286
            aconst_null
            astore 3
            aconst_null
            astore 4
         1: getstatic org.graalvm.compiler.nodes.GraphDecoder.ReadPropertiesTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 5 /* a */
        start local 5 // org.graalvm.compiler.debug.DebugCloseable a
         2: .line 1287
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readObject:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.NodeSourcePosition
            astore 6 /* position */
        start local 6 // org.graalvm.compiler.graph.NodeSourcePosition position
         3: .line 1288
            aload 2 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getData:()Lorg/graalvm/compiler/core/common/Fields;
            astore 7 /* fields */
        start local 7 // org.graalvm.compiler.core.common.Fields fields
         4: .line 1289
            iconst_0
            istore 8 /* pos */
        start local 8 // int pos
         5: goto 13
         6: .line 1290
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.graph.Node java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.core.common.Fields int
      StackMap stack:
            aload 7 /* fields */
            iload 8 /* pos */
            invokevirtual org.graalvm.compiler.core.common.Fields.getType:(I)Ljava/lang/Class;
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 10
         7: .line 1291
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getSV:()J
            lstore 9 /* primitive */
        start local 9 // long primitive
         8: .line 1292
            aload 7 /* fields */
            aload 2 /* node */
            iload 8 /* pos */
            lload 9 /* primitive */
            invokevirtual org.graalvm.compiler.core.common.Fields.setRawPrimitive:(Ljava/lang/Object;IJ)V
        end local 9 // long primitive
         9: .line 1293
            goto 12
        10: .line 1294
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readObject:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)Ljava/lang/Object;
            astore 9 /* value */
        start local 9 // java.lang.Object value
        11: .line 1295
            aload 7 /* fields */
            aload 2 /* node */
            iload 8 /* pos */
            aload 9 /* value */
            invokevirtual org.graalvm.compiler.core.common.Fields.putObject:(Ljava/lang/Object;ILjava/lang/Object;)V
        end local 9 // java.lang.Object value
        12: .line 1289
      StackMap locals:
      StackMap stack:
            iinc 8 /* pos */ 1
      StackMap locals:
      StackMap stack:
        13: iload 8 /* pos */
            aload 7 /* fields */
            invokevirtual org.graalvm.compiler.core.common.Fields.getCount:()I
            if_icmplt 6
        end local 8 // int pos
        14: .line 1298
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
            ifeq 19
            aload 6 /* position */
            ifnull 19
        15: .line 1299
            aload 1 /* methodScope */
            aload 6 /* position */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder$MethodScope.getCallerBytecodePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)Lorg/graalvm/compiler/graph/NodeSourcePosition;
            astore 8 /* callerBytecodePosition */
        start local 8 // org.graalvm.compiler.graph.NodeSourcePosition callerBytecodePosition
        16: .line 1300
            aload 2 /* node */
            aload 8 /* callerBytecodePosition */
            invokevirtual org.graalvm.compiler.graph.Node.setNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
        17: .line 1301
            aload 2 /* node */
            instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
            ifeq 19
        18: .line 1302
            aload 2 /* node */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            aload 8 /* callerBytecodePosition */
            invokevirtual org.graalvm.compiler.graph.NodeSourcePosition.getCaller:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.addCallerToNoDeoptSuccessorPosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
        end local 8 // org.graalvm.compiler.graph.NodeSourcePosition callerBytecodePosition
        end local 7 // org.graalvm.compiler.core.common.Fields fields
        end local 6 // org.graalvm.compiler.graph.NodeSourcePosition position
        19: .line 1305
      StackMap locals:
      StackMap stack:
            aload 5 /* a */
            ifnull 25
            aload 5 /* a */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 25
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 3
            aload 5 /* a */
            ifnull 21
            aload 5 /* a */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 5 // org.graalvm.compiler.debug.DebugCloseable a
      StackMap locals:
      StackMap stack:
        21: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: astore 4
            aload 3
            ifnonnull 23
            aload 4
            astore 3
            goto 24
      StackMap locals:
      StackMap stack:
        23: aload 3
            aload 4
            if_acmpeq 24
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        24: aload 3
            athrow
        25: .line 1306
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.graph.Node node
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   26     0                    this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   26     1             methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   26     2                    node  Lorg/graalvm/compiler/graph/Node;
            2   21     5                       a  Lorg/graalvm/compiler/debug/DebugCloseable;
            3   19     6                position  Lorg/graalvm/compiler/graph/NodeSourcePosition;
            4   19     7                  fields  Lorg/graalvm/compiler/core/common/Fields;
            5   14     8                     pos  I
            8    9     9               primitive  J
           11   12     9                   value  Ljava/lang/Object;
           16   19     8  callerBytecodePosition  Lorg/graalvm/compiler/graph/NodeSourcePosition;
      Exception table:
        from    to  target  type
           2    19      20  any
           1    22      22  any
    MethodParameters:
             Name  Flags
      methodScope  
      node         

  protected void makeFixedNodeInputs(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.graph.Node node
         0: .line 1315
            aload 3 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getInputEdges:()Lorg/graalvm/compiler/graph/Edges;
            astore 4 /* edges */
        start local 4 // org.graalvm.compiler.graph.Edges edges
         1: .line 1316
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         2: goto 11
         3: .line 1317
      StackMap locals: org.graalvm.compiler.graph.Edges int
      StackMap stack:
            aload 3 /* node */
            aload 4 /* edges */
            iload 5 /* index */
            invokestatic org.graalvm.compiler.nodes.GraphDecoder.skipDirectEdge:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Edges;I)Z
            ifeq 5
         4: .line 1318
            goto 10
         5: .line 1320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 6 /* orderId */
        start local 6 // int orderId
         6: .line 1321
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 6 /* orderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 7 /* value */
        start local 7 // org.graalvm.compiler.graph.Node value
         7: .line 1322
            aload 4 /* edges */
            aload 3 /* node */
            iload 5 /* index */
            aload 7 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.initializeNode:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/Node;)V
         8: .line 1323
            aload 7 /* value */
            ifnull 10
            aload 7 /* value */
            invokevirtual org.graalvm.compiler.graph.Node.isDeleted:()Z
            ifne 10
         9: .line 1324
            aload 4 /* edges */
            aload 3 /* node */
            aconst_null
            aload 7 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.update:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.graph.Node value
        end local 6 // int orderId
        10: .line 1316
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* index */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            if_icmplt 3
        end local 5 // int index
        12: .line 1329
            aload 3 /* node */
            instanceof org.graalvm.compiler.nodes.AbstractMergeNode
            ifeq 15
        13: .line 1331
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 14
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            isub
            iconst_1
            if_icmpeq 14
            new java.lang.AssertionError
            dup
            ldc "MergeNode has one variable size input (the ends)"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        14: .line 1332
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 32
            aload 3 /* node */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getOffsets:()[J
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            invokestatic org.graalvm.compiler.graph.Edges.getNodeList:(Lorg/graalvm/compiler/graph/Node;[JI)Lorg/graalvm/compiler/graph/NodeList;
            ifnonnull 32
            new java.lang.AssertionError
            dup
            ldc "Input list must have been already created"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        15: .line 1334
      StackMap locals:
      StackMap stack:
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            istore 5 /* index */
        start local 5 // int index
        16: goto 31
        17: .line 1335
      StackMap locals: int
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getSVInt:()I
            istore 6 /* size */
        start local 6 // int size
        18: .line 1336
            iload 6 /* size */
            iconst_m1
            if_icmpeq 30
        19: .line 1337
            new org.graalvm.compiler.graph.NodeInputList
            dup
            aload 3 /* node */
            iload 6 /* size */
            invokespecial org.graalvm.compiler.graph.NodeInputList.<init>:(Lorg/graalvm/compiler/graph/Node;I)V
            astore 7 /* nodeList */
        start local 7 // org.graalvm.compiler.graph.NodeList nodeList
        20: .line 1338
            aload 4 /* edges */
            aload 3 /* node */
            iload 5 /* index */
            aload 7 /* nodeList */
            invokevirtual org.graalvm.compiler.graph.Edges.initializeList:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/NodeList;)V
        21: .line 1339
            iconst_0
            istore 8 /* idx */
        start local 8 // int idx
        22: goto 29
        23: .line 1340
      StackMap locals: int org.graalvm.compiler.graph.NodeList int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 9 /* orderId */
        start local 9 // int orderId
        24: .line 1341
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 9 /* orderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 10 /* value */
        start local 10 // org.graalvm.compiler.graph.Node value
        25: .line 1342
            aload 7 /* nodeList */
            iload 8 /* idx */
            aload 10 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeList.initialize:(ILorg/graalvm/compiler/graph/Node;)V
        26: .line 1343
            aload 10 /* value */
            ifnull 28
            aload 10 /* value */
            invokevirtual org.graalvm.compiler.graph.Node.isDeleted:()Z
            ifne 28
        27: .line 1344
            aload 4 /* edges */
            aload 3 /* node */
            aconst_null
            aload 10 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.update:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        end local 10 // org.graalvm.compiler.graph.Node value
        end local 9 // int orderId
        28: .line 1339
      StackMap locals:
      StackMap stack:
            iinc 8 /* idx */ 1
      StackMap locals:
      StackMap stack:
        29: iload 8 /* idx */
            iload 6 /* size */
            if_icmplt 23
        end local 8 // int idx
        end local 7 // org.graalvm.compiler.graph.NodeList nodeList
        end local 6 // int size
        30: .line 1334
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        31: iload 5 /* index */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            if_icmplt 17
        end local 5 // int index
        32: .line 1350
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.graalvm.compiler.graph.Edges edges
        end local 3 // org.graalvm.compiler.graph.Node node
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   33     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   33     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   33     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   33     3         node  Lorg/graalvm/compiler/graph/Node;
            1   33     4        edges  Lorg/graalvm/compiler/graph/Edges;
            2   12     5        index  I
            6   10     6      orderId  I
            7   10     7        value  Lorg/graalvm/compiler/graph/Node;
           16   32     5        index  I
           18   30     6         size  I
           20   30     7     nodeList  Lorg/graalvm/compiler/graph/NodeList<Lorg/graalvm/compiler/graph/Node;>;
           22   30     8          idx  I
           24   28     9      orderId  I
           25   28    10        value  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      node         

  protected void makeFloatingNodeInputs(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=11, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.graph.Node node
         0: .line 1353
            aload 3 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getInputEdges:()Lorg/graalvm/compiler/graph/Edges;
            astore 4 /* edges */
        start local 4 // org.graalvm.compiler.graph.Edges edges
         1: .line 1354
            aload 3 /* node */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 6
         2: .line 1359
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 3
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            iconst_1
            if_icmpeq 3
            new java.lang.AssertionError
            dup
            ldc "PhiNode has one direct input (the MergeNode)"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 1360
      StackMap locals: org.graalvm.compiler.graph.Edges
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 4
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            isub
            iconst_1
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            ldc "PhiNode has one variable size input (the values)"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 1361
      StackMap locals:
      StackMap stack:
            aload 4 /* edges */
            aload 3 /* node */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            new org.graalvm.compiler.graph.NodeInputList
            dup
            aload 3 /* node */
            invokespecial org.graalvm.compiler.graph.NodeInputList.<init>:(Lorg/graalvm/compiler/graph/Node;)V
            invokevirtual org.graalvm.compiler.graph.Edges.initializeList:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/NodeList;)V
         5: .line 1362
            goto 28
         6: .line 1363
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         7: goto 12
         8: .line 1364
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 6 /* orderId */
        start local 6 // int orderId
         9: .line 1365
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 6 /* orderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 7 /* value */
        start local 7 // org.graalvm.compiler.graph.Node value
        10: .line 1366
            aload 4 /* edges */
            aload 3 /* node */
            iload 5 /* index */
            aload 7 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.initializeNode:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.graph.Node value
        end local 6 // int orderId
        11: .line 1363
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* index */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            if_icmplt 8
        end local 5 // int index
        13: .line 1368
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            istore 5 /* index */
        start local 5 // int index
        14: goto 27
        15: .line 1369
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getSVInt:()I
            istore 6 /* size */
        start local 6 // int size
        16: .line 1370
            iload 6 /* size */
            iconst_m1
            if_icmpeq 26
        17: .line 1371
            new org.graalvm.compiler.graph.NodeInputList
            dup
            aload 3 /* node */
            iload 6 /* size */
            invokespecial org.graalvm.compiler.graph.NodeInputList.<init>:(Lorg/graalvm/compiler/graph/Node;I)V
            astore 7 /* nodeList */
        start local 7 // org.graalvm.compiler.graph.NodeList nodeList
        18: .line 1372
            aload 4 /* edges */
            aload 3 /* node */
            iload 5 /* index */
            aload 7 /* nodeList */
            invokevirtual org.graalvm.compiler.graph.Edges.initializeList:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/NodeList;)V
        19: .line 1373
            iconst_0
            istore 8 /* idx */
        start local 8 // int idx
        20: goto 25
        21: .line 1374
      StackMap locals: int org.graalvm.compiler.graph.NodeList int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 9 /* orderId */
        start local 9 // int orderId
        22: .line 1375
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 9 /* orderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.ensureNodeCreated:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 10 /* value */
        start local 10 // org.graalvm.compiler.graph.Node value
        23: .line 1376
            aload 7 /* nodeList */
            iload 8 /* idx */
            aload 10 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeList.initialize:(ILorg/graalvm/compiler/graph/Node;)V
        end local 10 // org.graalvm.compiler.graph.Node value
        end local 9 // int orderId
        24: .line 1373
            iinc 8 /* idx */ 1
      StackMap locals:
      StackMap stack:
        25: iload 8 /* idx */
            iload 6 /* size */
            if_icmplt 21
        end local 8 // int idx
        end local 7 // org.graalvm.compiler.graph.NodeList nodeList
        end local 6 // int size
        26: .line 1368
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        27: iload 5 /* index */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            if_icmplt 15
        end local 5 // int index
        28: .line 1381
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.graalvm.compiler.graph.Edges edges
        end local 3 // org.graalvm.compiler.graph.Node node
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   29     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   29     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   29     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   29     3         node  Lorg/graalvm/compiler/graph/Node;
            1   29     4        edges  Lorg/graalvm/compiler/graph/Edges;
            7   13     5        index  I
            9   11     6      orderId  I
           10   11     7        value  Lorg/graalvm/compiler/graph/Node;
           14   28     5        index  I
           16   26     6         size  I
           18   26     7     nodeList  Lorg/graalvm/compiler/graph/NodeList<Lorg/graalvm/compiler/graph/Node;>;
           20   26     8          idx  I
           22   24     9      orderId  I
           23   24    10        value  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      node         

  protected org.graalvm.compiler.graph.Node ensureNodeCreated(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // int nodeOrderId
         0: .line 1384
            iload 3 /* nodeOrderId */
            ifne 2
         1: .line 1385
            aconst_null
            areturn
         2: .line 1387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 4 /* node */
        start local 4 // org.graalvm.compiler.graph.Node node
         3: .line 1388
            aload 4 /* node */
            ifnull 5
         4: .line 1389
            aload 4 /* node */
            areturn
         5: .line 1392
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.decodeFloatingNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            astore 4 /* node */
         6: .line 1393
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifne 7
            aload 4 /* node */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 9
         7: .line 1398
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addWithoutUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            astore 4 /* node */
         8: .line 1399
            goto 15
         9: .line 1401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleFloatingNodeBeforeAdd:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            astore 5 /* newNode */
        start local 5 // org.graalvm.compiler.graph.Node newNode
        10: .line 1402
            aload 5 /* newNode */
            aload 4 /* node */
            if_acmpeq 12
        11: .line 1403
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.releaseFloatingNode:(Lorg/graalvm/compiler/graph/Node;)V
        12: .line 1406
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 5 /* newNode */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 14
        13: .line 1407
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 5 /* newNode */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.addFloatingNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            astore 5 /* newNode */
        14: .line 1409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 5 /* newNode */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.handleFloatingNodeAfterAdd:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            astore 4 /* node */
        end local 5 // org.graalvm.compiler.graph.Node newNode
        15: .line 1411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            aload 4 /* node */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        16: .line 1412
            aload 4 /* node */
            areturn
        end local 4 // org.graalvm.compiler.graph.Node node
        end local 3 // int nodeOrderId
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   17     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   17     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   17     3  nodeOrderId  I
            3   17     4         node  Lorg/graalvm/compiler/graph/Node;
           10   15     5      newNode  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      nodeOrderId  

  protected org.graalvm.compiler.graph.Node addFloatingNode(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.graph.Node node
         0: .line 1420
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 2 /* node */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addWithoutUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            areturn
        end local 2 // org.graalvm.compiler.graph.Node node
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    1     2         node  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      node         

  protected org.graalvm.compiler.graph.Node decodeFloatingNode(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // int nodeOrderId
         0: .line 1427
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getByteIndex:()J
            lstore 4 /* readerByteIndex */
        start local 4 // long readerByteIndex
         1: .line 1429
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            getfield org.graalvm.compiler.nodes.EncodedGraph.nodeStartOffsets:[I
            iload 3 /* nodeOrderId */
            iaload
            i2l
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.setByteIndex:(J)V
         2: .line 1430
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            invokevirtual org.graalvm.compiler.nodes.EncodedGraph.getNodeClasses:()[Lorg/graalvm/compiler/graph/NodeClass;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            aaload
            astore 6 /* nodeClass */
        start local 6 // org.graalvm.compiler.graph.NodeClass nodeClass
         3: .line 1431
            aload 0 /* this */
            aload 6 /* nodeClass */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.allocateFloatingNode:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/Node;
            astore 7 /* node */
        start local 7 // org.graalvm.compiler.graph.Node node
         4: .line 1432
            aload 7 /* node */
            instanceof org.graalvm.compiler.nodes.FixedNode
            ifeq 6
         5: .line 1437
            new java.lang.StringBuilder
            dup
            ldc "Not a floating node: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* node */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         6: .line 1441
      StackMap locals: long org.graalvm.compiler.graph.NodeClass org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            aload 7 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeFloatingNodeInputs:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)V
         7: .line 1444
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 7 /* node */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readProperties:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/graph/Node;)V
         8: .line 1446
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 9
            aload 7 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            getstatic org.graalvm.compiler.graph.Edges$Type.Successors:Lorg/graalvm/compiler/graph/Edges$Type;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getEdges:(Lorg/graalvm/compiler/graph/Edges$Type;)Lorg/graalvm/compiler/graph/Edges;
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            ifeq 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 1448
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            lload 4 /* readerByteIndex */
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.setByteIndex:(J)V
        10: .line 1449
            aload 7 /* node */
            areturn
        end local 7 // org.graalvm.compiler.graph.Node node
        end local 6 // org.graalvm.compiler.graph.NodeClass nodeClass
        end local 4 // long readerByteIndex
        end local 3 // int nodeOrderId
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   11     1      methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   11     2        loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   11     3      nodeOrderId  I
            1   11     4  readerByteIndex  J
            3   11     6        nodeClass  Lorg/graalvm/compiler/graph/NodeClass<*>;
            4   11     7             node  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      nodeOrderId  

  private org.graalvm.compiler.graph.Node allocateFloatingNode(org.graalvm.compiler.graph.NodeClass<?>);
    descriptor: (Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.graph.NodeClass nodeClass
         0: .line 1453
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.reusableFloatingNodes:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* nodeClass */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayDeque
            astore 2 /* cachedNodes */
        start local 2 // java.util.ArrayDeque cachedNodes
         1: .line 1454
            aload 2 /* cachedNodes */
            ifnull 5
         2: .line 1455
            aload 2 /* cachedNodes */
            invokevirtual java.util.ArrayDeque.poll:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 3 /* node */
        start local 3 // org.graalvm.compiler.graph.Node node
         3: .line 1456
            aload 3 /* node */
            ifnull 5
         4: .line 1457
            aload 3 /* node */
            areturn
        end local 3 // org.graalvm.compiler.graph.Node node
         5: .line 1460
      StackMap locals: java.util.ArrayDeque
      StackMap stack:
            aload 1 /* nodeClass */
            invokevirtual org.graalvm.compiler.graph.NodeClass.allocateInstance:()Lorg/graalvm/compiler/graph/Node;
            areturn
        end local 2 // java.util.ArrayDeque cachedNodes
        end local 1 // org.graalvm.compiler.graph.NodeClass nodeClass
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    6     1    nodeClass  Lorg/graalvm/compiler/graph/NodeClass<*>;
            1    6     2  cachedNodes  Ljava/util/ArrayDeque<+Lorg/graalvm/compiler/graph/Node;>;
            3    5     3         node  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/NodeClass<*>;)Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
           Name  Flags
      nodeClass  

  private void releaseFloatingNode(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.graph.Node node
         0: .line 1464
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.reusableFloatingNodes:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayDeque
            astore 2 /* cachedNodes */
        start local 2 // java.util.ArrayDeque cachedNodes
         1: .line 1465
            aload 2 /* cachedNodes */
            ifnonnull 4
         2: .line 1466
            new java.util.ArrayDeque
            dup
            iconst_2
            invokespecial java.util.ArrayDeque.<init>:(I)V
            astore 2 /* cachedNodes */
         3: .line 1467
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.reusableFloatingNodes:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            aload 2 /* cachedNodes */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 1469
      StackMap locals: java.util.ArrayDeque
      StackMap stack:
            aload 2 /* cachedNodes */
            aload 1 /* node */
            invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
         5: .line 1470
            return
        end local 2 // java.util.ArrayDeque cachedNodes
        end local 1 // org.graalvm.compiler.graph.Node node
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    6     1         node  Lorg/graalvm/compiler/graph/Node;
            1    6     2  cachedNodes  Ljava/util/ArrayDeque<Lorg/graalvm/compiler/graph/Node;>;
    MethodParameters:
      Name  Flags
      node  

  protected org.graalvm.compiler.graph.Node handleFloatingNodeBeforeAdd(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.graph.Node node
         0: .line 1481
            aload 3 /* node */
            areturn
        end local 3 // org.graalvm.compiler.graph.Node node
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    1     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    1     3         node  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      node         

  protected org.graalvm.compiler.graph.Node handleFloatingNodeAfterAdd(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.graph.Node node
         0: .line 1496
            aload 3 /* node */
            areturn
        end local 3 // org.graalvm.compiler.graph.Node node
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0    1     2    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    1     3         node  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      node         

  protected void makeSuccessorStubs(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, org.graalvm.compiler.graph.Node, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;Lorg/graalvm/compiler/graph/Node;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=15, args_size=5
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // org.graalvm.compiler.graph.Node node
        start local 4 // boolean updatePredecessors
         0: .line 1506
            aconst_null
            astore 5
            aconst_null
            astore 6
         1: getstatic org.graalvm.compiler.nodes.GraphDecoder.MakeSuccessorStubsTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 7 /* a */
        start local 7 // org.graalvm.compiler.debug.DebugCloseable a
         2: .line 1507
            aload 3 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.getSuccessorEdges:()Lorg/graalvm/compiler/graph/Edges;
            astore 8 /* edges */
        start local 8 // org.graalvm.compiler.graph.Edges edges
         3: .line 1508
            iconst_0
            istore 9 /* index */
        start local 9 // int index
         4: goto 13
         5: .line 1509
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.graph.Node int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable org.graalvm.compiler.graph.Edges int
      StackMap stack:
            aload 3 /* node */
            aload 8 /* edges */
            iload 9 /* index */
            invokestatic org.graalvm.compiler.nodes.GraphDecoder.skipDirectEdge:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Edges;I)Z
            ifeq 7
         6: .line 1510
            goto 12
         7: .line 1512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 10 /* orderId */
        start local 10 // int orderId
         8: .line 1513
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 10 /* orderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            astore 11 /* value */
        start local 11 // org.graalvm.compiler.graph.Node value
         9: .line 1514
            aload 8 /* edges */
            aload 3 /* node */
            iload 9 /* index */
            aload 11 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.initializeNode:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/Node;)V
        10: .line 1515
            iload 4 /* updatePredecessors */
            ifeq 12
            aload 11 /* value */
            ifnull 12
        11: .line 1516
            aload 8 /* edges */
            aload 3 /* node */
            aconst_null
            aload 11 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.update:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        end local 11 // org.graalvm.compiler.graph.Node value
        end local 10 // int orderId
        12: .line 1508
      StackMap locals:
      StackMap stack:
            iinc 9 /* index */ 1
      StackMap locals:
      StackMap stack:
        13: iload 9 /* index */
            aload 8 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            if_icmplt 5
        end local 9 // int index
        14: .line 1519
            aload 8 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            istore 9 /* index */
        start local 9 // int index
        15: goto 30
        16: .line 1520
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getSVInt:()I
            istore 10 /* size */
        start local 10 // int size
        17: .line 1521
            iload 10 /* size */
            iconst_m1
            if_icmpeq 29
        18: .line 1522
            new org.graalvm.compiler.graph.NodeSuccessorList
            dup
            aload 3 /* node */
            iload 10 /* size */
            invokespecial org.graalvm.compiler.graph.NodeSuccessorList.<init>:(Lorg/graalvm/compiler/graph/Node;I)V
            astore 11 /* nodeList */
        start local 11 // org.graalvm.compiler.graph.NodeList nodeList
        19: .line 1523
            aload 8 /* edges */
            aload 3 /* node */
            iload 9 /* index */
            aload 11 /* nodeList */
            invokevirtual org.graalvm.compiler.graph.Edges.initializeList:(Lorg/graalvm/compiler/graph/Node;ILorg/graalvm/compiler/graph/NodeList;)V
        20: .line 1524
            iconst_0
            istore 12 /* idx */
        start local 12 // int idx
        21: goto 28
        22: .line 1525
      StackMap locals: int org.graalvm.compiler.graph.NodeList int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodScope */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.readOrderId:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
            istore 13 /* orderId */
        start local 13 // int orderId
        23: .line 1526
            aload 0 /* this */
            aload 1 /* methodScope */
            aload 2 /* loopScope */
            iload 13 /* orderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.makeStubNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
            astore 14 /* value */
        start local 14 // org.graalvm.compiler.graph.Node value
        24: .line 1527
            aload 11 /* nodeList */
            iload 12 /* idx */
            aload 14 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeList.initialize:(ILorg/graalvm/compiler/graph/Node;)V
        25: .line 1528
            iload 4 /* updatePredecessors */
            ifeq 27
            aload 14 /* value */
            ifnull 27
        26: .line 1529
            aload 8 /* edges */
            aload 3 /* node */
            aconst_null
            aload 14 /* value */
            invokevirtual org.graalvm.compiler.graph.Edges.update:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        end local 14 // org.graalvm.compiler.graph.Node value
        end local 13 // int orderId
        27: .line 1524
      StackMap locals:
      StackMap stack:
            iinc 12 /* idx */ 1
      StackMap locals:
      StackMap stack:
        28: iload 12 /* idx */
            iload 10 /* size */
            if_icmplt 22
        end local 12 // int idx
        end local 11 // org.graalvm.compiler.graph.NodeList nodeList
        end local 10 // int size
        29: .line 1519
      StackMap locals:
      StackMap stack:
            iinc 9 /* index */ 1
      StackMap locals:
      StackMap stack:
        30: iload 9 /* index */
            aload 8 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            if_icmplt 16
        end local 9 // int index
        end local 8 // org.graalvm.compiler.graph.Edges edges
        31: .line 1534
            aload 7 /* a */
            ifnull 37
            aload 7 /* a */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 37
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.GraphDecoder$LoopScope org.graalvm.compiler.graph.Node int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
        32: astore 5
            aload 7 /* a */
            ifnull 33
            aload 7 /* a */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugCloseable a
      StackMap locals:
      StackMap stack:
        33: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 6
            aload 5
            ifnonnull 35
            aload 6
            astore 5
            goto 36
      StackMap locals:
      StackMap stack:
        35: aload 5
            aload 6
            if_acmpeq 36
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        36: aload 5
            athrow
        37: .line 1535
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean updatePredecessors
        end local 3 // org.graalvm.compiler.graph.Node node
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   38     0                this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   38     1         methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   38     2           loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   38     3                node  Lorg/graalvm/compiler/graph/Node;
            0   38     4  updatePredecessors  Z
            2   33     7                   a  Lorg/graalvm/compiler/debug/DebugCloseable;
            3   31     8               edges  Lorg/graalvm/compiler/graph/Edges;
            4   14     9               index  I
            8   12    10             orderId  I
            9   12    11               value  Lorg/graalvm/compiler/graph/Node;
           15   31     9               index  I
           17   29    10                size  I
           19   29    11            nodeList  Lorg/graalvm/compiler/graph/NodeList<Lorg/graalvm/compiler/graph/Node;>;
           21   29    12                 idx  I
           23   27    13             orderId  I
           24   27    14               value  Lorg/graalvm/compiler/graph/Node;
      Exception table:
        from    to  target  type
           2    31      32  any
           1    34      34  any
    MethodParameters:
                    Name  Flags
      methodScope         
      loopScope           
      node                
      updatePredecessors  

  protected org.graalvm.compiler.nodes.FixedNode makeStubNode(org.graalvm.compiler.nodes.GraphDecoder$MethodScope, org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/nodes/FixedNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        start local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 3 // int nodeOrderId
         0: .line 1538
            iload 3 /* nodeOrderId */
            ifne 2
         1: .line 1539
            aconst_null
            areturn
         2: .line 1541
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FixedNode
            astore 4 /* node */
        start local 4 // org.graalvm.compiler.nodes.FixedNode node
         3: .line 1542
            aload 4 /* node */
            ifnull 5
         4: .line 1543
            aload 4 /* node */
            areturn
         5: .line 1546
      StackMap locals: org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getByteIndex:()J
            lstore 5 /* readerByteIndex */
        start local 5 // long readerByteIndex
         6: .line 1547
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            getfield org.graalvm.compiler.nodes.EncodedGraph.nodeStartOffsets:[I
            iload 3 /* nodeOrderId */
            iaload
            i2l
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.setByteIndex:(J)V
         7: .line 1548
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            invokevirtual org.graalvm.compiler.nodes.EncodedGraph.getNodeClasses:()[Lorg/graalvm/compiler/graph/NodeClass;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            aaload
            astore 7 /* nodeClass */
        start local 7 // org.graalvm.compiler.graph.NodeClass nodeClass
         8: .line 1549
            aload 7 /* nodeClass */
            invokevirtual org.graalvm.compiler.graph.NodeClass.allocateInstance:()Lorg/graalvm/compiler/graph/Node;
            astore 8 /* stubNode */
        start local 8 // org.graalvm.compiler.graph.Node stubNode
         9: .line 1550
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.trackNodeSourcePosition:()Z
            ifeq 11
        10: .line 1551
            aload 8 /* stubNode */
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokestatic org.graalvm.compiler.graph.NodeSourcePosition.placeholder:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/graph/NodeSourcePosition;
            invokevirtual org.graalvm.compiler.graph.Node.setNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
        11: .line 1553
      StackMap locals: long org.graalvm.compiler.graph.NodeClass org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 8 /* stubNode */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FixedNode
            astore 4 /* node */
        12: .line 1555
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            lload 5 /* readerByteIndex */
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.setByteIndex:(J)V
        13: .line 1557
            aload 0 /* this */
            aload 2 /* loopScope */
            iload 3 /* nodeOrderId */
            aload 4 /* node */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.registerNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
        14: .line 1558
            aload 2 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.nodesToProcess:Ljava/util/BitSet;
            iload 3 /* nodeOrderId */
            invokevirtual java.util.BitSet.set:(I)V
        15: .line 1559
            aload 4 /* node */
            areturn
        end local 8 // org.graalvm.compiler.graph.Node stubNode
        end local 7 // org.graalvm.compiler.graph.NodeClass nodeClass
        end local 5 // long readerByteIndex
        end local 4 // org.graalvm.compiler.nodes.FixedNode node
        end local 3 // int nodeOrderId
        end local 2 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0   16     1      methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            0   16     2        loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0   16     3      nodeOrderId  I
            3   16     4             node  Lorg/graalvm/compiler/nodes/FixedNode;
            6   16     5  readerByteIndex  J
            8   16     7        nodeClass  Lorg/graalvm/compiler/graph/NodeClass<*>;
            9   16     8         stubNode  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
             Name  Flags
      methodScope  
      loopScope    
      nodeOrderId  

  protected static boolean skipDirectEdge(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Edges, int);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Edges;I)Z
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.graph.Node node
        start local 1 // org.graalvm.compiler.graph.Edges edges
        start local 2 // int index
         0: .line 1563
            aload 0 /* node */
            instanceof org.graalvm.compiler.nodes.Invoke
            ifeq 14
         1: .line 1564
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 2
            aload 0 /* node */
            instanceof org.graalvm.compiler.nodes.InvokeNode
            ifne 2
            aload 0 /* node */
            instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
            ifne 2
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "The only two Invoke node classes. Got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* node */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1565
      StackMap locals:
      StackMap stack:
            aload 1 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.type:()Lorg/graalvm/compiler/graph/Edges$Type;
            getstatic org.graalvm.compiler.graph.Edges$Type.Successors:Lorg/graalvm/compiler/graph/Edges$Type;
            if_acmpne 8
         3: .line 1566
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 7
            aload 1 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getCount:()I
            aload 0 /* node */
            instanceof org.graalvm.compiler.nodes.InvokeWithExceptionNode
            ifeq 4
            iconst_2
            goto 5
         4: .line 1567
      StackMap locals:
      StackMap stack: int
            iconst_1
         5: .line 1566
      StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Edges int
      StackMap stack: int int
            if_icmpeq 7
            new java.lang.AssertionError
            dup
         6: .line 1567
            ldc "InvokeNode has one successor (next); InvokeWithExceptionNode has two successors (next, exceptionEdge)"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         7: .line 1568
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         8: .line 1570
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 9
            aload 1 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.type:()Lorg/graalvm/compiler/graph/Edges$Type;
            getstatic org.graalvm.compiler.graph.Edges$Type.Inputs:Lorg/graalvm/compiler/graph/Edges$Type;
            if_acmpeq 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 1571
      StackMap locals:
      StackMap stack:
            aload 1 /* edges */
            iload 2 /* index */
            invokevirtual org.graalvm.compiler.graph.Edges.getType:(I)Ljava/lang/Class;
            ldc Lorg/graalvm/compiler/nodes/CallTargetNode;
            if_acmpne 11
        10: .line 1572
            iconst_1
            ireturn
        11: .line 1573
      StackMap locals:
      StackMap stack:
            aload 1 /* edges */
            iload 2 /* index */
            invokevirtual org.graalvm.compiler.graph.Edges.getType:(I)Ljava/lang/Class;
            ldc Lorg/graalvm/compiler/nodes/FrameState;
            if_acmpne 16
        12: .line 1574
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 13
            aload 1 /* edges */
            aload 0 /* node */
            iload 2 /* index */
            invokevirtual org.graalvm.compiler.graph.Edges.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            ifnull 13
            aload 1 /* edges */
            aload 0 /* node */
            iload 2 /* index */
            invokevirtual org.graalvm.compiler.graph.Edges.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            aload 0 /* node */
            checkcast org.graalvm.compiler.nodes.Invoke
            invokeinterface org.graalvm.compiler.nodes.Invoke.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            if_acmpeq 13
            new java.lang.AssertionError
            dup
            ldc "Only stateAfter can be a FrameState during encoding"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        13: .line 1575
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        14: .line 1578
      StackMap locals:
      StackMap stack:
            aload 0 /* node */
            instanceof org.graalvm.compiler.nodes.LoopExitNode
            ifeq 16
            aload 1 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.type:()Lorg/graalvm/compiler/graph/Edges$Type;
            getstatic org.graalvm.compiler.graph.Edges$Type.Inputs:Lorg/graalvm/compiler/graph/Edges$Type;
            if_acmpne 16
            aload 1 /* edges */
            iload 2 /* index */
            invokevirtual org.graalvm.compiler.graph.Edges.getType:(I)Ljava/lang/Class;
            ldc Lorg/graalvm/compiler/nodes/FrameState;
            if_acmpne 16
        15: .line 1580
            iconst_1
            ireturn
        16: .line 1583
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // int index
        end local 1 // org.graalvm.compiler.graph.Edges edges
        end local 0 // org.graalvm.compiler.graph.Node node
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   node  Lorg/graalvm/compiler/graph/Node;
            0   17     1  edges  Lorg/graalvm/compiler/graph/Edges;
            0   17     2  index  I
    MethodParameters:
       Name  Flags
      node   
      edges  
      index  

  protected org.graalvm.compiler.graph.Node lookupNode(org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 2 // int nodeOrderId
         0: .line 1587
            aload 1 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 2 /* nodeOrderId */
            aaload
            areturn
        end local 2 // int nodeOrderId
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1    loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    1     2  nodeOrderId  I
    MethodParameters:
             Name  Flags
      loopScope    
      nodeOrderId  

  protected void registerNode(org.graalvm.compiler.nodes.GraphDecoder$LoopScope, int, org.graalvm.compiler.graph.Node, boolean, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;ILorg/graalvm/compiler/graph/Node;ZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        start local 2 // int nodeOrderId
        start local 3 // org.graalvm.compiler.graph.Node node
        start local 4 // boolean allowOverwrite
        start local 5 // boolean allowNull
         0: .line 1591
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 1
            aload 3 /* node */
            ifnull 1
            aload 3 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1592
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 2
            iload 5 /* allowNull */
            ifne 2
            aload 3 /* node */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1593
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 3
            iload 4 /* allowOverwrite */
            ifne 3
            aload 0 /* this */
            aload 1 /* loopScope */
            iload 2 /* nodeOrderId */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.lookupNode:(Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;I)Lorg/graalvm/compiler/graph/Node;
            ifnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1594
      StackMap locals:
      StackMap stack:
            aload 1 /* loopScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$LoopScope.createdNodes:[Lorg/graalvm/compiler/graph/Node;
            iload 2 /* nodeOrderId */
            aload 3 /* node */
            aastore
         4: .line 1595
            return
        end local 5 // boolean allowNull
        end local 4 // boolean allowOverwrite
        end local 3 // org.graalvm.compiler.graph.Node node
        end local 2 // int nodeOrderId
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$LoopScope loopScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    5     1       loopScope  Lorg/graalvm/compiler/nodes/GraphDecoder$LoopScope;
            0    5     2     nodeOrderId  I
            0    5     3            node  Lorg/graalvm/compiler/graph/Node;
            0    5     4  allowOverwrite  Z
            0    5     5       allowNull  Z
    MethodParameters:
                Name  Flags
      loopScope       
      nodeOrderId     
      node            
      allowOverwrite  
      allowNull       

  protected int readOrderId(org.graalvm.compiler.nodes.GraphDecoder$MethodScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
         0: .line 1598
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.orderIdWidth:I
            tableswitch { // 1 - 4
                    1: 1
                    2: 2
                    3: 4
                    4: 3
              default: 4
          }
         1: .line 1600
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getU1:()I
            ireturn
         2: .line 1602
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getU2:()I
            ireturn
         3: .line 1604
      StackMap locals:
      StackMap stack:
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getS4:()I
            ireturn
         4: .line 1606
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Invalid orderIdWidth: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.orderIdWidth:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    5     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
    MethodParameters:
             Name  Flags
      methodScope  

  protected java.lang.Object readObject(org.graalvm.compiler.nodes.GraphDecoder$MethodScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
         0: .line 1610
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.encodedGraph:Lorg/graalvm/compiler/nodes/EncodedGraph;
            aload 1 /* methodScope */
            getfield org.graalvm.compiler.nodes.GraphDecoder$MethodScope.reader:Lorg/graalvm/compiler/core/common/util/TypeReader;
            invokeinterface org.graalvm.compiler.core.common.util.TypeReader.getUVInt:()I
            invokevirtual org.graalvm.compiler.nodes.EncodedGraph.getObject:(I)Ljava/lang/Object;
            areturn
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    1     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
    MethodParameters:
             Name  Flags
      methodScope  

  protected void cleanupGraph(org.graalvm.compiler.nodes.GraphDecoder$MethodScope);
    descriptor: (Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
        start local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
         0: .line 1619
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            getstatic org.graalvm.compiler.nodes.MergeNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 2 /* merge */
        start local 2 // org.graalvm.compiler.nodes.MergeNode merge
         2: .line 1620
            aload 2 /* merge */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            ldc Lorg/graalvm/compiler/nodes/GraphDecoder$ProxyPlaceholder;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 5
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope org.graalvm.compiler.nodes.MergeNode java.util.Iterator top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder
            astore 4 /* placeholder */
        start local 4 // org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder placeholder
         4: .line 1621
            aload 4 /* placeholder */
            aload 4 /* placeholder */
            getfield org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder.value:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 4 // org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder placeholder
         5: .line 1620
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 2 // org.graalvm.compiler.nodes.MergeNode merge
         6: .line 1619
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         7: .line 1624
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 8
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.GraphDecoder.verifyEdges:()Z
            ifne 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 1625
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.nodes.GraphDecoder$MethodScope
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.GraphDecoder$MethodScope methodScope
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            0    9     1  methodScope  Lorg/graalvm/compiler/nodes/GraphDecoder$MethodScope;
            2    6     2        merge  Lorg/graalvm/compiler/nodes/MergeNode;
            4    5     4  placeholder  Lorg/graalvm/compiler/nodes/GraphDecoder$ProxyPlaceholder;
    MethodParameters:
             Name  Flags
      methodScope  

  protected boolean verifyEdges();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.graalvm.compiler.nodes.GraphDecoder this
         0: .line 1628
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.GraphDecoder.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 2
            goto 21
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 1 /* node */
        start local 1 // org.graalvm.compiler.graph.Node node
         2: .line 1629
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 3
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1630
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 3 /* i */
        start local 3 // org.graalvm.compiler.graph.Node i
         5: .line 1631
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 6
            aload 3 /* i */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 1632
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 7
            aload 3 /* i */
            invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 1 /* node */
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.contains:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 3 // org.graalvm.compiler.graph.Node i
         7: .line 1630
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 1634
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 12
      StackMap locals:
      StackMap stack:
         9: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 3 /* s */
        start local 3 // org.graalvm.compiler.graph.Node s
        10: .line 1635
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 11
            aload 3 /* s */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 1636
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 12
            aload 3 /* s */
            invokevirtual org.graalvm.compiler.graph.Node.predecessor:()Lorg/graalvm/compiler/graph/Node;
            aload 1 /* node */
            if_acmpeq 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 3 // org.graalvm.compiler.graph.Node s
        12: .line 1634
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 1639
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 17
      StackMap locals:
      StackMap stack:
        14: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 3 /* usage */
        start local 3 // org.graalvm.compiler.graph.Node usage
        15: .line 1640
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 16
            aload 3 /* usage */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 16
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        16: .line 1641
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 17
            aload 3 /* usage */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 1 /* node */
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.contains:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 17
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " / "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* usage */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " / "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* usage */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 3 // org.graalvm.compiler.graph.Node usage
        17: .line 1639
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        18: .line 1643
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.predecessor:()Lorg/graalvm/compiler/graph/Node;
            ifnull 21
        19: .line 1644
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 20
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.predecessor:()Lorg/graalvm/compiler/graph/Node;
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 20
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        20: .line 1645
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphDecoder.$assertionsDisabled:Z
            ifne 21
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.predecessor:()Lorg/graalvm/compiler/graph/Node;
            invokevirtual org.graalvm.compiler.graph.Node.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 1 /* node */
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.contains:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 21
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 1 // org.graalvm.compiler.graph.Node node
        21: .line 1628
      StackMap locals: org.graalvm.compiler.nodes.GraphDecoder top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        22: .line 1648
            iconst_1
            ireturn
        end local 0 // org.graalvm.compiler.nodes.GraphDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0   this  Lorg/graalvm/compiler/nodes/GraphDecoder;
            2   21     1   node  Lorg/graalvm/compiler/graph/Node;
            5    7     3      i  Lorg/graalvm/compiler/graph/Node;
           10   12     3      s  Lorg/graalvm/compiler/graph/Node;
           15   17     3  usage  Lorg/graalvm/compiler/graph/Node;
}
SourceFile: "GraphDecoder.java"
NestMembers:
  org.graalvm.compiler.nodes.GraphDecoder$InvokeData  org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState  org.graalvm.compiler.nodes.GraphDecoder$LoopScope  org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger  org.graalvm.compiler.nodes.GraphDecoder$MethodScope  org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder
InnerClasses:
  public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext
  public final Type = org.graalvm.compiler.graph.Edges$Type of org.graalvm.compiler.graph.Edges
  public Mark = org.graalvm.compiler.graph.Graph$Mark of org.graalvm.compiler.graph.Graph
  public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
  protected InvokeData = org.graalvm.compiler.nodes.GraphDecoder$InvokeData of org.graalvm.compiler.nodes.GraphDecoder
  protected LoopExplosionState = org.graalvm.compiler.nodes.GraphDecoder$LoopExplosionState of org.graalvm.compiler.nodes.GraphDecoder
  protected LoopScope = org.graalvm.compiler.nodes.GraphDecoder$LoopScope of org.graalvm.compiler.nodes.GraphDecoder
  public final LoopScopeTrigger = org.graalvm.compiler.nodes.GraphDecoder$LoopScopeTrigger of org.graalvm.compiler.nodes.GraphDecoder
  protected MethodScope = org.graalvm.compiler.nodes.GraphDecoder$MethodScope of org.graalvm.compiler.nodes.GraphDecoder
  protected final ProxyPlaceholder = org.graalvm.compiler.nodes.GraphDecoder$ProxyPlaceholder of org.graalvm.compiler.nodes.GraphDecoder
  public final LoopExplosionKind = org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin$LoopExplosionKind of org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin