class org.graalvm.compiler.nodes.GraphComparison
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.graalvm.compiler.nodes.GraphComparison
  super_class: java.lang.Object
{
  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 477
            ldc Lorg/graalvm/compiler/nodes/GraphComparison;
            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.GraphComparison.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.GraphComparison this
         0: .line 477
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.nodes.GraphComparison this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/GraphComparison;

  public static boolean verifyGraphsEqual(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.StructuredGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/StructuredGraph;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=11, args_size=2
        start local 0 // org.graalvm.compiler.nodes.StructuredGraph expectedGraph
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph actualGraph
         0: .line 479
            new org.graalvm.compiler.graph.NodeMap
            dup
            aload 0 /* expectedGraph */
            invokespecial org.graalvm.compiler.graph.NodeMap.<init>:(Lorg/graalvm/compiler/graph/Graph;)V
            astore 2 /* nodeMapping */
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
         1: .line 480
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            astore 3 /* workList */
        start local 3 // java.util.Deque workList
         2: .line 482
            aload 0 /* expectedGraph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.start:()Lorg/graalvm/compiler/nodes/StartNode;
            aload 1 /* actualGraph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.start:()Lorg/graalvm/compiler/nodes/StartNode;
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            invokestatic org.graalvm.compiler.nodes.GraphComparison.pushToWorklist:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
         3: .line 483
            goto 34
         4: .line 484
      StackMap locals: org.graalvm.compiler.graph.NodeMap java.util.Deque
      StackMap stack:
            aload 3 /* workList */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            checkcast jdk.internal.vm.compiler.collections.Pair
            astore 4 /* pair */
        start local 4 // jdk.internal.vm.compiler.collections.Pair pair
         5: .line 485
            aload 4 /* pair */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 5 /* expectedNode */
        start local 5 // org.graalvm.compiler.graph.Node expectedNode
         6: .line 486
            aload 4 /* pair */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 6 /* actualNode */
        start local 6 // org.graalvm.compiler.graph.Node actualNode
         7: .line 487
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 8
            aload 5 /* expectedNode */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 6 /* actualNode */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpeq 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 489
      StackMap locals: jdk.internal.vm.compiler.collections.Pair org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 5 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            astore 7 /* nodeClass */
        start local 7 // org.graalvm.compiler.graph.NodeClass nodeClass
         9: .line 490
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 10
            aload 7 /* nodeClass */
            aload 6 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            if_acmpeq 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 492
      StackMap locals: org.graalvm.compiler.graph.NodeClass
      StackMap stack:
            aload 5 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.MergeNode
            ifeq 13
        11: .line 494
            aload 5 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 6 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iconst_1
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodesEqual:(Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        12: .line 495
            goto 17
      StackMap locals:
      StackMap stack:
        13: aload 5 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 16
        14: .line 496
            aload 5 /* expectedNode */
            checkcast org.graalvm.compiler.nodes.PhiNode
            aload 6 /* actualNode */
            checkcast org.graalvm.compiler.nodes.PhiNode
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyPhi:(Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
        15: .line 497
            goto 17
        16: .line 498
      StackMap locals:
      StackMap stack:
            aload 5 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 6 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iconst_0
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodesEqual:(Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        17: .line 500
      StackMap locals:
      StackMap stack:
            aload 5 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.Node.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 6 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.Node.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iconst_0
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodesEqual:(Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        18: .line 502
            aload 5 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.LoopEndNode
            ifeq 21
        19: .line 503
            aload 6 /* actualNode */
            checkcast org.graalvm.compiler.nodes.LoopEndNode
            astore 8 /* actualLoopEnd */
        start local 8 // org.graalvm.compiler.nodes.LoopEndNode actualLoopEnd
        20: .line 504
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 28
            aload 8 /* actualLoopEnd */
            invokevirtual org.graalvm.compiler.nodes.LoopEndNode.loopBegin:()Lorg/graalvm/compiler/nodes/LoopBeginNode;
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.loopEnds:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
            aload 8 /* actualLoopEnd */
            invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
            aload 8 /* actualLoopEnd */
            invokevirtual org.graalvm.compiler.nodes.LoopEndNode.endIndex:()I
            if_icmpeq 28
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 8 // org.graalvm.compiler.nodes.LoopEndNode actualLoopEnd
        21: .line 506
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        22: goto 27
        23: .line 507
      StackMap locals: int
      StackMap stack:
            aload 7 /* nodeClass */
            invokevirtual org.graalvm.compiler.graph.NodeClass.getData:()Lorg/graalvm/compiler/core/common/Fields;
            aload 5 /* expectedNode */
            iload 8 /* i */
            invokevirtual org.graalvm.compiler.core.common.Fields.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            astore 9 /* expectedProperty */
        start local 9 // java.lang.Object expectedProperty
        24: .line 508
            aload 7 /* nodeClass */
            invokevirtual org.graalvm.compiler.graph.NodeClass.getData:()Lorg/graalvm/compiler/core/common/Fields;
            aload 6 /* actualNode */
            iload 8 /* i */
            invokevirtual org.graalvm.compiler.core.common.Fields.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            astore 10 /* actualProperty */
        start local 10 // java.lang.Object actualProperty
        25: .line 509
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 26
            aload 9 /* expectedProperty */
            aload 10 /* actualProperty */
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 26
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 10 // java.lang.Object actualProperty
        end local 9 // java.lang.Object expectedProperty
        26: .line 506
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 8 /* i */
            aload 7 /* nodeClass */
            invokevirtual org.graalvm.compiler.graph.NodeClass.getData:()Lorg/graalvm/compiler/core/common/Fields;
            invokevirtual org.graalvm.compiler.core.common.Fields.getCount:()I
            if_icmplt 23
        end local 8 // int i
        28: .line 513
      StackMap locals:
      StackMap stack:
            aload 5 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.EndNode
            ifeq 32
        29: .line 515
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 30
            aload 5 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
            iconst_1
            if_icmpeq 30
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        30: .line 516
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 31
            aload 6 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
            iconst_1
            if_icmpeq 31
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        31: .line 517
      StackMap locals:
      StackMap stack:
            aload 5 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 6 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iconst_0
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodesEqual:(Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        32: .line 520
      StackMap locals:
      StackMap stack:
            aload 5 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.AbstractEndNode
            ifeq 34
        33: .line 522
            aload 5 /* expectedNode */
            checkcast org.graalvm.compiler.nodes.AbstractEndNode
            aload 6 /* actualNode */
            checkcast org.graalvm.compiler.nodes.AbstractEndNode
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyPhis:(Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
        end local 7 // org.graalvm.compiler.graph.NodeClass nodeClass
        end local 6 // org.graalvm.compiler.graph.Node actualNode
        end local 5 // org.graalvm.compiler.graph.Node expectedNode
        end local 4 // jdk.internal.vm.compiler.collections.Pair pair
        34: .line 483
      StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.NodeMap java.util.Deque
      StackMap stack:
            aload 3 /* workList */
            invokeinterface java.util.Deque.isEmpty:()Z
            ifeq 4
        35: .line 526
            iconst_1
            ireturn
        end local 3 // java.util.Deque workList
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph actualGraph
        end local 0 // org.graalvm.compiler.nodes.StructuredGraph expectedGraph
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   36     0     expectedGraph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0   36     1       actualGraph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            1   36     2       nodeMapping  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
            2   36     3          workList  Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
            5   34     4              pair  Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;
            6   34     5      expectedNode  Lorg/graalvm/compiler/graph/Node;
            7   34     6        actualNode  Lorg/graalvm/compiler/graph/Node;
            9   34     7         nodeClass  Lorg/graalvm/compiler/graph/NodeClass<*>;
           20   21     8     actualLoopEnd  Lorg/graalvm/compiler/nodes/LoopEndNode;
           22   28     8                 i  I
           24   26     9  expectedProperty  Ljava/lang/Object;
           25   26    10    actualProperty  Ljava/lang/Object;
    MethodParameters:
               Name  Flags
      expectedGraph  
      actualGraph    

  protected static void verifyPhi(org.graalvm.compiler.nodes.PhiNode, org.graalvm.compiler.nodes.PhiNode, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.graph.Node>, java.util.Deque<jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>>);
    descriptor: (Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // org.graalvm.compiler.nodes.PhiNode expectedPhi
        start local 1 // org.graalvm.compiler.nodes.PhiNode actualPhi
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        start local 3 // java.util.Deque workList
         0: .line 530
            aload 0 /* expectedPhi */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            astore 4 /* expectedMergeNode */
        start local 4 // org.graalvm.compiler.nodes.AbstractMergeNode expectedMergeNode
         1: .line 531
            aload 1 /* actualPhi */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            astore 5 /* actualMergeNode */
        start local 5 // org.graalvm.compiler.nodes.AbstractMergeNode actualMergeNode
         2: .line 532
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 3
            aload 5 /* actualMergeNode */
            aload 2 /* nodeMapping */
            aload 4 /* expectedMergeNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 534
      StackMap locals: org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack:
            aload 4 /* expectedMergeNode */
            getfield org.graalvm.compiler.nodes.AbstractMergeNode.ends:Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.iterator:()Ljava/util/Iterator;
            astore 7
            goto 10
      StackMap locals: org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.graph.NodeMap java.util.Deque org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.AbstractMergeNode top java.util.Iterator
      StackMap stack:
         4: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 6 /* expectedEndNode */
        start local 6 // org.graalvm.compiler.nodes.EndNode expectedEndNode
         5: .line 535
            aload 2 /* nodeMapping */
            aload 6 /* expectedEndNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.EndNode
            astore 8 /* actualEndNode */
        start local 8 // org.graalvm.compiler.nodes.EndNode actualEndNode
         6: .line 536
            aload 8 /* actualEndNode */
            ifnull 10
         7: .line 537
            aload 0 /* expectedPhi */
            aload 6 /* expectedEndNode */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(Lorg/graalvm/compiler/nodes/AbstractEndNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 9 /* expectedPhiInput */
        start local 9 // org.graalvm.compiler.nodes.ValueNode expectedPhiInput
         8: .line 538
            aload 1 /* actualPhi */
            aload 8 /* actualEndNode */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(Lorg/graalvm/compiler/nodes/AbstractEndNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* actualPhiInput */
        start local 10 // org.graalvm.compiler.nodes.ValueNode actualPhiInput
         9: .line 539
            aload 9 /* expectedPhiInput */
            aload 10 /* actualPhiInput */
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iconst_0
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodeEqual:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        end local 10 // org.graalvm.compiler.nodes.ValueNode actualPhiInput
        end local 9 // org.graalvm.compiler.nodes.ValueNode expectedPhiInput
        end local 8 // org.graalvm.compiler.nodes.EndNode actualEndNode
        end local 6 // org.graalvm.compiler.nodes.EndNode expectedEndNode
        10: .line 534
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        11: .line 542
            return
        end local 5 // org.graalvm.compiler.nodes.AbstractMergeNode actualMergeNode
        end local 4 // org.graalvm.compiler.nodes.AbstractMergeNode expectedMergeNode
        end local 3 // java.util.Deque workList
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        end local 1 // org.graalvm.compiler.nodes.PhiNode actualPhi
        end local 0 // org.graalvm.compiler.nodes.PhiNode expectedPhi
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0        expectedPhi  Lorg/graalvm/compiler/nodes/PhiNode;
            0   12     1          actualPhi  Lorg/graalvm/compiler/nodes/PhiNode;
            0   12     2        nodeMapping  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
            0   12     3           workList  Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
            1   12     4  expectedMergeNode  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            2   12     5    actualMergeNode  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            5   10     6    expectedEndNode  Lorg/graalvm/compiler/nodes/EndNode;
            6   10     8      actualEndNode  Lorg/graalvm/compiler/nodes/EndNode;
            8   10     9   expectedPhiInput  Lorg/graalvm/compiler/nodes/ValueNode;
            9   10    10     actualPhiInput  Lorg/graalvm/compiler/nodes/ValueNode;
    Signature: (Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;)V
    MethodParameters:
             Name  Flags
      expectedPhi  
      actualPhi    
      nodeMapping  
      workList     

  protected static void verifyPhis(org.graalvm.compiler.nodes.AbstractEndNode, org.graalvm.compiler.nodes.AbstractEndNode, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.graph.Node>, java.util.Deque<jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>>);
    descriptor: (Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // org.graalvm.compiler.nodes.AbstractEndNode expectedEndNode
        start local 1 // org.graalvm.compiler.nodes.AbstractEndNode actualEndNode
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        start local 3 // java.util.Deque workList
         0: .line 545
            aload 0 /* expectedEndNode */
            invokevirtual org.graalvm.compiler.nodes.AbstractEndNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            astore 4 /* expectedMergeNode */
        start local 4 // org.graalvm.compiler.nodes.AbstractMergeNode expectedMergeNode
         1: .line 546
            aload 2 /* nodeMapping */
            aload 4 /* expectedMergeNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.AbstractMergeNode
            astore 5 /* actualMergeNode */
        start local 5 // org.graalvm.compiler.nodes.AbstractMergeNode actualMergeNode
         2: .line 547
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 3
            aload 5 /* actualMergeNode */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 549
      StackMap locals: org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack:
            aload 4 /* expectedMergeNode */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.phis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 7
            goto 10
      StackMap locals: org.graalvm.compiler.nodes.AbstractEndNode org.graalvm.compiler.nodes.AbstractEndNode org.graalvm.compiler.graph.NodeMap java.util.Deque org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.AbstractMergeNode top java.util.Iterator
      StackMap stack:
         4: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 6 /* expectedPhi */
        start local 6 // org.graalvm.compiler.nodes.PhiNode expectedPhi
         5: .line 550
            aload 2 /* nodeMapping */
            aload 6 /* expectedPhi */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 8 /* actualPhi */
        start local 8 // org.graalvm.compiler.nodes.PhiNode actualPhi
         6: .line 551
            aload 8 /* actualPhi */
            ifnull 10
         7: .line 552
            aload 6 /* expectedPhi */
            aload 0 /* expectedEndNode */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(Lorg/graalvm/compiler/nodes/AbstractEndNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 9 /* expectedPhiInput */
        start local 9 // org.graalvm.compiler.nodes.ValueNode expectedPhiInput
         8: .line 553
            aload 8 /* actualPhi */
            aload 1 /* actualEndNode */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(Lorg/graalvm/compiler/nodes/AbstractEndNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* actualPhiInput */
        start local 10 // org.graalvm.compiler.nodes.ValueNode actualPhiInput
         9: .line 554
            aload 9 /* expectedPhiInput */
            aload 10 /* actualPhiInput */
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iconst_0
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodeEqual:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        end local 10 // org.graalvm.compiler.nodes.ValueNode actualPhiInput
        end local 9 // org.graalvm.compiler.nodes.ValueNode expectedPhiInput
        end local 8 // org.graalvm.compiler.nodes.PhiNode actualPhi
        end local 6 // org.graalvm.compiler.nodes.PhiNode expectedPhi
        10: .line 549
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        11: .line 557
            return
        end local 5 // org.graalvm.compiler.nodes.AbstractMergeNode actualMergeNode
        end local 4 // org.graalvm.compiler.nodes.AbstractMergeNode expectedMergeNode
        end local 3 // java.util.Deque workList
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        end local 1 // org.graalvm.compiler.nodes.AbstractEndNode actualEndNode
        end local 0 // org.graalvm.compiler.nodes.AbstractEndNode expectedEndNode
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0    expectedEndNode  Lorg/graalvm/compiler/nodes/AbstractEndNode;
            0   12     1      actualEndNode  Lorg/graalvm/compiler/nodes/AbstractEndNode;
            0   12     2        nodeMapping  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
            0   12     3           workList  Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
            1   12     4  expectedMergeNode  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            2   12     5    actualMergeNode  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            5   10     6        expectedPhi  Lorg/graalvm/compiler/nodes/PhiNode;
            6   10     8          actualPhi  Lorg/graalvm/compiler/nodes/PhiNode;
            8   10     9   expectedPhiInput  Lorg/graalvm/compiler/nodes/ValueNode;
            9   10    10     actualPhiInput  Lorg/graalvm/compiler/nodes/ValueNode;
    Signature: (Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/nodes/AbstractEndNode;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;)V
    MethodParameters:
                 Name  Flags
      expectedEndNode  
      actualEndNode    
      nodeMapping      
      workList         

  private static void verifyNodesEqual(org.graalvm.compiler.graph.iterators.NodeIterable<org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.iterators.NodeIterable<org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.graph.Node>, java.util.Deque<jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>>, );
    descriptor: (Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/iterators/NodeIterable;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.graalvm.compiler.graph.iterators.NodeIterable expectedNodes
        start local 1 // org.graalvm.compiler.graph.iterators.NodeIterable actualNodes
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        start local 3 // java.util.Deque workList
        start local 4 // boolean ignoreEndNode
         0: .line 560
            aload 1 /* actualNodes */
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 5 /* actualIter */
        start local 5 // java.util.Iterator actualIter
         1: .line 561
            aload 0 /* expectedNodes */
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 7
            goto 4
      StackMap locals: org.graalvm.compiler.graph.iterators.NodeIterable org.graalvm.compiler.graph.iterators.NodeIterable org.graalvm.compiler.graph.NodeMap java.util.Deque int java.util.Iterator top java.util.Iterator
      StackMap stack:
         2: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 6 /* expectedNode */
        start local 6 // org.graalvm.compiler.graph.Node expectedNode
         3: .line 562
            aload 6 /* expectedNode */
            aload 5 /* actualIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            iload 4 /* ignoreEndNode */
            invokestatic org.graalvm.compiler.nodes.GraphComparison.verifyNodeEqual:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
        end local 6 // org.graalvm.compiler.graph.Node expectedNode
         4: .line 561
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 564
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 6
            aload 5 /* actualIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 565
      StackMap locals: org.graalvm.compiler.graph.iterators.NodeIterable org.graalvm.compiler.graph.iterators.NodeIterable org.graalvm.compiler.graph.NodeMap java.util.Deque int java.util.Iterator
      StackMap stack:
            return
        end local 5 // java.util.Iterator actualIter
        end local 4 // boolean ignoreEndNode
        end local 3 // java.util.Deque workList
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        end local 1 // org.graalvm.compiler.graph.iterators.NodeIterable actualNodes
        end local 0 // org.graalvm.compiler.graph.iterators.NodeIterable expectedNodes
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0  expectedNodes  Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/graph/Node;>;
            0    7     1    actualNodes  Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/graph/Node;>;
            0    7     2    nodeMapping  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
            0    7     3       workList  Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
            0    7     4  ignoreEndNode  Z
            1    7     5     actualIter  Ljava/util/Iterator<Lorg/graalvm/compiler/graph/Node;>;
            3    4     6   expectedNode  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;Z)V
    MethodParameters:
               Name  Flags
      expectedNodes  
      actualNodes    
      nodeMapping    
      workList       
      ignoreEndNode  

  protected static void verifyNodeEqual(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.graph.Node>, java.util.Deque<jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>>, );
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;Z)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.graph.Node expectedNode
        start local 1 // org.graalvm.compiler.graph.Node actualNode
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        start local 3 // java.util.Deque workList
        start local 4 // boolean ignoreEndNode
         0: .line 568
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 1
            aload 0 /* expectedNode */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* actualNode */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 569
      StackMap locals:
      StackMap stack:
            iload 4 /* ignoreEndNode */
            ifeq 3
            aload 0 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.EndNode
            ifeq 3
         2: .line 570
            return
         3: .line 573
      StackMap locals:
      StackMap stack:
            aload 2 /* nodeMapping */
            aload 0 /* expectedNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 5 /* existing */
        start local 5 // org.graalvm.compiler.graph.Node existing
         4: .line 574
            aload 5 /* existing */
            ifnull 6
         5: .line 575
            getstatic org.graalvm.compiler.nodes.GraphComparison.$assertionsDisabled:Z
            ifne 7
            aload 5 /* existing */
            aload 1 /* actualNode */
            if_acmpeq 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 577
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 0 /* expectedNode */
            aload 1 /* actualNode */
            aload 2 /* nodeMapping */
            aload 3 /* workList */
            invokestatic org.graalvm.compiler.nodes.GraphComparison.pushToWorklist:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
         7: .line 579
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.graalvm.compiler.graph.Node existing
        end local 4 // boolean ignoreEndNode
        end local 3 // java.util.Deque workList
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        end local 1 // org.graalvm.compiler.graph.Node actualNode
        end local 0 // org.graalvm.compiler.graph.Node expectedNode
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0   expectedNode  Lorg/graalvm/compiler/graph/Node;
            0    8     1     actualNode  Lorg/graalvm/compiler/graph/Node;
            0    8     2    nodeMapping  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
            0    8     3       workList  Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
            0    8     4  ignoreEndNode  Z
            4    8     5       existing  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;Z)V
    MethodParameters:
               Name  Flags
      expectedNode   
      actualNode     
      nodeMapping    
      workList       
      ignoreEndNode  

  protected static void pushToWorklist(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.graph.Node>, java.util.Deque<jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node>>);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljava/util/Deque;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.graph.Node expectedNode
        start local 1 // org.graalvm.compiler.graph.Node actualNode
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        start local 3 // java.util.Deque workList
         0: .line 582
            aload 2 /* nodeMapping */
            aload 0 /* expectedNode */
            aload 1 /* actualNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
         1: .line 583
            aload 0 /* expectedNode */
            instanceof org.graalvm.compiler.nodes.AbstractEndNode
            ifeq 4
         2: .line 585
            aload 3 /* workList */
            aload 0 /* expectedNode */
            aload 1 /* actualNode */
            invokestatic jdk.internal.vm.compiler.collections.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Ljdk/internal/vm/compiler/collections/Pair;
            invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
         3: .line 586
            goto 5
         4: .line 587
      StackMap locals:
      StackMap stack:
            aload 3 /* workList */
            aload 0 /* expectedNode */
            aload 1 /* actualNode */
            invokestatic jdk.internal.vm.compiler.collections.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Ljdk/internal/vm/compiler/collections/Pair;
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         5: .line 589
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.Deque workList
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMapping
        end local 1 // org.graalvm.compiler.graph.Node actualNode
        end local 0 // org.graalvm.compiler.graph.Node expectedNode
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0  expectedNode  Lorg/graalvm/compiler/graph/Node;
            0    6     1    actualNode  Lorg/graalvm/compiler/graph/Node;
            0    6     2   nodeMapping  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;
            0    6     3      workList  Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;
    Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/Deque<Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;>;>;)V
    MethodParameters:
              Name  Flags
      expectedNode  
      actualNode    
      nodeMapping   
      workList      
}
SourceFile: "GraphEncoder.java"