public class org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
  super_class: java.lang.Object
{
  private static final double IMPLICIT_NULL_CHECK_OPPORTUNITY_PROBABILITY_FACTOR;
    descriptor: D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2.0

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

  protected org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>> blockToNodesMap;
    descriptor: Lorg/graalvm/compiler/core/common/cfg/BlockMap;
    flags: (0x0004) ACC_PROTECTED
    Signature: Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;

  protected org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block> nodeToBlockMap;
    descriptor: Lorg/graalvm/compiler/graph/NodeMap;
    flags: (0x0004) ACC_PROTECTED
    Signature: Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;

  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 135
            ldc Lorg/graalvm/compiler/phases/schedule/SchedulePhase;
            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.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
         3: .line 137
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
         0: .line 146
            aload 0 /* this */
            aconst_null
            invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.<init>:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;)V
         1: .line 147
            return
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;

  public void <init>(org.graalvm.compiler.nodes.cfg.ControlFlowGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg
         0: .line 149
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 150
            aload 0 /* this */
            aload 1 /* cfg */
            putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
         2: .line 151
            return
        end local 1 // org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0    3     1   cfg  Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
    MethodParameters:
      Name  Flags
      cfg   

  public void run(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=12, args_size=4
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy selectedStrategy
        start local 3 // boolean immutableGraph
         0: .line 157
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            ifnonnull 2
         1: .line 158
            aload 0 /* this */
            aload 1 /* graph */
            iconst_1
            iconst_1
            iconst_1
            iconst_0
            invokestatic org.graalvm.compiler.nodes.cfg.ControlFlowGraph.compute:(Lorg/graalvm/compiler/nodes/StructuredGraph;ZZZZ)Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
         2: .line 161
      StackMap locals:
      StackMap stack:
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeMap:()Lorg/graalvm/compiler/graph/NodeMap;
            astore 4 /* currentNodeMap */
        start local 4 // org.graalvm.compiler.graph.NodeMap currentNodeMap
         3: .line 162
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeBitMap:()Lorg/graalvm/compiler/graph/NodeBitMap;
            astore 5 /* visited */
        start local 5 // org.graalvm.compiler.graph.NodeBitMap visited
         4: .line 163
            new org.graalvm.compiler.core.common.cfg.BlockMap
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokespecial org.graalvm.compiler.core.common.cfg.BlockMap.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;)V
            astore 6 /* earliestBlockToNodesMap */
        start local 6 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
         5: .line 164
            aload 0 /* this */
            aload 4 /* currentNodeMap */
            putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.nodeToBlockMap:Lorg/graalvm/compiler/graph/NodeMap;
         6: .line 165
            aload 0 /* this */
            aload 6 /* earliestBlockToNodesMap */
            putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
         7: .line 167
            aload 0 /* this */
            aload 6 /* earliestBlockToNodesMap */
            aload 4 /* currentNodeMap */
            aload 5 /* visited */
            aload 1 /* graph */
            iload 3 /* immutableGraph */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.scheduleEarliestIterative:(Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/nodes/StructuredGraph;Z)V
         8: .line 169
            aload 2 /* selectedStrategy */
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.EARLIEST:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
            if_acmpeq 21
         9: .line 171
            new org.graalvm.compiler.core.common.cfg.BlockMap
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokespecial org.graalvm.compiler.core.common.cfg.BlockMap.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;)V
            astore 7 /* latestBlockToNodesMap */
        start local 7 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        10: .line 172
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 14
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
        11: aload 11
            iload 9
            aaload
            astore 8 /* b */
        start local 8 // org.graalvm.compiler.nodes.cfg.Block b
        12: .line 173
            aload 7 /* latestBlockToNodesMap */
            aload 8 /* b */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
        end local 8 // org.graalvm.compiler.nodes.cfg.Block b
        13: .line 172
            iinc 9 1
      StackMap locals:
      StackMap stack:
        14: iload 9
            iload 10
            if_icmplt 11
        15: .line 176
            aload 0 /* this */
            aload 2 /* selectedStrategy */
            aload 4 /* currentNodeMap */
            aload 6 /* earliestBlockToNodesMap */
            aload 5 /* visited */
            aload 7 /* latestBlockToNodesMap */
            iload 3 /* immutableGraph */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlocks:(Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Z)Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            astore 8 /* watchListMap */
        start local 8 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        16: .line 177
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            aload 6 /* earliestBlockToNodesMap */
            aload 7 /* latestBlockToNodesMap */
            aload 4 /* currentNodeMap */
            aload 8 /* watchListMap */
            aload 5 /* visited */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortNodesLatestWithinBlock:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
        17: .line 179
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 18
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            aload 7 /* latestBlockToNodesMap */
            aload 4 /* currentNodeMap */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.verifySchedule:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;)Z
            ifne 18
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        18: .line 180
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 19
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
            ifeq 19
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
            aload 7 /* latestBlockToNodesMap */
            invokestatic org.graalvm.compiler.phases.schedule.MemoryScheduleVerification.check:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)Z
            ifne 19
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        19: .line 182
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* latestBlockToNodesMap */
            putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
        20: .line 184
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            aload 4 /* currentNodeMap */
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.setNodeToBlock:(Lorg/graalvm/compiler/graph/NodeMap;)V
        end local 8 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        end local 7 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        21: .line 187
      StackMap locals:
      StackMap stack:
            aload 1 /* graph */
            new org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.nodeToBlockMap:Lorg/graalvm/compiler/graph/NodeMap;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            invokespecial org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.<init>:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.setLastSchedule:(Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;)V
        22: .line 188
            return
        end local 6 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        end local 5 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 4 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        end local 3 // boolean immutableGraph
        end local 2 // org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy selectedStrategy
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   23     0                     this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0   23     1                    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0   23     2         selectedStrategy  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
            0   23     3           immutableGraph  Z
            3   23     4           currentNodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            4   23     5                  visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            5   23     6  earliestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
           10   21     7    latestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
           12   13     8                        b  Lorg/graalvm/compiler/nodes/cfg/Block;
           16   21     8             watchListMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
    MethodParameters:
                  Name  Flags
      graph             
      selectedStrategy  
      immutableGraph    

  private org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>> calcLatestBlocks(org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, boolean);
    descriptor: (Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Z)Lorg/graalvm/compiler/core/common/cfg/BlockMap;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=20, args_size=7
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy strategy
        start local 2 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        start local 3 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        start local 4 // org.graalvm.compiler.graph.NodeBitMap visited
        start local 5 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        start local 6 // boolean immutableGraph
         0: .line 193
            new org.graalvm.compiler.core.common.cfg.BlockMap
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokespecial org.graalvm.compiler.core.common.cfg.BlockMap.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;)V
            astore 7 /* watchListMap */
        start local 7 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
         1: .line 194
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 8 /* reversePostOrder */
        start local 8 // org.graalvm.compiler.nodes.cfg.Block[] reversePostOrder
         2: .line 195
            aload 8 /* reversePostOrder */
            arraylength
            iconst_1
            isub
            istore 9 /* j */
        start local 9 // int j
         3: goto 37
         4: .line 196
      StackMap locals: org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int
      StackMap stack:
            aload 8 /* reversePostOrder */
            iload 9 /* j */
            aaload
            astore 10 /* currentBlock */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block currentBlock
         5: .line 197
            aload 3 /* earliestBlockToNodesMap */
            aload 10 /* currentBlock */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.List
            astore 11 /* blockToNodes */
        start local 11 // java.util.List blockToNodes
         6: .line 198
            aconst_null
            astore 12 /* killed */
        start local 12 // org.graalvm.compiler.nodes.cfg.LocationSet killed
         7: .line 199
            aload 11 /* blockToNodes */
            invokeinterface java.util.List.size:()I
            istore 13 /* previousIndex */
        start local 13 // int previousIndex
         8: .line 200
            aload 11 /* blockToNodes */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 14 /* i */
        start local 14 // int i
         9: goto 35
        10: .line 201
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap int org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.LocationSet int int
      StackMap stack:
            aload 11 /* blockToNodes */
            iload 14 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 15 /* currentNode */
        start local 15 // org.graalvm.compiler.graph.Node currentNode
        11: .line 202
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 12
            aload 2 /* currentNodeMap */
            aload 15 /* currentNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 10 /* currentBlock */
            if_acmpeq 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 203
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 14
            aload 15 /* currentNode */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifne 13
            aload 15 /* currentNode */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifeq 14
      StackMap locals:
      StackMap stack:
        13: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 204
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 15
            aload 4 /* visited */
            aload 15 /* currentNode */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 15
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        15: .line 205
      StackMap locals:
      StackMap stack:
            aload 15 /* currentNode */
            instanceof org.graalvm.compiler.nodes.FixedNode
            ifne 34
        16: .line 208
            aconst_null
            astore 16 /* latestBlock */
        start local 16 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        17: .line 210
            aconst_null
            astore 17 /* constrainingLocation */
        start local 17 // org.graalvm.word.LocationIdentity constrainingLocation
        18: .line 211
            aload 15 /* currentNode */
            instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
            ifeq 30
        19: .line 214
            aload 15 /* currentNode */
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 18 /* floatingReadNode */
        start local 18 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        20: .line 215
            aload 18 /* floatingReadNode */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 19 /* location */
        start local 19 // org.graalvm.word.LocationIdentity location
        21: .line 216
            aload 19 /* location */
            invokevirtual org.graalvm.word.LocationIdentity.isMutable:()Z
            ifeq 30
        22: .line 218
            aload 19 /* location */
            astore 17 /* constrainingLocation */
        23: .line 219
            aload 10 /* currentBlock */
            aload 19 /* location */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 30
        24: .line 220
            aload 12 /* killed */
            ifnonnull 26
        25: .line 221
            new org.graalvm.compiler.nodes.cfg.LocationSet
            dup
            invokespecial org.graalvm.compiler.nodes.cfg.LocationSet.<init>:()V
            astore 12 /* killed */
        26: .line 223
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap int org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.LocationSet int int org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block org.graalvm.word.LocationIdentity org.graalvm.compiler.nodes.memory.FloatingReadNode org.graalvm.word.LocationIdentity
      StackMap stack:
            aload 12 /* killed */
            aload 11 /* blockToNodes */
            iload 14 /* i */
            iconst_1
            iadd
            iload 13 /* previousIndex */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.fillKillSet:(Lorg/graalvm/compiler/nodes/cfg/LocationSet;Ljava/util/List;)V
        27: .line 224
            iload 14 /* i */
            istore 13 /* previousIndex */
        28: .line 225
            aload 12 /* killed */
            aload 19 /* location */
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.contains:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 30
        29: .line 228
            aload 10 /* currentBlock */
            astore 16 /* latestBlock */
        end local 19 // org.graalvm.word.LocationIdentity location
        end local 18 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        30: .line 234
      StackMap locals:
      StackMap stack:
            aload 16 /* latestBlock */
            ifnonnull 33
        31: .line 237
            aload 0 /* this */
            aload 10 /* currentBlock */
            aload 1 /* strategy */
            aload 15 /* currentNode */
            aload 2 /* currentNodeMap */
            aload 17 /* constrainingLocation */
            aload 7 /* watchListMap */
            aload 5 /* latestBlockToNodesMap */
            aload 4 /* visited */
            iload 6 /* immutableGraph */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlock:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Z)V
        32: .line 238
            goto 34
        33: .line 239
      StackMap locals:
      StackMap stack:
            aload 15 /* currentNode */
            aload 10 /* currentBlock */
            aload 16 /* latestBlock */
            aload 2 /* currentNodeMap */
            aload 7 /* watchListMap */
            aload 17 /* constrainingLocation */
            aload 5 /* latestBlockToNodesMap */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.selectLatestBlock:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
        end local 17 // org.graalvm.word.LocationIdentity constrainingLocation
        end local 16 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        end local 15 // org.graalvm.compiler.graph.Node currentNode
        34: .line 200
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ -1
      StackMap locals:
      StackMap stack:
        35: iload 14 /* i */
            ifge 10
        end local 14 // int i
        end local 13 // int previousIndex
        end local 12 // org.graalvm.compiler.nodes.cfg.LocationSet killed
        end local 11 // java.util.List blockToNodes
        end local 10 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        36: .line 195
            iinc 9 /* j */ -1
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap int org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int
      StackMap stack:
        37: iload 9 /* j */
            ifge 4
        end local 9 // int j
        38: .line 244
            aload 7 /* watchListMap */
            areturn
        end local 8 // org.graalvm.compiler.nodes.cfg.Block[] reversePostOrder
        end local 7 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        end local 6 // boolean immutableGraph
        end local 5 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        end local 4 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 3 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        end local 2 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        end local 1 // org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy strategy
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   39     0                     this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0   39     1                 strategy  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
            0   39     2           currentNodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   39     3  earliestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   39     4                  visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            0   39     5    latestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   39     6           immutableGraph  Z
            1   39     7             watchListMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
            2   39     8         reversePostOrder  [Lorg/graalvm/compiler/nodes/cfg/Block;
            3   38     9                        j  I
            5   36    10             currentBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            6   36    11             blockToNodes  Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
            7   36    12                   killed  Lorg/graalvm/compiler/nodes/cfg/LocationSet;
            8   36    13            previousIndex  I
            9   36    14                        i  I
           11   34    15              currentNode  Lorg/graalvm/compiler/graph/Node;
           17   34    16              latestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           18   34    17     constrainingLocation  Lorg/graalvm/word/LocationIdentity;
           20   30    18         floatingReadNode  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
           21   30    19                 location  Lorg/graalvm/word/LocationIdentity;
    Signature: (Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Z)Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
    RuntimeInvisibleAnnotations: 
      org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE"}, justification = "false positive found by findbugs")
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE"}, justification = "false positive found by findbugs")
    MethodParameters:
                         Name  Flags
      strategy                 
      currentNodeMap           
      earliestBlockToNodesMap  
      visited                  
      latestBlockToNodesMap    
      immutableGraph           

  protected static void selectLatestBlock(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.word.LocationIdentity, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.graph.Node currentNode
        start local 1 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        start local 2 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        start local 3 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        start local 4 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        start local 5 // org.graalvm.word.LocationIdentity constrainingLocation
        start local 6 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
         0: .line 250
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 1
            aload 0 /* currentNode */
            aload 1 /* currentBlock */
            aload 2 /* latestBlock */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkLatestEarliestRelation:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 251
      StackMap locals:
      StackMap stack:
            aload 1 /* currentBlock */
            aload 2 /* latestBlock */
            if_acmpeq 7
         2: .line 253
            aload 3 /* currentNodeMap */
            aload 0 /* currentNode */
            aload 2 /* latestBlock */
            invokevirtual org.graalvm.compiler.graph.NodeMap.setAndGrow:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
         3: .line 255
            aload 5 /* constrainingLocation */
            ifnull 7
            aload 2 /* latestBlock */
            aload 5 /* constrainingLocation */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 7
         4: .line 256
            aload 4 /* watchListMap */
            aload 2 /* latestBlock */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            ifnonnull 6
         5: .line 257
            aload 4 /* watchListMap */
            aload 2 /* latestBlock */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
         6: .line 259
      StackMap locals:
      StackMap stack:
            aload 4 /* watchListMap */
            aload 2 /* latestBlock */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            aload 0 /* currentNode */
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         7: .line 263
      StackMap locals:
      StackMap stack:
            aload 6 /* latestBlockToNodesMap */
            aload 2 /* latestBlock */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.List
            aload 0 /* currentNode */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         8: .line 264
            return
        end local 6 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        end local 5 // org.graalvm.word.LocationIdentity constrainingLocation
        end local 4 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        end local 3 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        end local 2 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        end local 1 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        end local 0 // org.graalvm.compiler.graph.Node currentNode
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    9     0            currentNode  Lorg/graalvm/compiler/graph/Node;
            0    9     1           currentBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0    9     2            latestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0    9     3         currentNodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0    9     4           watchListMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
            0    9     5   constrainingLocation  Lorg/graalvm/word/LocationIdentity;
            0    9     6  latestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
    Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;)V
    MethodParameters:
                       Name  Flags
      currentNode            
      currentBlock           
      latestBlock            
      currentNodeMap         
      watchListMap           
      constrainingLocation   
      latestBlockToNodesMap  

  private static boolean checkLatestEarliestRelation(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.graph.Node currentNode
        start local 1 // org.graalvm.compiler.nodes.cfg.Block earliestBlock
        start local 2 // org.graalvm.compiler.nodes.cfg.Block latestBlock
         0: .line 267
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 4
            aload 1 /* earliestBlock */
            aload 2 /* latestBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.dominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifne 4
            aload 0 /* currentNode */
            instanceof org.graalvm.compiler.nodes.VirtualState
            ifeq 1
            aload 2 /* latestBlock */
            aload 1 /* earliestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            if_acmpeq 4
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
         2: .line 268
            ldc "%s %s (%s) %s (%s)"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* currentNode */
            aastore
            dup
            iconst_1
            aload 1 /* earliestBlock */
            aastore
            dup
            iconst_2
            aload 1 /* earliestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            aastore
            dup
            iconst_3
            aload 2 /* latestBlock */
            aastore
            dup
            iconst_4
            aload 2 /* latestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            aastore
         3: .line 267
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 269
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        end local 1 // org.graalvm.compiler.nodes.cfg.Block earliestBlock
        end local 0 // org.graalvm.compiler.graph.Node currentNode
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0    currentNode  Lorg/graalvm/compiler/graph/Node;
            0    5     1  earliestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0    5     2    latestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
    MethodParameters:
               Name  Flags
      currentNode    
      earliestBlock  
      latestBlock    

  private static boolean verifySchedule(org.graalvm.compiler.nodes.cfg.ControlFlowGraph, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=11, args_size=3
        start local 0 // org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg
        start local 1 // org.graalvm.compiler.core.common.cfg.BlockMap blockToNodesMap
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeMap
         0: .line 273
            aload 0 /* cfg */
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 12
      StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
         1: aload 6
            iload 4
            aaload
            astore 3 /* b */
        start local 3 // org.graalvm.compiler.nodes.cfg.Block b
         2: .line 274
            aload 1 /* blockToNodesMap */
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.List
            astore 7 /* nodes */
        start local 7 // java.util.List nodes
         3: .line 275
            aload 7 /* nodes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 10
      StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 8 /* n */
        start local 8 // org.graalvm.compiler.graph.Node n
         5: .line 276
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 6
            aload 8 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 277
      StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] java.util.List org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 7
            aload 2 /* nodeMap */
            aload 8 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 3 /* b */
            if_acmpeq 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 278
      StackMap locals:
      StackMap stack:
            aload 8 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.graph:()Lorg/graalvm/compiler/graph/Graph;
            checkcast org.graalvm.compiler.nodes.StructuredGraph
            astore 10 /* g */
        start local 10 // org.graalvm.compiler.nodes.StructuredGraph g
         8: .line 279
            aload 10 /* g */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasLoops:()Z
            ifeq 10
            aload 10 /* g */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.AFTER_FSA:Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            if_acmpne 10
            aload 8 /* n */
            instanceof org.graalvm.compiler.nodes.DeoptimizeNode
            ifeq 10
         9: .line 280
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 10
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
            ifeq 10
            new java.lang.AssertionError
            dup
            aload 8 /* n */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 10 // org.graalvm.compiler.nodes.StructuredGraph g
        end local 8 // org.graalvm.compiler.graph.Node n
        10: .line 275
      StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] java.util.List top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 7 // java.util.List nodes
        end local 3 // org.graalvm.compiler.nodes.cfg.Block b
        11: .line 273
            iinc 4 1
      StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
        12: iload 4
            iload 5
            if_icmplt 1
        13: .line 284
            iconst_1
            ireturn
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeMap
        end local 1 // org.graalvm.compiler.core.common.cfg.BlockMap blockToNodesMap
        end local 0 // org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0              cfg  Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            0   14     1  blockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   14     2          nodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            2   11     3                b  Lorg/graalvm/compiler/nodes/cfg/Block;
            3   11     7            nodes  Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
            5   10     8                n  Lorg/graalvm/compiler/graph/Node;
            8   10    10                g  Lorg/graalvm/compiler/nodes/StructuredGraph;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;)Z
    MethodParameters:
                 Name  Flags
      cfg              
      blockToNodesMap  
      nodeMap          

  public static org.graalvm.compiler.nodes.cfg.Block checkKillsBetween(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.word.LocationIdentity);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/nodes/cfg/Block;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // org.graalvm.compiler.nodes.cfg.Block earliestBlock
        start local 1 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        start local 2 // org.graalvm.word.LocationIdentity location
         0: .line 288
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 1
            aload 0 /* earliestBlock */
            aload 1 /* latestBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.strictlyDominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 289
      StackMap locals:
      StackMap stack:
            aload 1 /* latestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 3 /* current */
        start local 3 // org.graalvm.compiler.nodes.cfg.Block current
         2: .line 292
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* dominatorChain */
        start local 4 // java.util.List dominatorChain
         3: .line 293
            aload 4 /* dominatorChain */
            aload 1 /* latestBlock */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         4: .line 294
            goto 11
         5: .line 296
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block java.util.List
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 7
            aload 0 /* earliestBlock */
            aload 3 /* current */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.strictlyDominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifeq 6
            aload 3 /* current */
            aload 1 /* latestBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.strictlyDominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifne 7
      StackMap locals:
      StackMap stack:
         6: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 297
      StackMap locals:
      StackMap stack:
            aload 3 /* current */
            aload 2 /* location */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 9
         8: .line 298
            aload 4 /* dominatorChain */
            invokeinterface java.util.List.clear:()V
         9: .line 300
      StackMap locals:
      StackMap stack:
            aload 4 /* dominatorChain */
            aload 3 /* current */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 301
            aload 3 /* current */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 3 /* current */
        11: .line 294
      StackMap locals:
      StackMap stack:
            aload 3 /* current */
            aload 0 /* earliestBlock */
            if_acmpne 5
        12: .line 305
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 13
            aload 4 /* dominatorChain */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpge 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 306
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 14
            aload 4 /* dominatorChain */
            aload 4 /* dominatorChain */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            aload 0 /* earliestBlock */
            if_acmpeq 14
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* earliestBlock */
            astore 5 /* lastBlock */
        start local 5 // org.graalvm.compiler.nodes.cfg.Block lastBlock
        15: .line 309
            aload 4 /* dominatorChain */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 6 /* i */
        start local 6 // int i
        16: goto 25
        17: .line 310
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block int
      StackMap stack:
            aload 4 /* dominatorChain */
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 7 /* currentBlock */
        start local 7 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        18: .line 311
            aload 7 /* currentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
            aload 5 /* lastBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
            if_icmple 21
        19: .line 314
            aload 7 /* currentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
            ifnull 21
            aload 7 /* currentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
            checkcast org.graalvm.compiler.nodes.cfg.HIRLoop
            aload 2 /* location */
            invokevirtual org.graalvm.compiler.nodes.cfg.HIRLoop.canKill:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 21
        20: .line 315
            goto 26
        21: .line 319
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 7 /* currentBlock */
            aload 2 /* location */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKillBetweenThisAndDominator:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 23
        22: .line 320
            goto 26
        23: .line 322
      StackMap locals:
      StackMap stack:
            aload 7 /* currentBlock */
            astore 5 /* lastBlock */
        end local 7 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        24: .line 309
            iinc 6 /* i */ -1
      StackMap locals:
      StackMap stack:
        25: iload 6 /* i */
            ifge 17
        end local 6 // int i
        26: .line 325
      StackMap locals:
      StackMap stack:
            aload 5 /* lastBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            instanceof org.graalvm.compiler.nodes.KillingBeginNode
            ifeq 31
        27: .line 326
            aload 5 /* lastBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            checkcast org.graalvm.compiler.nodes.KillingBeginNode
            invokevirtual org.graalvm.compiler.nodes.KillingBeginNode.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 6 /* locationIdentity */
        start local 6 // org.graalvm.word.LocationIdentity locationIdentity
        28: .line 327
            aload 6 /* locationIdentity */
            invokevirtual org.graalvm.word.LocationIdentity.isAny:()Z
            ifne 29
            aload 6 /* locationIdentity */
            aload 2 /* location */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 31
      StackMap locals: org.graalvm.word.LocationIdentity
      StackMap stack:
        29: aload 5 /* lastBlock */
            aload 0 /* earliestBlock */
            if_acmpeq 31
        30: .line 330
            aload 5 /* lastBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 5 /* lastBlock */
        end local 6 // org.graalvm.word.LocationIdentity locationIdentity
        31: .line 334
      StackMap locals:
      StackMap stack:
            aload 5 /* lastBlock */
            areturn
        end local 5 // org.graalvm.compiler.nodes.cfg.Block lastBlock
        end local 4 // java.util.List dominatorChain
        end local 3 // org.graalvm.compiler.nodes.cfg.Block current
        end local 2 // org.graalvm.word.LocationIdentity location
        end local 1 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        end local 0 // org.graalvm.compiler.nodes.cfg.Block earliestBlock
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   32     0     earliestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   32     1       latestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   32     2          location  Lorg/graalvm/word/LocationIdentity;
            2   32     3           current  Lorg/graalvm/compiler/nodes/cfg/Block;
            3   32     4    dominatorChain  Ljava/util/List<Lorg/graalvm/compiler/nodes/cfg/Block;>;
           15   32     5         lastBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           16   26     6                 i  I
           18   24     7      currentBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           28   31     6  locationIdentity  Lorg/graalvm/word/LocationIdentity;
    MethodParameters:
               Name  Flags
      earliestBlock  
      latestBlock    
      location       

  private static void fillKillSet(org.graalvm.compiler.nodes.cfg.LocationSet, java.util.List<org.graalvm.compiler.graph.Node>);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/LocationSet;Ljava/util/List;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // org.graalvm.compiler.nodes.cfg.LocationSet killed
        start local 1 // java.util.List subList
         0: .line 338
            aload 0 /* killed */
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isAny:()Z
            ifne 17
         1: .line 339
            aload 1 /* subList */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 16
      StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 2 /* n */
        start local 2 // org.graalvm.compiler.graph.Node n
         3: .line 341
            aload 2 /* n */
            instanceof org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single
            ifeq 8
         4: .line 342
            aload 2 /* n */
            checkcast org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single
            invokeinterface org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 4 /* identity */
        start local 4 // org.graalvm.word.LocationIdentity identity
         5: .line 343
            aload 0 /* killed */
            aload 4 /* identity */
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.add:(Lorg/graalvm/word/LocationIdentity;)V
         6: .line 344
            aload 0 /* killed */
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isAny:()Z
            ifeq 16
         7: .line 345
            return
        end local 4 // org.graalvm.word.LocationIdentity identity
         8: .line 347
      StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            aload 2 /* n */
            instanceof org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi
            ifeq 16
         9: .line 348
            aload 2 /* n */
            checkcast org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi
            invokeinterface org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi.getLocationIdentities:()[Lorg/graalvm/word/LocationIdentity;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 15
      StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List org.graalvm.compiler.graph.Node java.util.Iterator top int int org.graalvm.word.LocationIdentity[]
      StackMap stack:
        10: aload 7
            iload 5
            aaload
            astore 4 /* identity */
        start local 4 // org.graalvm.word.LocationIdentity identity
        11: .line 349
            aload 0 /* killed */
            aload 4 /* identity */
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.add:(Lorg/graalvm/word/LocationIdentity;)V
        12: .line 350
            aload 0 /* killed */
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isAny:()Z
            ifeq 14
        13: .line 351
            return
        end local 4 // org.graalvm.word.LocationIdentity identity
        14: .line 348
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        15: iload 5
            iload 6
            if_icmplt 10
        end local 2 // org.graalvm.compiler.graph.Node n
        16: .line 339
      StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        17: .line 357
      StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List
      StackMap stack:
            return
        end local 1 // java.util.List subList
        end local 0 // org.graalvm.compiler.nodes.cfg.LocationSet killed
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0    killed  Lorg/graalvm/compiler/nodes/cfg/LocationSet;
            0   18     1   subList  Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
            3   16     2         n  Lorg/graalvm/compiler/graph/Node;
            5    8     4  identity  Lorg/graalvm/word/LocationIdentity;
           11   14     4  identity  Lorg/graalvm/word/LocationIdentity;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/LocationSet;Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;)V
    MethodParameters:
         Name  Flags
      killed   
      subList  

  private static void sortNodesLatestWithinBlock(org.graalvm.compiler.nodes.cfg.ControlFlowGraph, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.compiler.graph.NodeBitMap);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=6
        start local 0 // org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg
        start local 1 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        start local 2 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        start local 3 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        start local 4 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        start local 5 // org.graalvm.compiler.graph.NodeBitMap visited
         0: .line 361
            aload 0 /* cfg */
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 4
      StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
         1: aload 9
            iload 7
            aaload
            astore 6 /* b */
        start local 6 // org.graalvm.compiler.nodes.cfg.Block b
         2: .line 362
            aload 6 /* b */
            aload 1 /* earliestBlockToNodesMap */
            aload 2 /* latestBlockToNodesMap */
            aload 3 /* currentNodeMap */
            aload 4 /* watchListMap */
            aload 5 /* visited */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortNodesLatestWithinBlock:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
        end local 6 // org.graalvm.compiler.nodes.cfg.Block b
         3: .line 361
            iinc 7 1
      StackMap locals:
      StackMap stack:
         4: iload 7
            iload 8
            if_icmplt 1
         5: .line 364
            return
        end local 5 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 4 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        end local 3 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        end local 2 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        end local 1 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        end local 0 // org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    6     0                      cfg  Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            0    6     1  earliestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0    6     2    latestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0    6     3           currentNodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0    6     4             watchListMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
            0    6     5                  visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            2    3     6                        b  Lorg/graalvm/compiler/nodes/cfg/Block;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    MethodParameters:
                         Name  Flags
      cfg                      
      earliestBlockToNodesMap  
      latestBlockToNodesMap    
      currentNodeMap           
      watchListMap             
      visited                  

  private static void sortNodesLatestWithinBlock(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.compiler.graph.NodeBitMap);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=16, args_size=6
        start local 0 // org.graalvm.compiler.nodes.cfg.Block b
        start local 1 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        start local 2 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        start local 3 // org.graalvm.compiler.graph.NodeMap nodeMap
        start local 4 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        start local 5 // org.graalvm.compiler.graph.NodeBitMap unprocessed
         0: .line 368
            aload 1 /* earliestBlockToNodesMap */
            aload 0 /* b */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.List
            astore 6 /* earliestSorting */
        start local 6 // java.util.List earliestSorting
         1: .line 369
            new java.util.ArrayList
            dup
            aload 6 /* earliestSorting */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 7 /* result */
        start local 7 // java.util.ArrayList result
         2: .line 370
            aconst_null
            astore 8 /* watchList */
        start local 8 // java.util.ArrayList watchList
         3: .line 371
            aload 4 /* watchListMap */
            ifnull 6
         4: .line 372
            aload 4 /* watchListMap */
            aload 0 /* b */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 8 /* watchList */
         5: .line 373
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 6
            aload 8 /* watchList */
            ifnull 6
            aload 0 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getKillLocations:()Lorg/graalvm/compiler/nodes/cfg/LocationSet;
            invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isEmpty:()Z
            ifeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 375
      StackMap locals: java.util.List java.util.ArrayList java.util.ArrayList
      StackMap stack:
            aload 0 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 9 /* beginNode */
        start local 9 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
         7: .line 376
            aload 9 /* beginNode */
            instanceof org.graalvm.compiler.nodes.LoopExitNode
            ifeq 16
         8: .line 377
            aload 9 /* beginNode */
            checkcast org.graalvm.compiler.nodes.LoopExitNode
            astore 10 /* loopExitNode */
        start local 10 // org.graalvm.compiler.nodes.LoopExitNode loopExitNode
         9: .line 378
            aload 10 /* loopExitNode */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.proxies:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 12
            goto 15
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.LoopExitNode top java.util.Iterator
      StackMap stack:
        10: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ProxyNode
            astore 11 /* proxy */
        start local 11 // org.graalvm.compiler.nodes.ProxyNode proxy
        11: .line 379
            aload 5 /* unprocessed */
            aload 11 /* proxy */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.clear:(Lorg/graalvm/compiler/graph/Node;)V
        12: .line 380
            aload 11 /* proxy */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 13 /* value */
        start local 13 // org.graalvm.compiler.nodes.ValueNode value
        13: .line 383
            aload 13 /* value */
            ifnull 15
            aload 3 /* nodeMap */
            aload 13 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 0 /* b */
            if_acmpne 15
            aload 5 /* unprocessed */
            aload 13 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 15
        14: .line 384
            aload 13 /* value */
            aload 0 /* b */
            aload 7 /* result */
            aload 3 /* nodeMap */
            aload 5 /* unprocessed */
            aconst_null
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        end local 13 // org.graalvm.compiler.nodes.ValueNode value
        end local 11 // org.graalvm.compiler.nodes.ProxyNode proxy
        15: .line 378
      StackMap locals:
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        end local 10 // org.graalvm.compiler.nodes.LoopExitNode loopExitNode
        16: .line 388
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode
      StackMap stack:
            aload 0 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 10 /* endNode */
        start local 10 // org.graalvm.compiler.nodes.FixedNode endNode
        17: .line 389
            aconst_null
            astore 11 /* fixedEndNode */
        start local 11 // org.graalvm.compiler.nodes.FixedNode fixedEndNode
        18: .line 390
            aload 10 /* endNode */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.isFixedEnd:(Lorg/graalvm/compiler/nodes/FixedNode;)Z
            ifeq 20
        19: .line 393
            aload 10 /* endNode */
            astore 11 /* fixedEndNode */
        20: .line 395
      StackMap locals: org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 6 /* earliestSorting */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 38
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
      StackMap stack:
        21: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 12 /* n */
        start local 12 // org.graalvm.compiler.graph.Node n
        22: .line 396
            aload 12 /* n */
            aload 11 /* fixedEndNode */
            if_acmpeq 38
        23: .line 397
            aload 12 /* n */
            instanceof org.graalvm.compiler.nodes.FixedNode
            ifeq 28
        24: .line 398
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 25
            aload 3 /* nodeMap */
            aload 12 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 0 /* b */
            if_acmpeq 25
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        25: .line 399
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            aload 0 /* b */
            aload 3 /* nodeMap */
            aload 5 /* unprocessed */
            aload 7 /* result */
            aload 8 /* watchList */
            aload 12 /* n */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkWatchList:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Ljava/util/ArrayList;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/Node;)V
        26: .line 400
            aload 12 /* n */
            aload 0 /* b */
            aload 7 /* result */
            aload 3 /* nodeMap */
            aload 5 /* unprocessed */
            aconst_null
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        27: .line 401
            goto 38
      StackMap locals:
      StackMap stack:
        28: aload 3 /* nodeMap */
            aload 12 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 0 /* b */
            if_acmpne 38
            aload 12 /* n */
            instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
            ifeq 38
        29: .line 402
            aload 12 /* n */
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 14 /* floatingReadNode */
        start local 14 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        30: .line 403
            aload 14 /* floatingReadNode */
            aload 0 /* b */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.isImplicitNullOpportunity:(Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
            ifeq 33
        31: .line 405
            aload 14 /* floatingReadNode */
            aload 0 /* b */
            aload 7 /* result */
            aload 3 /* nodeMap */
            aload 5 /* unprocessed */
            aconst_null
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        32: .line 406
            goto 38
        33: .line 407
      StackMap locals: org.graalvm.compiler.nodes.memory.FloatingReadNode
      StackMap stack:
            aload 14 /* floatingReadNode */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 15 /* location */
        start local 15 // org.graalvm.word.LocationIdentity location
        34: .line 408
            aload 0 /* b */
            aload 15 /* location */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 38
        35: .line 410
            aload 8 /* watchList */
            ifnonnull 37
        36: .line 411
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* watchList */
        37: .line 413
      StackMap locals: org.graalvm.word.LocationIdentity
      StackMap stack:
            aload 8 /* watchList */
            aload 14 /* floatingReadNode */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 15 // org.graalvm.word.LocationIdentity location
        end local 14 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        end local 12 // org.graalvm.compiler.graph.Node n
        38: .line 395
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        39: .line 420
            aload 2 /* latestBlockToNodesMap */
            aload 0 /* b */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.List
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 45
      StackMap locals:
      StackMap stack:
        40: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 12 /* n */
        start local 12 // org.graalvm.compiler.graph.Node n
        41: .line 421
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 42
            aload 3 /* nodeMap */
            aload 12 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 0 /* b */
            if_acmpeq 42
            new java.lang.AssertionError
            dup
            aload 12 /* n */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        42: .line 422
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 43
            aload 12 /* n */
            instanceof org.graalvm.compiler.nodes.FixedNode
            ifeq 43
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        43: .line 423
      StackMap locals:
      StackMap stack:
            aload 5 /* unprocessed */
            aload 12 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 45
        44: .line 424
            aload 12 /* n */
            aload 0 /* b */
            aload 7 /* result */
            aload 3 /* nodeMap */
            aload 5 /* unprocessed */
            aload 11 /* fixedEndNode */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        end local 12 // org.graalvm.compiler.graph.Node n
        45: .line 420
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 40
        46: .line 428
            aload 10 /* endNode */
            ifnull 48
            aload 5 /* unprocessed */
            aload 10 /* endNode */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 48
        47: .line 429
            aload 10 /* endNode */
            aload 0 /* b */
            aload 7 /* result */
            aload 3 /* nodeMap */
            aload 5 /* unprocessed */
            aconst_null
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        48: .line 432
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 2 /* latestBlockToNodesMap */
            aload 0 /* b */
            aload 7 /* result */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
        49: .line 433
            return
        end local 11 // org.graalvm.compiler.nodes.FixedNode fixedEndNode
        end local 10 // org.graalvm.compiler.nodes.FixedNode endNode
        end local 9 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        end local 8 // java.util.ArrayList watchList
        end local 7 // java.util.ArrayList result
        end local 6 // java.util.List earliestSorting
        end local 5 // org.graalvm.compiler.graph.NodeBitMap unprocessed
        end local 4 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        end local 3 // org.graalvm.compiler.graph.NodeMap nodeMap
        end local 2 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        end local 1 // org.graalvm.compiler.core.common.cfg.BlockMap earliestBlockToNodesMap
        end local 0 // org.graalvm.compiler.nodes.cfg.Block b
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   50     0                        b  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   50     1  earliestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   50     2    latestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   50     3                  nodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   50     4             watchListMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
            0   50     5              unprocessed  Lorg/graalvm/compiler/graph/NodeBitMap;
            1   50     6          earliestSorting  Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
            2   50     7                   result  Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
            3   50     8                watchList  Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;
            7   50     9                beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            9   16    10             loopExitNode  Lorg/graalvm/compiler/nodes/LoopExitNode;
           11   15    11                    proxy  Lorg/graalvm/compiler/nodes/ProxyNode;
           13   15    13                    value  Lorg/graalvm/compiler/nodes/ValueNode;
           17   50    10                  endNode  Lorg/graalvm/compiler/nodes/FixedNode;
           18   50    11             fixedEndNode  Lorg/graalvm/compiler/nodes/FixedNode;
           22   38    12                        n  Lorg/graalvm/compiler/graph/Node;
           30   38    14         floatingReadNode  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
           34   38    15                 location  Lorg/graalvm/word/LocationIdentity;
           41   45    12                        n  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    MethodParameters:
                         Name  Flags
      b                        
      earliestBlockToNodesMap  
      latestBlockToNodesMap    
      nodeMap                  
      watchListMap             
      unprocessed              

  private static void checkWatchList(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap, java.util.ArrayList<org.graalvm.compiler.graph.Node>, java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Ljava/util/ArrayList;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=6
        start local 0 // org.graalvm.compiler.nodes.cfg.Block b
        start local 1 // org.graalvm.compiler.graph.NodeMap nodeMap
        start local 2 // org.graalvm.compiler.graph.NodeBitMap unprocessed
        start local 3 // java.util.ArrayList result
        start local 4 // java.util.ArrayList watchList
        start local 5 // org.graalvm.compiler.graph.Node n
         0: .line 436
            aload 4 /* watchList */
            ifnull 11
            aload 4 /* watchList */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifne 11
         1: .line 438
            aload 5 /* n */
            instanceof org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single
            ifeq 5
         2: .line 439
            aload 5 /* n */
            checkcast org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single
            invokeinterface org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 6 /* identity */
        start local 6 // org.graalvm.word.LocationIdentity identity
         3: .line 440
            aload 4 /* watchList */
            aload 6 /* identity */
            aload 0 /* b */
            aload 3 /* result */
            aload 1 /* nodeMap */
            aload 2 /* unprocessed */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkWatchList:(Ljava/util/ArrayList;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
        end local 6 // org.graalvm.word.LocationIdentity identity
         4: .line 441
            goto 11
      StackMap locals:
      StackMap stack:
         5: aload 5 /* n */
            instanceof org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi
            ifeq 11
         6: .line 442
            aload 5 /* n */
            checkcast org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi
            invokeinterface org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi.getLocationIdentities:()[Lorg/graalvm/word/LocationIdentity;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 10
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap java.util.ArrayList java.util.ArrayList org.graalvm.compiler.graph.Node top int int org.graalvm.word.LocationIdentity[]
      StackMap stack:
         7: aload 9
            iload 7
            aaload
            astore 6 /* identity */
        start local 6 // org.graalvm.word.LocationIdentity identity
         8: .line 443
            aload 4 /* watchList */
            aload 6 /* identity */
            aload 0 /* b */
            aload 3 /* result */
            aload 1 /* nodeMap */
            aload 2 /* unprocessed */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkWatchList:(Ljava/util/ArrayList;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
        end local 6 // org.graalvm.word.LocationIdentity identity
         9: .line 442
            iinc 7 1
      StackMap locals:
      StackMap stack:
        10: iload 7
            iload 8
            if_icmplt 7
        11: .line 447
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap java.util.ArrayList java.util.ArrayList org.graalvm.compiler.graph.Node
      StackMap stack:
            return
        end local 5 // org.graalvm.compiler.graph.Node n
        end local 4 // java.util.ArrayList watchList
        end local 3 // java.util.ArrayList result
        end local 2 // org.graalvm.compiler.graph.NodeBitMap unprocessed
        end local 1 // org.graalvm.compiler.graph.NodeMap nodeMap
        end local 0 // org.graalvm.compiler.nodes.cfg.Block b
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0            b  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   12     1      nodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   12     2  unprocessed  Lorg/graalvm/compiler/graph/NodeBitMap;
            0   12     3       result  Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
            0   12     4    watchList  Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;
            0   12     5            n  Lorg/graalvm/compiler/graph/Node;
            3    4     6     identity  Lorg/graalvm/word/LocationIdentity;
            8    9     6     identity  Lorg/graalvm/word/LocationIdentity;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;Lorg/graalvm/compiler/graph/Node;)V
    MethodParameters:
             Name  Flags
      b            
      nodeMap      
      unprocessed  
      result       
      watchList    
      n            

  private static void checkWatchList(java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>, org.graalvm.word.LocationIdentity, org.graalvm.compiler.nodes.cfg.Block, java.util.ArrayList<org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap);
    descriptor: (Ljava/util/ArrayList;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=6
        start local 0 // java.util.ArrayList watchList
        start local 1 // org.graalvm.word.LocationIdentity identity
        start local 2 // org.graalvm.compiler.nodes.cfg.Block b
        start local 3 // java.util.ArrayList result
        start local 4 // org.graalvm.compiler.graph.NodeMap nodeMap
        start local 5 // org.graalvm.compiler.graph.NodeBitMap unprocessed
         0: .line 450
            aload 1 /* identity */
            invokevirtual org.graalvm.word.LocationIdentity.isImmutable:()Z
            ifne 24
         1: .line 452
            aload 1 /* identity */
            invokevirtual org.graalvm.word.LocationIdentity.isAny:()Z
            ifeq 9
         2: .line 453
            aload 0 /* watchList */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 7
            goto 6
      StackMap locals: java.util.ArrayList org.graalvm.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap top java.util.Iterator
      StackMap stack:
         3: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 6 /* r */
        start local 6 // org.graalvm.compiler.nodes.memory.FloatingReadNode r
         4: .line 454
            aload 5 /* unprocessed */
            aload 6 /* r */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 6
         5: .line 455
            aload 6 /* r */
            aload 2 /* b */
            aload 3 /* result */
            aload 4 /* nodeMap */
            aload 5 /* unprocessed */
            aconst_null
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        end local 6 // org.graalvm.compiler.nodes.memory.FloatingReadNode r
         6: .line 453
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 458
            aload 0 /* watchList */
            invokevirtual java.util.ArrayList.clear:()V
         8: .line 459
            goto 24
         9: .line 460
      StackMap locals: java.util.ArrayList org.graalvm.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap
      StackMap stack:
            iconst_0
            istore 6 /* index */
        start local 6 // int index
        10: .line 461
            goto 23
        11: .line 462
      StackMap locals: int
      StackMap stack:
            aload 0 /* watchList */
            iload 6 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 7 /* r */
        start local 7 // org.graalvm.compiler.nodes.memory.FloatingReadNode r
        12: .line 463
            aload 7 /* r */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 8 /* locationIdentity */
        start local 8 // org.graalvm.word.LocationIdentity locationIdentity
        13: .line 464
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 14
            aload 8 /* locationIdentity */
            invokevirtual org.graalvm.word.LocationIdentity.isMutable:()Z
            ifne 14
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 465
      StackMap locals: org.graalvm.compiler.nodes.memory.FloatingReadNode org.graalvm.word.LocationIdentity
      StackMap stack:
            aload 5 /* unprocessed */
            aload 7 /* r */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 20
        15: .line 466
            aload 1 /* identity */
            aload 8 /* locationIdentity */
            invokevirtual org.graalvm.word.LocationIdentity.overlaps:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 18
        16: .line 467
            aload 7 /* r */
            aload 2 /* b */
            aload 3 /* result */
            aload 4 /* nodeMap */
            aload 5 /* unprocessed */
            aconst_null
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        17: .line 468
            goto 20
        18: .line 469
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
        19: .line 470
            goto 23
        20: .line 473
      StackMap locals:
      StackMap stack:
            aload 0 /* watchList */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            istore 9 /* lastIndex */
        start local 9 // int lastIndex
        21: .line 474
            aload 0 /* watchList */
            iload 6 /* index */
            aload 0 /* watchList */
            iload 9 /* lastIndex */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 475
            aload 0 /* watchList */
            iload 9 /* lastIndex */
            invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
            pop
        end local 9 // int lastIndex
        end local 8 // org.graalvm.word.LocationIdentity locationIdentity
        end local 7 // org.graalvm.compiler.nodes.memory.FloatingReadNode r
        23: .line 461
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            aload 0 /* watchList */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 11
        end local 6 // int index
        24: .line 478
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.graalvm.compiler.graph.NodeBitMap unprocessed
        end local 4 // org.graalvm.compiler.graph.NodeMap nodeMap
        end local 3 // java.util.ArrayList result
        end local 2 // org.graalvm.compiler.nodes.cfg.Block b
        end local 1 // org.graalvm.word.LocationIdentity identity
        end local 0 // java.util.ArrayList watchList
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   25     0         watchList  Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;
            0   25     1          identity  Lorg/graalvm/word/LocationIdentity;
            0   25     2                 b  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   25     3            result  Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
            0   25     4           nodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   25     5       unprocessed  Lorg/graalvm/compiler/graph/NodeBitMap;
            4    6     6                 r  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
           10   24     6             index  I
           12   23     7                 r  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
           13   23     8  locationIdentity  Lorg/graalvm/word/LocationIdentity;
           21   23     9         lastIndex  I
    Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    MethodParameters:
             Name  Flags
      watchList    
      identity     
      b            
      result       
      nodeMap      
      unprocessed  

  private static void sortIntoList(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, java.util.ArrayList<org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=6
        start local 0 // org.graalvm.compiler.graph.Node n
        start local 1 // org.graalvm.compiler.nodes.cfg.Block b
        start local 2 // java.util.ArrayList result
        start local 3 // org.graalvm.compiler.graph.NodeMap nodeMap
        start local 4 // org.graalvm.compiler.graph.NodeBitMap unprocessed
        start local 5 // org.graalvm.compiler.graph.Node excludeNode
         0: .line 481
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 1
            aload 4 /* unprocessed */
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            aload 0 /* n */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 482
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 2
            aload 3 /* nodeMap */
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 1 /* b */
            if_acmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 484
      StackMap locals:
      StackMap stack:
            aload 0 /* n */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 4
         3: .line 485
            return
         4: .line 488
      StackMap locals:
      StackMap stack:
            aload 4 /* unprocessed */
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.clear:(Lorg/graalvm/compiler/graph/Node;)V
         5: .line 490
            aload 0 /* n */
            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 7
            goto 9
      StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.graph.Node top java.util.Iterator
      StackMap stack:
         6: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 6 /* input */
        start local 6 // org.graalvm.compiler.graph.Node input
         7: .line 491
            aload 3 /* nodeMap */
            aload 6 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            aload 1 /* b */
            if_acmpne 9
            aload 4 /* unprocessed */
            aload 6 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 9
            aload 6 /* input */
            aload 5 /* excludeNode */
            if_acmpeq 9
         8: .line 492
            aload 6 /* input */
            aload 1 /* b */
            aload 2 /* result */
            aload 3 /* nodeMap */
            aload 4 /* unprocessed */
            aload 5 /* excludeNode */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
        end local 6 // org.graalvm.compiler.graph.Node input
         9: .line 490
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        10: .line 496
            aload 0 /* n */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifne 12
        11: .line 499
            aload 2 /* result */
            aload 0 /* n */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        12: .line 502
      StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.graph.Node
      StackMap stack:
            return
        end local 5 // org.graalvm.compiler.graph.Node excludeNode
        end local 4 // org.graalvm.compiler.graph.NodeBitMap unprocessed
        end local 3 // org.graalvm.compiler.graph.NodeMap nodeMap
        end local 2 // java.util.ArrayList result
        end local 1 // org.graalvm.compiler.nodes.cfg.Block b
        end local 0 // org.graalvm.compiler.graph.Node n
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0            n  Lorg/graalvm/compiler/graph/Node;
            0   13     1            b  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   13     2       result  Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
            0   13     3      nodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   13     4  unprocessed  Lorg/graalvm/compiler/graph/NodeBitMap;
            0   13     5  excludeNode  Lorg/graalvm/compiler/graph/Node;
            7    9     6        input  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
    MethodParameters:
             Name  Flags
      n            
      b            
      result       
      nodeMap      
      unprocessed  
      excludeNode  

  protected void calcLatestBlock(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy, org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.word.LocationIdentity, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeBitMap, );
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=13, args_size=10
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block earliestBlock
        start local 2 // org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy strategy
        start local 3 // org.graalvm.compiler.graph.Node currentNode
        start local 4 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        start local 5 // org.graalvm.word.LocationIdentity constrainingLocation
        start local 6 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        start local 7 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        start local 8 // org.graalvm.compiler.graph.NodeBitMap visited
        start local 9 // boolean immutableGraph
         0: .line 506
            aconst_null
            astore 10 /* latestBlock */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block latestBlock
         1: .line 507
            aload 3 /* currentNode */
            invokevirtual org.graalvm.compiler.graph.Node.hasUsages:()Z
            ifne 5
         2: .line 508
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 3
            aload 3 /* currentNode */
            instanceof org.graalvm.compiler.nodes.GuardNode
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 509
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 1 /* earliestBlock */
            astore 10 /* latestBlock */
         4: .line 510
            goto 25
         5: .line 511
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 6
            aload 3 /* currentNode */
            invokevirtual org.graalvm.compiler.graph.Node.hasUsages:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 512
      StackMap locals:
      StackMap stack:
            aload 3 /* currentNode */
            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 12
            goto 11
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap org.graalvm.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
      StackMap stack:
         7: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 11 /* usage */
        start local 11 // org.graalvm.compiler.graph.Node usage
         8: .line 513
            iload 9 /* immutableGraph */
            ifeq 10
            aload 8 /* visited */
            aload 11 /* usage */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.contains:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 10
         9: .line 519
            goto 11
        10: .line 521
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap org.graalvm.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            aload 3 /* currentNode */
            aload 11 /* usage */
            aload 10 /* latestBlock */
            aload 4 /* currentNodeMap */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcBlockForUsage:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 10 /* latestBlock */
        end local 11 // org.graalvm.compiler.graph.Node usage
        11: .line 512
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap org.graalvm.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        12: .line 524
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 13
            aload 10 /* latestBlock */
            ifnonnull 13
            new java.lang.AssertionError
            dup
            aload 3 /* currentNode */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        13: .line 526
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap org.graalvm.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 2 /* strategy */
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.FINAL_SCHEDULE:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
            if_acmpeq 14
            aload 2 /* strategy */
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.LATEST_OUT_OF_LOOPS:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
            if_acmpne 23
        14: .line 527
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 15
            aload 10 /* latestBlock */
            ifnonnull 15
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        15: .line 528
      StackMap locals:
      StackMap stack:
            aload 10 /* latestBlock */
            astore 11 /* currentBlock */
        start local 11 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        16: .line 529
            goto 22
        17: .line 530
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 11 /* currentBlock */
            astore 12 /* previousCurrentBlock */
        start local 12 // org.graalvm.compiler.nodes.cfg.Block previousCurrentBlock
        18: .line 531
            aload 11 /* currentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 11 /* currentBlock */
        19: .line 532
            aload 12 /* previousCurrentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.isLoopHeader:()Z
            ifeq 22
        20: .line 533
            aload 11 /* currentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.probability:()D
            aload 10 /* latestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.probability:()D
            dcmpg
            iflt 21
            aload 3 /* currentNode */
            invokevirtual org.graalvm.compiler.graph.Node.graph:()Lorg/graalvm/compiler/graph/Graph;
            checkcast org.graalvm.compiler.nodes.StructuredGraph
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasValueProxies:()Z
            ifeq 22
        21: .line 536
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 11 /* currentBlock */
            astore 10 /* latestBlock */
        end local 12 // org.graalvm.compiler.nodes.cfg.Block previousCurrentBlock
        22: .line 529
      StackMap locals:
      StackMap stack:
            aload 11 /* currentBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
            aload 1 /* earliestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
            if_icmple 23
            aload 11 /* currentBlock */
            aload 1 /* earliestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            if_acmpne 17
        end local 11 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        23: .line 542
      StackMap locals:
      StackMap stack:
            aload 10 /* latestBlock */
            aload 1 /* earliestBlock */
            if_acmpeq 25
            aload 10 /* latestBlock */
            aload 1 /* earliestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            if_acmpeq 25
            aload 5 /* constrainingLocation */
            ifnull 25
        24: .line 543
            aload 1 /* earliestBlock */
            aload 10 /* latestBlock */
            aload 5 /* constrainingLocation */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkKillsBetween:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/word/LocationIdentity;)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 10 /* latestBlock */
        25: .line 547
      StackMap locals:
      StackMap stack:
            aload 10 /* latestBlock */
            aload 1 /* earliestBlock */
            if_acmpeq 29
            aload 3 /* currentNode */
            instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
            ifeq 29
        26: .line 549
            aload 3 /* currentNode */
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 11 /* floatingReadNode */
        start local 11 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        27: .line 550
            aload 11 /* floatingReadNode */
            aload 1 /* earliestBlock */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.isImplicitNullOpportunity:(Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
            ifeq 29
            aload 1 /* earliestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.probability:()D
            aload 10 /* latestBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.probability:()D
            ldc 2.0
            dmul
            dcmpg
            ifge 29
        28: .line 551
            aload 1 /* earliestBlock */
            astore 10 /* latestBlock */
        end local 11 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        29: .line 555
      StackMap locals:
      StackMap stack:
            aload 3 /* currentNode */
            aload 1 /* earliestBlock */
            aload 10 /* latestBlock */
            aload 4 /* currentNodeMap */
            aload 6 /* watchListMap */
            aload 5 /* constrainingLocation */
            aload 7 /* latestBlockToNodesMap */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.selectLatestBlock:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
        30: .line 556
            return
        end local 10 // org.graalvm.compiler.nodes.cfg.Block latestBlock
        end local 9 // boolean immutableGraph
        end local 8 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 7 // org.graalvm.compiler.core.common.cfg.BlockMap latestBlockToNodesMap
        end local 6 // org.graalvm.compiler.core.common.cfg.BlockMap watchListMap
        end local 5 // org.graalvm.word.LocationIdentity constrainingLocation
        end local 4 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        end local 3 // org.graalvm.compiler.graph.Node currentNode
        end local 2 // org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy strategy
        end local 1 // org.graalvm.compiler.nodes.cfg.Block earliestBlock
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   31     0                   this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0   31     1          earliestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   31     2               strategy  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
            0   31     3            currentNode  Lorg/graalvm/compiler/graph/Node;
            0   31     4         currentNodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   31     5   constrainingLocation  Lorg/graalvm/word/LocationIdentity;
            0   31     6           watchListMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
            0   31     7  latestBlockToNodesMap  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   31     8                visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            0   31     9         immutableGraph  Z
            1   31    10            latestBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            8   11    11                  usage  Lorg/graalvm/compiler/graph/Node;
           16   23    11           currentBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           18   22    12   previousCurrentBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           27   29    11       floatingReadNode  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;Z)V
    MethodParameters:
                       Name  Flags
      earliestBlock          
      strategy               
      currentNode            
      currentNodeMap         
      constrainingLocation   
      watchListMap           
      latestBlockToNodesMap  
      visited                
      immutableGraph         

  private static boolean isImplicitNullOpportunity(org.graalvm.compiler.nodes.memory.FloatingReadNode, org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
        start local 1 // org.graalvm.compiler.nodes.cfg.Block block
         0: .line 560
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
            astore 2 /* pred */
        start local 2 // org.graalvm.compiler.graph.Node pred
         1: .line 561
            aload 2 /* pred */
            instanceof org.graalvm.compiler.nodes.IfNode
            ifeq 7
         2: .line 562
            aload 2 /* pred */
            checkcast org.graalvm.compiler.nodes.IfNode
            astore 3 /* ifNode */
        start local 3 // org.graalvm.compiler.nodes.IfNode ifNode
         3: .line 563
            aload 3 /* ifNode */
            invokevirtual org.graalvm.compiler.nodes.IfNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            instanceof org.graalvm.compiler.nodes.calc.IsNullNode
            ifeq 7
         4: .line 564
            aload 3 /* ifNode */
            invokevirtual org.graalvm.compiler.nodes.IfNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            checkcast org.graalvm.compiler.nodes.calc.IsNullNode
            astore 4 /* isNullNode */
        start local 4 // org.graalvm.compiler.nodes.calc.IsNullNode isNullNode
         5: .line 565
            aload 0 /* floatingReadNode */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            invokevirtual org.graalvm.compiler.nodes.memory.address.AddressNode.getBase:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getUnproxifiedUncompressed:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            aload 4 /* isNullNode */
            invokevirtual org.graalvm.compiler.nodes.calc.IsNullNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getUnproxifiedUncompressed:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            if_acmpne 7
         6: .line 566
            iconst_1
            ireturn
        end local 4 // org.graalvm.compiler.nodes.calc.IsNullNode isNullNode
        end local 3 // org.graalvm.compiler.nodes.IfNode ifNode
         7: .line 570
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.graalvm.compiler.graph.Node pred
        end local 1 // org.graalvm.compiler.nodes.cfg.Block block
        end local 0 // org.graalvm.compiler.nodes.memory.FloatingReadNode floatingReadNode
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0  floatingReadNode  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
            0    8     1             block  Lorg/graalvm/compiler/nodes/cfg/Block;
            1    8     2              pred  Lorg/graalvm/compiler/graph/Node;
            3    7     3            ifNode  Lorg/graalvm/compiler/nodes/IfNode;
            5    7     4        isNullNode  Lorg/graalvm/compiler/nodes/calc/IsNullNode;
    MethodParameters:
                  Name  Flags
      floatingReadNode  
      block             

  private static org.graalvm.compiler.graph.Node getUnproxifiedUncompressed(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.graph.Node node
         0: .line 574
            aload 0 /* node */
            astore 1 /* result */
        start local 1 // org.graalvm.compiler.graph.Node result
         1: .line 576
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 1 /* result */
            instanceof org.graalvm.compiler.nodes.spi.ValueProxy
            ifeq 5
         2: .line 577
            aload 1 /* result */
            checkcast org.graalvm.compiler.nodes.spi.ValueProxy
            astore 2 /* valueProxy */
        start local 2 // org.graalvm.compiler.nodes.spi.ValueProxy valueProxy
         3: .line 578
            aload 2 /* valueProxy */
            invokeinterface org.graalvm.compiler.nodes.spi.ValueProxy.getOriginalNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 1 /* result */
        end local 2 // org.graalvm.compiler.nodes.spi.ValueProxy valueProxy
         4: .line 579
            goto 1
      StackMap locals:
      StackMap stack:
         5: aload 1 /* result */
            instanceof org.graalvm.compiler.nodes.calc.ConvertNode
            ifeq 10
         6: .line 580
            aload 1 /* result */
            checkcast org.graalvm.compiler.nodes.calc.ConvertNode
            astore 2 /* convertNode */
        start local 2 // org.graalvm.compiler.nodes.calc.ConvertNode convertNode
         7: .line 581
            aload 2 /* convertNode */
            invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.mayNullCheckSkipConversion:()Z
            ifeq 10
         8: .line 582
            aload 2 /* convertNode */
            invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 1 /* result */
        end local 2 // org.graalvm.compiler.nodes.calc.ConvertNode convertNode
         9: .line 575
            goto 1
        10: .line 590
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // org.graalvm.compiler.graph.Node result
        end local 0 // org.graalvm.compiler.graph.Node node
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         node  Lorg/graalvm/compiler/graph/Node;
            1   11     1       result  Lorg/graalvm/compiler/graph/Node;
            3    4     2   valueProxy  Lorg/graalvm/compiler/nodes/spi/ValueProxy;
            7    9     2  convertNode  Lorg/graalvm/compiler/nodes/calc/ConvertNode;
    MethodParameters:
      Name  Flags
      node  

  private static org.graalvm.compiler.nodes.cfg.Block calcBlockForUsage(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;)Lorg/graalvm/compiler/nodes/cfg/Block;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=4
        start local 0 // org.graalvm.compiler.graph.Node node
        start local 1 // org.graalvm.compiler.graph.Node usage
        start local 2 // org.graalvm.compiler.nodes.cfg.Block startBlock
        start local 3 // org.graalvm.compiler.graph.NodeMap currentNodeMap
         0: .line 594
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 1
            aload 0 /* node */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 595
      StackMap locals:
      StackMap stack:
            aload 2 /* startBlock */
            astore 4 /* currentBlock */
        start local 4 // org.graalvm.compiler.nodes.cfg.Block currentBlock
         2: .line 596
            aload 1 /* usage */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 14
         3: .line 599
            aload 1 /* usage */
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 5 /* phi */
        start local 5 // org.graalvm.compiler.nodes.PhiNode phi
         4: .line 600
            aload 5 /* phi */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            astore 6 /* merge */
        start local 6 // org.graalvm.compiler.nodes.AbstractMergeNode merge
         5: .line 601
            aload 3 /* currentNodeMap */
            aload 6 /* merge */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 7 /* mergeBlock */
        start local 7 // org.graalvm.compiler.nodes.cfg.Block mergeBlock
         6: .line 602
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         7: goto 12
         8: .line 603
      StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.cfg.Block int
      StackMap stack:
            aload 5 /* phi */
            iload 8 /* i */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            aload 0 /* node */
            if_acmpne 11
         9: .line 604
            aload 7 /* mergeBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getPredecessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block[]
            iload 8 /* i */
            aaload
            astore 9 /* otherBlock */
        start local 9 // org.graalvm.compiler.nodes.cfg.Block otherBlock
        10: .line 605
            aload 4 /* currentBlock */
            aload 9 /* otherBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 4 /* currentBlock */
        end local 9 // org.graalvm.compiler.nodes.cfg.Block otherBlock
        11: .line 602
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 8 /* i */
            aload 5 /* phi */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueCount:()I
            if_icmplt 8
        end local 8 // int i
        end local 7 // org.graalvm.compiler.nodes.cfg.Block mergeBlock
        end local 6 // org.graalvm.compiler.nodes.AbstractMergeNode merge
        end local 5 // org.graalvm.compiler.nodes.PhiNode phi
        13: .line 608
            goto 27
      StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
        14: aload 1 /* usage */
            instanceof org.graalvm.compiler.nodes.AbstractBeginNode
            ifeq 22
        15: .line 609
            aload 1 /* usage */
            checkcast org.graalvm.compiler.nodes.AbstractBeginNode
            astore 5 /* abstractBeginNode */
        start local 5 // org.graalvm.compiler.nodes.AbstractBeginNode abstractBeginNode
        16: .line 610
            aload 5 /* abstractBeginNode */
            instanceof org.graalvm.compiler.nodes.StartNode
            ifeq 19
        17: .line 611
            aload 4 /* currentBlock */
            aload 3 /* currentNodeMap */
            aload 5 /* abstractBeginNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 4 /* currentBlock */
        18: .line 612
            goto 27
        19: .line 613
      StackMap locals: org.graalvm.compiler.nodes.AbstractBeginNode
      StackMap stack:
            aload 3 /* currentNodeMap */
            aload 5 /* abstractBeginNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 6 /* otherBlock */
        start local 6 // org.graalvm.compiler.nodes.cfg.Block otherBlock
        20: .line 614
            aload 4 /* currentBlock */
            aload 6 /* otherBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 4 /* currentBlock */
        end local 6 // org.graalvm.compiler.nodes.cfg.Block otherBlock
        end local 5 // org.graalvm.compiler.nodes.AbstractBeginNode abstractBeginNode
        21: .line 616
            goto 27
        22: .line 618
      StackMap locals:
      StackMap stack:
            aload 3 /* currentNodeMap */
            aload 1 /* usage */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 5 /* otherBlock */
        start local 5 // org.graalvm.compiler.nodes.cfg.Block otherBlock
        23: .line 619
            aload 1 /* usage */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifeq 26
        24: .line 620
            aload 1 /* usage */
            checkcast org.graalvm.compiler.nodes.ProxyNode
            astore 6 /* proxyNode */
        start local 6 // org.graalvm.compiler.nodes.ProxyNode proxyNode
        25: .line 621
            aload 3 /* currentNodeMap */
            aload 6 /* proxyNode */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.proxyPoint:()Lorg/graalvm/compiler/nodes/LoopExitNode;
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 5 /* otherBlock */
        end local 6 // org.graalvm.compiler.nodes.ProxyNode proxyNode
        26: .line 624
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 4 /* currentBlock */
            aload 5 /* otherBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 4 /* currentBlock */
        end local 5 // org.graalvm.compiler.nodes.cfg.Block otherBlock
        27: .line 626
      StackMap locals:
      StackMap stack:
            aload 4 /* currentBlock */
            areturn
        end local 4 // org.graalvm.compiler.nodes.cfg.Block currentBlock
        end local 3 // org.graalvm.compiler.graph.NodeMap currentNodeMap
        end local 2 // org.graalvm.compiler.nodes.cfg.Block startBlock
        end local 1 // org.graalvm.compiler.graph.Node usage
        end local 0 // org.graalvm.compiler.graph.Node node
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   28     0               node  Lorg/graalvm/compiler/graph/Node;
            0   28     1              usage  Lorg/graalvm/compiler/graph/Node;
            0   28     2         startBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   28     3     currentNodeMap  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            2   28     4       currentBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            4   13     5                phi  Lorg/graalvm/compiler/nodes/PhiNode;
            5   13     6              merge  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            6   13     7         mergeBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            7   13     8                  i  I
           10   11     9         otherBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           16   21     5  abstractBeginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
           20   21     6         otherBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           23   27     5         otherBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
           25   26     6          proxyNode  Lorg/graalvm/compiler/nodes/ProxyNode;
    Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;)Lorg/graalvm/compiler/nodes/cfg/Block;
    MethodParameters:
                Name  Flags
      node            
      usage           
      startBlock      
      currentNodeMap  

  private void scheduleEarliestIterative(org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.nodes.StructuredGraph, );
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/nodes/StructuredGraph;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=20, args_size=6
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // org.graalvm.compiler.core.common.cfg.BlockMap blockToNodes
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        start local 3 // org.graalvm.compiler.graph.NodeBitMap visited
        start local 4 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 5 // boolean immutableGraph
         0: .line 725
            aload 4 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeMap:()Lorg/graalvm/compiler/graph/NodeMap;
            astore 6 /* entries */
        start local 6 // org.graalvm.compiler.graph.NodeMap entries
         1: .line 726
            new org.graalvm.compiler.graph.NodeStack
            dup
            invokespecial org.graalvm.compiler.graph.NodeStack.<init>:()V
            astore 7 /* stack */
        start local 7 // org.graalvm.compiler.graph.NodeStack stack
         2: .line 729
            aconst_null
            astore 8 /* startBlock */
        start local 8 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock startBlock
         3: .line 730
            iconst_1
            istore 9 /* nextId */
        start local 9 // int nextId
         4: .line 731
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 22
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
         5: aload 13
            iload 11
            aaload
            astore 10 /* b */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block b
         6: .line 732
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 14 /* current */
        start local 14 // org.graalvm.compiler.nodes.FixedNode current
         7: .line 734
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            new org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            dup
            iload 9 /* nextId */
            iinc 9 /* nextId */ 1
            invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.<init>:(I)V
            astore 15 /* microBlock */
        start local 15 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock microBlock
         8: .line 735
            aload 6 /* entries */
            aload 14 /* current */
            aload 15 /* microBlock */
            invokevirtual org.graalvm.compiler.graph.NodeMap.put:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 736
            aload 3 /* visited */
            aload 14 /* current */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
            pop
        10: .line 738
            aload 8 /* startBlock */
            ifnonnull 12
        11: .line 739
            aload 15 /* microBlock */
            astore 8 /* startBlock */
        12: .line 743
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
      StackMap stack:
            aload 14 /* current */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 17
            goto 16
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock top java.util.Iterator
      StackMap stack:
        13: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 16 /* input */
        start local 16 // org.graalvm.compiler.graph.Node input
        14: .line 744
            aload 6 /* entries */
            aload 16 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            ifnonnull 16
        15: .line 745
            aload 16 /* input */
            aload 8 /* startBlock */
            aload 6 /* entries */
            aload 3 /* visited */
            aload 7 /* stack */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStack:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
        end local 16 // org.graalvm.compiler.graph.Node input
        16: .line 743
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        17: .line 749
            aload 14 /* current */
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            if_acmpne 19
        18: .line 751
            goto 21
        19: .line 754
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
      StackMap stack:
            aload 14 /* current */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 14 /* current */
        end local 15 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock microBlock
        20: .line 733
            goto 7
        end local 14 // org.graalvm.compiler.nodes.FixedNode current
        end local 10 // org.graalvm.compiler.nodes.cfg.Block b
        21: .line 731
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        22: iload 11
            iload 12
            if_icmplt 5
        23: .line 759
            aload 4 /* graph */
            getstatic org.graalvm.compiler.nodes.GuardNode.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 11
            goto 27
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top java.util.Iterator
      StackMap stack:
        24: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.GuardNode
            astore 10 /* guardNode */
        start local 10 // org.graalvm.compiler.nodes.GuardNode guardNode
        25: .line 760
            aload 6 /* entries */
            aload 10 /* guardNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            ifnonnull 27
        26: .line 761
            aload 10 /* guardNode */
            aload 8 /* startBlock */
            aload 6 /* entries */
            aload 3 /* visited */
            aload 7 /* stack */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStack:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
        end local 10 // org.graalvm.compiler.nodes.GuardNode guardNode
        27: .line 759
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 24
        28: .line 766
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 41
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
        29: aload 13
            iload 11
            aaload
            astore 10 /* b */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block b
        30: .line 767
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 14 /* current */
        start local 14 // org.graalvm.compiler.nodes.FixedNode current
        31: .line 771
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 14 /* current */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 16
            goto 35
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
      StackMap stack:
        32: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 15 /* input */
        start local 15 // org.graalvm.compiler.graph.Node input
        33: .line 772
            aload 6 /* entries */
            aload 15 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            ifnonnull 35
        34: .line 773
            aload 15 /* input */
            aload 8 /* startBlock */
            aload 6 /* entries */
            aload 3 /* visited */
            aload 7 /* stack */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStack:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
        end local 15 // org.graalvm.compiler.graph.Node input
        35: .line 771
      StackMap locals:
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 32
        36: .line 777
            aload 14 /* current */
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            if_acmpne 38
        37: .line 779
            goto 40
        38: .line 782
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 14 /* current */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 14 /* current */
        39: .line 768
            goto 31
        end local 14 // org.graalvm.compiler.nodes.FixedNode current
        end local 10 // org.graalvm.compiler.nodes.cfg.Block b
        40: .line 766
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        41: iload 11
            iload 12
            if_icmplt 29
        42: .line 786
            aload 3 /* visited */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.getCounter:()I
            aload 4 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
            if_icmpge 63
        43: .line 792
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
      StackMap stack:
            iconst_0
            istore 10 /* changed */
        start local 10 // boolean changed
        44: .line 793
            iconst_0
            istore 11 /* unmarkedPhi */
        start local 11 // boolean unmarkedPhi
        45: .line 794
            aload 4 /* graph */
            getstatic org.graalvm.compiler.nodes.LoopBeginNode.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 13
            goto 61
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int top java.util.Iterator
      StackMap stack:
        46: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.LoopBeginNode
            astore 12 /* loopBegin */
        start local 12 // org.graalvm.compiler.nodes.LoopBeginNode loopBegin
        47: .line 795
            aload 12 /* loopBegin */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.phis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 15
            goto 60
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int org.graalvm.compiler.nodes.LoopBeginNode java.util.Iterator top java.util.Iterator
      StackMap stack:
        48: aload 15
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 14 /* phi */
        start local 14 // org.graalvm.compiler.nodes.PhiNode phi
        49: .line 796
            aload 3 /* visited */
            aload 14 /* phi */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 59
        50: .line 797
            iconst_0
            istore 16 /* i */
        start local 16 // int i
        51: goto 57
        52: .line 798
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int org.graalvm.compiler.nodes.LoopBeginNode java.util.Iterator org.graalvm.compiler.nodes.PhiNode java.util.Iterator int
      StackMap stack:
            aload 14 /* phi */
            iload 16 /* i */
            aload 12 /* loopBegin */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.forwardEndCount:()I
            iadd
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 17 /* node */
        start local 17 // org.graalvm.compiler.graph.Node node
        53: .line 799
            aload 17 /* node */
            ifnull 56
            aload 6 /* entries */
            aload 17 /* node */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            ifnonnull 56
        54: .line 800
            iconst_1
            istore 10 /* changed */
        55: .line 801
            aload 17 /* node */
            aload 8 /* startBlock */
            aload 6 /* entries */
            aload 3 /* visited */
            aload 7 /* stack */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStack:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
        end local 17 // org.graalvm.compiler.graph.Node node
        56: .line 797
      StackMap locals:
      StackMap stack:
            iinc 16 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 16 /* i */
            aload 12 /* loopBegin */
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.getLoopEndCount:()I
            if_icmplt 52
        end local 16 // int i
        58: .line 804
            goto 60
        59: .line 805
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 11 /* unmarkedPhi */
        end local 14 // org.graalvm.compiler.nodes.PhiNode phi
        60: .line 795
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int org.graalvm.compiler.nodes.LoopBeginNode java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 15
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 48
        end local 12 // org.graalvm.compiler.nodes.LoopBeginNode loopBegin
        61: .line 794
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 46
        62: .line 814
            iload 11 /* unmarkedPhi */
            ifeq 63
            iload 10 /* changed */
            ifne 43
        end local 11 // boolean unmarkedPhi
        end local 10 // boolean changed
        63: .line 818
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
      StackMap stack:
            iload 5 /* immutableGraph */
            ifne 70
            aload 3 /* visited */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.getCounter:()I
            aload 4 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
            if_icmpge 70
        64: .line 819
            aload 4 /* graph */
            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 11
            goto 69
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top java.util.Iterator
      StackMap stack:
        65: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 10 /* n */
        start local 10 // org.graalvm.compiler.graph.Node n
        66: .line 820
            aload 3 /* visited */
            aload 10 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifne 69
        67: .line 821
            aload 10 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.clearInputs:()V
        68: .line 822
            aload 10 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.markDeleted:()V
        end local 10 // org.graalvm.compiler.graph.Node n
        69: .line 819
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 65
        70: .line 827
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 79
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
        71: aload 13
            iload 11
            aaload
            astore 10 /* b */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block b
        72: .line 828
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 14 /* fixedNode */
        start local 14 // org.graalvm.compiler.nodes.FixedNode fixedNode
        73: .line 829
            aload 14 /* fixedNode */
            instanceof org.graalvm.compiler.nodes.ControlSplitNode
            ifeq 78
        74: .line 830
            aload 14 /* fixedNode */
            checkcast org.graalvm.compiler.nodes.ControlSplitNode
            astore 15 /* controlSplitNode */
        start local 15 // org.graalvm.compiler.nodes.ControlSplitNode controlSplitNode
        75: .line 831
            aload 6 /* entries */
            aload 14 /* fixedNode */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 16 /* endBlock */
        start local 16 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock endBlock
        76: .line 832
            aload 6 /* entries */
            aload 15 /* controlSplitNode */
            invokevirtual org.graalvm.compiler.nodes.ControlSplitNode.getPrimarySuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 17 /* primarySuccessor */
        start local 17 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock primarySuccessor
        77: .line 833
            aload 16 /* endBlock */
            aload 17 /* primarySuccessor */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.prependChildrenTo:(Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;)V
        end local 17 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock primarySuccessor
        end local 16 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock endBlock
        end local 15 // org.graalvm.compiler.nodes.ControlSplitNode controlSplitNode
        end local 14 // org.graalvm.compiler.nodes.FixedNode fixedNode
        end local 10 // org.graalvm.compiler.nodes.cfg.Block b
        78: .line 827
      StackMap locals:
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        79: iload 11
            iload 12
            if_icmplt 71
        80: .line 838
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 108
      StackMap locals:
      StackMap stack:
        81: aload 13
            iload 11
            aaload
            astore 10 /* b */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block b
        82: .line 840
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 14 /* current */
        start local 14 // org.graalvm.compiler.nodes.FixedNode current
        83: .line 841
            iconst_0
            istore 15 /* totalCount */
        start local 15 // int totalCount
        84: .line 844
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode int
      StackMap stack:
            aload 6 /* entries */
            aload 14 /* current */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 16 /* microBlock */
        start local 16 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock microBlock
        85: .line 845
            iload 15 /* totalCount */
            aload 16 /* microBlock */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getNodeCount:()I
            iconst_1
            iadd
            iadd
            istore 15 /* totalCount */
        86: .line 847
            aload 14 /* current */
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            if_acmpne 88
        87: .line 849
            goto 90
        88: .line 852
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
      StackMap stack:
            aload 14 /* current */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 14 /* current */
        end local 16 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock microBlock
        89: .line 842
            goto 84
        90: .line 856
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            iload 15 /* totalCount */
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 16 /* nodes */
        start local 16 // java.util.ArrayList nodes
        91: .line 857
            aload 1 /* blockToNodes */
            aload 10 /* b */
            aload 16 /* nodes */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
        92: .line 859
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 14 /* current */
        93: .line 862
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 6 /* entries */
            aload 14 /* current */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 17 /* microBlock */
        start local 17 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock microBlock
        94: .line 863
            aload 2 /* nodeToBlock */
            aload 14 /* current */
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
        95: .line 864
            aload 16 /* nodes */
            aload 14 /* current */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        96: .line 865
            aload 17 /* microBlock */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getFirstNode:()Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
            astore 18 /* next */
        start local 18 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry next
        97: .line 866
            goto 102
        98: .line 867
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry
      StackMap stack:
            aload 18 /* next */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry.getNode:()Lorg/graalvm/compiler/graph/Node;
            astore 19 /* nextNode */
        start local 19 // org.graalvm.compiler.graph.Node nextNode
        99: .line 868
            aload 2 /* nodeToBlock */
            aload 19 /* nextNode */
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
       100: .line 869
            aload 16 /* nodes */
            aload 19 /* nextNode */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
       101: .line 870
            aload 18 /* next */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry.getNext:()Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
            astore 18 /* next */
        end local 19 // org.graalvm.compiler.graph.Node nextNode
       102: .line 866
      StackMap locals:
      StackMap stack:
            aload 18 /* next */
            ifnonnull 98
       103: .line 873
            aload 14 /* current */
            aload 10 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            if_acmpne 105
       104: .line 875
            goto 107
       105: .line 878
      StackMap locals:
      StackMap stack:
            aload 14 /* current */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 14 /* current */
        end local 18 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry next
        end local 17 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock microBlock
       106: .line 860
            goto 93
        end local 16 // java.util.ArrayList nodes
        end local 15 // int totalCount
        end local 14 // org.graalvm.compiler.nodes.FixedNode current
        end local 10 // org.graalvm.compiler.nodes.cfg.Block b
       107: .line 838
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
       108: iload 11
            iload 12
            if_icmplt 81
       109: .line 882
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 110
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            getfield org.graalvm.compiler.nodes.cfg.ControlFlowGraph.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
            ifeq 110
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
            aload 1 /* blockToNodes */
            invokestatic org.graalvm.compiler.phases.schedule.MemoryScheduleVerification.check:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)Z
            ifne 110
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       110: .line 883
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
      StackMap stack:
            return
        end local 9 // int nextId
        end local 8 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock startBlock
        end local 7 // org.graalvm.compiler.graph.NodeStack stack
        end local 6 // org.graalvm.compiler.graph.NodeMap entries
        end local 5 // boolean immutableGraph
        end local 4 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 3 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        end local 1 // org.graalvm.compiler.core.common.cfg.BlockMap blockToNodes
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  111     0              this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0  111     1      blockToNodes  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0  111     2       nodeToBlock  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0  111     3           visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            0  111     4             graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0  111     5    immutableGraph  Z
            1  111     6           entries  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
            2  111     7             stack  Lorg/graalvm/compiler/graph/NodeStack;
            3  111     8        startBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
            4  111     9            nextId  I
            6   21    10                 b  Lorg/graalvm/compiler/nodes/cfg/Block;
            7   21    14           current  Lorg/graalvm/compiler/nodes/FixedNode;
            8   20    15        microBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
           14   16    16             input  Lorg/graalvm/compiler/graph/Node;
           25   27    10         guardNode  Lorg/graalvm/compiler/nodes/GuardNode;
           30   40    10                 b  Lorg/graalvm/compiler/nodes/cfg/Block;
           31   40    14           current  Lorg/graalvm/compiler/nodes/FixedNode;
           33   35    15             input  Lorg/graalvm/compiler/graph/Node;
           44   63    10           changed  Z
           45   63    11       unmarkedPhi  Z
           47   61    12         loopBegin  Lorg/graalvm/compiler/nodes/LoopBeginNode;
           49   60    14               phi  Lorg/graalvm/compiler/nodes/PhiNode;
           51   58    16                 i  I
           53   56    17              node  Lorg/graalvm/compiler/graph/Node;
           66   69    10                 n  Lorg/graalvm/compiler/graph/Node;
           72   78    10                 b  Lorg/graalvm/compiler/nodes/cfg/Block;
           73   78    14         fixedNode  Lorg/graalvm/compiler/nodes/FixedNode;
           75   78    15  controlSplitNode  Lorg/graalvm/compiler/nodes/ControlSplitNode;
           76   78    16          endBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
           77   78    17  primarySuccessor  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
           82  107    10                 b  Lorg/graalvm/compiler/nodes/cfg/Block;
           83  107    14           current  Lorg/graalvm/compiler/nodes/FixedNode;
           84  107    15        totalCount  I
           85   89    16        microBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
           91  107    16             nodes  Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
           94  106    17        microBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
           97  106    18              next  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
           99  102    19          nextNode  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/nodes/StructuredGraph;Z)V
    MethodParameters:
                Name  Flags
      blockToNodes    
      nodeToBlock     
      visited         
      graph           
      immutableGraph  

  private static void processStackPhi(org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.nodes.PhiNode, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeBitMap);
    descriptor: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.graph.NodeStack stack
        start local 1 // org.graalvm.compiler.nodes.PhiNode phiNode
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        start local 3 // org.graalvm.compiler.graph.NodeBitMap visited
         0: .line 886
            aload 0 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
            pop
         1: .line 887
            aload 3 /* visited */
            aload 1 /* phiNode */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 13
         2: .line 888
            aload 2 /* nodeToBlock */
            aload 1 /* phiNode */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 4 /* mergeBlock */
        start local 4 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock mergeBlock
         3: .line 889
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 4
            aload 4 /* mergeBlock */
            ifnonnull 4
            new java.lang.AssertionError
            dup
            aload 1 /* phiNode */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 890
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
      StackMap stack:
            aload 2 /* nodeToBlock */
            aload 1 /* phiNode */
            aload 4 /* mergeBlock */
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
         5: .line 891
            aload 1 /* phiNode */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            astore 5 /* merge */
        start local 5 // org.graalvm.compiler.nodes.AbstractMergeNode merge
         6: .line 892
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 12
         8: .line 893
      StackMap locals: org.graalvm.compiler.nodes.AbstractMergeNode int
      StackMap stack:
            aload 1 /* phiNode */
            iload 6 /* i */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 7 /* input */
        start local 7 // org.graalvm.compiler.graph.Node input
         9: .line 894
            aload 7 /* input */
            ifnull 11
            aload 2 /* nodeToBlock */
            aload 7 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            ifnonnull 11
        10: .line 895
            aload 0 /* stack */
            aload 7 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.graph.Node input
        11: .line 892
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            aload 5 /* merge */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndCount:()I
            if_icmplt 8
        end local 6 // int i
        end local 5 // org.graalvm.compiler.nodes.AbstractMergeNode merge
        end local 4 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock mergeBlock
        13: .line 899
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        end local 1 // org.graalvm.compiler.nodes.PhiNode phiNode
        end local 0 // org.graalvm.compiler.graph.NodeStack stack
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0        stack  Lorg/graalvm/compiler/graph/NodeStack;
            0   14     1      phiNode  Lorg/graalvm/compiler/nodes/PhiNode;
            0   14     2  nodeToBlock  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
            0   14     3      visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            3   13     4   mergeBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
            6   13     5        merge  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            7   13     6            i  I
            9   11     7        input  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    MethodParameters:
             Name  Flags
      stack        
      phiNode      
      nodeToBlock  
      visited      

  private static void processStackProxy(org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.nodes.ProxyNode, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeBitMap);
    descriptor: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/ProxyNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.graph.NodeStack stack
        start local 1 // org.graalvm.compiler.nodes.ProxyNode proxyNode
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        start local 3 // org.graalvm.compiler.graph.NodeBitMap visited
         0: .line 902
            aload 0 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
            pop
         1: .line 903
            aload 3 /* visited */
            aload 1 /* proxyNode */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 6
         2: .line 904
            aload 2 /* nodeToBlock */
            aload 1 /* proxyNode */
            aload 2 /* nodeToBlock */
            aload 1 /* proxyNode */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.proxyPoint:()Lorg/graalvm/compiler/nodes/LoopExitNode;
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
         3: .line 905
            aload 1 /* proxyNode */
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 4 /* input */
        start local 4 // org.graalvm.compiler.graph.Node input
         4: .line 906
            aload 4 /* input */
            ifnull 6
            aload 2 /* nodeToBlock */
            aload 4 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            ifnonnull 6
         5: .line 907
            aload 0 /* stack */
            aload 4 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
        end local 4 // org.graalvm.compiler.graph.Node input
         6: .line 910
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        end local 1 // org.graalvm.compiler.nodes.ProxyNode proxyNode
        end local 0 // org.graalvm.compiler.graph.NodeStack stack
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0        stack  Lorg/graalvm/compiler/graph/NodeStack;
            0    7     1    proxyNode  Lorg/graalvm/compiler/nodes/ProxyNode;
            0    7     2  nodeToBlock  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
            0    7     3      visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            4    6     4        input  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/ProxyNode;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
    MethodParameters:
             Name  Flags
      stack        
      proxyNode    
      nodeToBlock  
      visited      

  private static void processStack(org.graalvm.compiler.graph.Node, org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.graph.NodeStack);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // org.graalvm.compiler.graph.Node first
        start local 1 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock startBlock
        start local 2 // org.graalvm.compiler.graph.NodeMap nodeToMicroBlock
        start local 3 // org.graalvm.compiler.graph.NodeBitMap visited
        start local 4 // org.graalvm.compiler.graph.NodeStack stack
         0: .line 913
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 1
            aload 4 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.isEmpty:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 914
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
            ifne 2
            aload 3 /* visited */
            aload 0 /* first */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 915
      StackMap locals:
      StackMap stack:
            aload 4 /* stack */
            aload 0 /* first */
            invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
         3: .line 916
            aload 0 /* first */
            astore 5 /* current */
        start local 5 // org.graalvm.compiler.graph.Node current
         4: .line 918
      StackMap locals: org.graalvm.compiler.graph.Node
      StackMap stack:
            aload 5 /* current */
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifeq 7
         5: .line 919
            aload 4 /* stack */
            aload 5 /* current */
            checkcast org.graalvm.compiler.nodes.PhiNode
            aload 2 /* nodeToMicroBlock */
            aload 3 /* visited */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStackPhi:(Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
         6: .line 920
            goto 20
      StackMap locals:
      StackMap stack:
         7: aload 5 /* current */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifeq 10
         8: .line 921
            aload 4 /* stack */
            aload 5 /* current */
            checkcast org.graalvm.compiler.nodes.ProxyNode
            aload 2 /* nodeToMicroBlock */
            aload 3 /* visited */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStackProxy:(Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/ProxyNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
         9: .line 922
            goto 20
        10: .line 923
      StackMap locals:
      StackMap stack:
            aload 2 /* nodeToMicroBlock */
            aload 5 /* current */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 6 /* currentBlock */
        start local 6 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock currentBlock
        11: .line 924
            aload 6 /* currentBlock */
            ifnonnull 19
        12: .line 925
            aload 2 /* nodeToMicroBlock */
            aload 4 /* stack */
            aload 1 /* startBlock */
            aload 5 /* current */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processInputs:(Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
            astore 7 /* earliestBlock */
        start local 7 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock earliestBlock
        13: .line 926
            aload 7 /* earliestBlock */
            ifnull 20
        14: .line 930
            aload 4 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
            pop
        15: .line 931
            aload 3 /* visited */
            aload 5 /* current */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
            pop
        16: .line 932
            aload 2 /* nodeToMicroBlock */
            aload 5 /* current */
            aload 7 /* earliestBlock */
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
        17: .line 933
            aload 7 /* earliestBlock */
            aload 5 /* current */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.add:(Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock earliestBlock
        18: .line 935
            goto 20
        19: .line 936
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
      StackMap stack:
            aload 4 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
            pop
        end local 6 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock currentBlock
        20: .line 940
      StackMap locals:
      StackMap stack:
            aload 4 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.isEmpty:()Z
            ifeq 22
        21: .line 941
            goto 24
        22: .line 943
      StackMap locals:
      StackMap stack:
            aload 4 /* stack */
            invokevirtual org.graalvm.compiler.graph.NodeStack.peek:()Lorg/graalvm/compiler/graph/Node;
            astore 5 /* current */
        23: .line 917
            goto 4
        24: .line 945
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.graalvm.compiler.graph.Node current
        end local 4 // org.graalvm.compiler.graph.NodeStack stack
        end local 3 // org.graalvm.compiler.graph.NodeBitMap visited
        end local 2 // org.graalvm.compiler.graph.NodeMap nodeToMicroBlock
        end local 1 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock startBlock
        end local 0 // org.graalvm.compiler.graph.Node first
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   25     0             first  Lorg/graalvm/compiler/graph/Node;
            0   25     1        startBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
            0   25     2  nodeToMicroBlock  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
            0   25     3           visited  Lorg/graalvm/compiler/graph/NodeBitMap;
            0   25     4             stack  Lorg/graalvm/compiler/graph/NodeStack;
            4   25     5           current  Lorg/graalvm/compiler/graph/Node;
           11   20     6      currentBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
           13   18     7     earliestBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
    Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
    MethodParameters:
                  Name  Flags
      first             
      startBlock        
      nodeToMicroBlock  
      visited           
      stack             

  private static org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock processInputs(org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        start local 1 // org.graalvm.compiler.graph.NodeStack stack
        start local 2 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock startBlock
        start local 3 // org.graalvm.compiler.graph.Node current
         0: .line 953
            aload 3 /* current */
            invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.graph.NodeClass.isLeafNode:()Z
            ifeq 2
         1: .line 954
            aload 2 /* startBlock */
            areturn
         2: .line 957
      StackMap locals:
      StackMap stack:
            aload 2 /* startBlock */
            astore 4 /* earliestBlock */
        start local 4 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock earliestBlock
         3: .line 958
            aload 3 /* current */
            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 6
            goto 12
      StackMap locals: org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 5 /* input */
        start local 5 // org.graalvm.compiler.graph.Node input
         5: .line 959
            aload 0 /* nodeToBlock */
            aload 5 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
            astore 7 /* inputBlock */
        start local 7 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock inputBlock
         6: .line 960
            aload 7 /* inputBlock */
            ifnonnull 10
         7: .line 961
            aconst_null
            astore 4 /* earliestBlock */
         8: .line 962
            aload 1 /* stack */
            aload 5 /* input */
            invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
         9: .line 963
            goto 12
      StackMap locals: org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
      StackMap stack:
        10: aload 4 /* earliestBlock */
            ifnull 12
            aload 7 /* inputBlock */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getId:()I
            aload 4 /* earliestBlock */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getId:()I
            if_icmplt 12
        11: .line 964
            aload 7 /* inputBlock */
            astore 4 /* earliestBlock */
        end local 7 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock inputBlock
        end local 5 // org.graalvm.compiler.graph.Node input
        12: .line 958
      StackMap locals: org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        13: .line 967
            aload 4 /* earliestBlock */
            areturn
        end local 4 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock earliestBlock
        end local 3 // org.graalvm.compiler.graph.Node current
        end local 2 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock startBlock
        end local 1 // org.graalvm.compiler.graph.NodeStack stack
        end local 0 // org.graalvm.compiler.graph.NodeMap nodeToBlock
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0    nodeToBlock  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
            0   14     1          stack  Lorg/graalvm/compiler/graph/NodeStack;
            0   14     2     startBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
            0   14     3        current  Lorg/graalvm/compiler/graph/Node;
            3   14     4  earliestBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
            5   12     5          input  Lorg/graalvm/compiler/graph/Node;
            6   12     7     inputBlock  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
    Signature: (Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
    MethodParameters:
             Name  Flags
      nodeToBlock  
      stack        
      startBlock   
      current      

  private static boolean isFixedEnd(org.graalvm.compiler.nodes.FixedNode);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedNode;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.FixedNode endNode
         0: .line 971
            aload 0 /* endNode */
            instanceof org.graalvm.compiler.nodes.ControlSplitNode
            ifne 1
            aload 0 /* endNode */
            instanceof org.graalvm.compiler.nodes.ControlSinkNode
            ifne 1
            aload 0 /* endNode */
            instanceof org.graalvm.compiler.nodes.AbstractEndNode
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.graalvm.compiler.nodes.FixedNode endNode
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  endNode  Lorg/graalvm/compiler/nodes/FixedNode;
    MethodParameters:
         Name  Flags
      endNode  

  public java.lang.String printScheduleHelper(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // java.lang.String desc
         0: .line 975
            new java.util.Formatter
            dup
            invokespecial java.util.Formatter.<init>:()V
            astore 2 /* buf */
        start local 2 // java.util.Formatter buf
         1: .line 976
            aload 2 /* buf */
            ldc "=== %s / %s ===%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            aastore
            dup
            iconst_1
            aload 1 /* desc */
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         2: .line 977
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 19
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* b */
        start local 3 // org.graalvm.compiler.nodes.cfg.Block b
         4: .line 978
            aload 2 /* buf */
            ldc "==== b: %s (loopDepth: %s). "
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* b */
            aastore
            dup
            iconst_1
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         5: .line 979
            aload 2 /* buf */
            ldc "dom: %s. "
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         6: .line 980
            aload 2 /* buf */
            ldc "preds: %s. "
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getPredecessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         7: .line 981
            aload 2 /* buf */
            ldc "succs: %s ====%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         8: .line 983
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            ifnull 14
         9: .line 984
            aload 0 /* this */
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.nodesFor:(Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 12
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
      StackMap stack:
        10: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 7 /* n */
        start local 7 // org.graalvm.compiler.graph.Node n
        11: .line 985
            aload 7 /* n */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.printNode:(Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.graph.Node n
        12: .line 984
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        13: .line 987
            goto 18
        14: .line 988
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getNodes:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 8
            goto 17
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
      StackMap stack:
        15: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 7 /* n */
        start local 7 // org.graalvm.compiler.graph.Node n
        16: .line 989
            aload 7 /* n */
            invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.printNode:(Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.graph.Node n
        17: .line 988
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        end local 3 // org.graalvm.compiler.nodes.cfg.Block b
        18: .line 977
      StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter top int int org.graalvm.compiler.nodes.cfg.Block[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        19: iload 4
            iload 5
            if_icmplt 3
        20: .line 993
            aload 2 /* buf */
            ldc "%n"
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        21: .line 994
            aload 2 /* buf */
            invokevirtual java.util.Formatter.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.util.Formatter buf
        end local 1 // java.lang.String desc
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0   22     1  desc  Ljava/lang/String;
            1   22     2   buf  Ljava/util/Formatter;
            4   18     3     b  Lorg/graalvm/compiler/nodes/cfg/Block;
           11   12     7     n  Lorg/graalvm/compiler/graph/Node;
           16   17     7     n  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
      Name  Flags
      desc  

  private static void printNode(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // org.graalvm.compiler.graph.Node n
         0: .line 998
            new java.util.Formatter
            dup
            invokespecial java.util.Formatter.<init>:()V
            astore 1 /* buf */
        start local 1 // java.util.Formatter buf
         1: .line 999
            aload 1 /* buf */
            ldc "%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* n */
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         2: .line 1000
            aload 0 /* n */
            instanceof org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single
            ifeq 5
         3: .line 1001
            aload 1 /* buf */
            ldc " // kills %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* n */
            checkcast org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single
            invokeinterface org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         4: .line 1002
            goto 21
      StackMap locals: java.util.Formatter
      StackMap stack:
         5: aload 0 /* n */
            instanceof org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi
            ifeq 13
         6: .line 1003
            aload 1 /* buf */
            ldc " // kills "
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         7: .line 1004
            aload 0 /* n */
            checkcast org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi
            invokeinterface org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi.getLocationIdentities:()[Lorg/graalvm/word/LocationIdentity;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 11
      StackMap locals: org.graalvm.compiler.graph.Node java.util.Formatter top int int org.graalvm.word.LocationIdentity[]
      StackMap stack:
         8: aload 5
            iload 3
            aaload
            astore 2 /* locid */
        start local 2 // org.graalvm.word.LocationIdentity locid
         9: .line 1005
            aload 1 /* buf */
            ldc "%s, "
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* locid */
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        end local 2 // org.graalvm.word.LocationIdentity locid
        10: .line 1004
            iinc 3 1
      StackMap locals:
      StackMap stack:
        11: iload 3
            iload 4
            if_icmplt 8
        12: .line 1007
            goto 21
      StackMap locals: org.graalvm.compiler.graph.Node java.util.Formatter
      StackMap stack:
        13: aload 0 /* n */
            instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
            ifeq 19
        14: .line 1008
            aload 0 /* n */
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 2 /* frn */
        start local 2 // org.graalvm.compiler.nodes.memory.FloatingReadNode frn
        15: .line 1009
            aload 1 /* buf */
            ldc " // from %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* frn */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        16: .line 1010
            aload 1 /* buf */
            ldc ", lastAccess: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* frn */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLastLocationAccess:()Lorg/graalvm/compiler/nodes/memory/MemoryNode;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        17: .line 1011
            aload 1 /* buf */
            ldc ", address: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* frn */
            invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        end local 2 // org.graalvm.compiler.nodes.memory.FloatingReadNode frn
        18: .line 1012
            goto 21
      StackMap locals:
      StackMap stack:
        19: aload 0 /* n */
            instanceof org.graalvm.compiler.nodes.GuardNode
            ifeq 21
        20: .line 1013
            aload 1 /* buf */
            ldc ", anchor: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* n */
            checkcast org.graalvm.compiler.nodes.GuardNode
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getAnchor:()Lorg/graalvm/compiler/nodes/extended/AnchoringNode;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        21: .line 1015
      StackMap locals:
      StackMap stack:
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            ldc "%s"
            aload 1 /* buf */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
        22: .line 1016
            return
        end local 1 // java.util.Formatter buf
        end local 0 // org.graalvm.compiler.graph.Node n
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0      n  Lorg/graalvm/compiler/graph/Node;
            1   23     1    buf  Ljava/util/Formatter;
            9   10     2  locid  Lorg/graalvm/word/LocationIdentity;
           15   18     2    frn  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
    MethodParameters:
      Name  Flags
      n     

  public org.graalvm.compiler.nodes.cfg.ControlFlowGraph getCFG();
    descriptor: ()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
         0: .line 1019
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            areturn
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;

  public java.util.List<org.graalvm.compiler.graph.Node> nodesFor(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block block
         0: .line 1026
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 1 // org.graalvm.compiler.nodes.cfg.Block block
        end local 0 // org.graalvm.compiler.phases.schedule.SchedulePhase$Instance this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
            0    1     1  block  Lorg/graalvm/compiler/nodes/cfg/Block;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
    MethodParameters:
       Name  Flags
      block  
}
SourceFile: "SchedulePhase.java"
NestHost: org.graalvm.compiler.phases.schedule.SchedulePhase
InnerClasses:
  public final GuardsStage = org.graalvm.compiler.nodes.StructuredGraph$GuardsStage of org.graalvm.compiler.nodes.StructuredGraph
  public ScheduleResult = org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult of org.graalvm.compiler.nodes.StructuredGraph
  public abstract Multi = org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Multi of org.graalvm.compiler.nodes.memory.MemoryCheckpoint
  public abstract Single = org.graalvm.compiler.nodes.memory.MemoryCheckpoint$Single of org.graalvm.compiler.nodes.memory.MemoryCheckpoint
  public Instance = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance of org.graalvm.compiler.phases.schedule.SchedulePhase
  private MicroBlock = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock of org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
  private NodeEntry = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry of org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
  public final SchedulingStrategy = org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy of org.graalvm.compiler.phases.schedule.SchedulePhase