public class org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance implements org.graalvm.compiler.nodes.cfg.ControlFlowGraph$RecursiveVisitor<org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance
  super_class: java.lang.Object
{
  protected final org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement> map;
    descriptor: Lorg/graalvm/compiler/graph/NodeMap;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;>;

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

  protected final org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block> nodeToBlock;
    descriptor: Lorg/graalvm/compiler/graph/NodeMap;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;

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

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

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

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

  protected final org.graalvm.collections.EconomicMap<org.graalvm.compiler.nodes.MergeNode, org.graalvm.collections.EconomicMap<org.graalvm.compiler.nodes.ValuePhiNode, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement>> mergeMaps;
    descriptor: Lorg/graalvm/collections/EconomicMap;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/nodes/MergeNode;Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;>;>;

  private final org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElementProvider infoElementProvider;
    descriptor: Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElementProvider;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardFolding guardFolding;
    descriptor: Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardFolding;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final java.util.ArrayDeque<org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardedCondition> conditions;
    descriptor: Ljava/util/ArrayDeque;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljava/util/ArrayDeque<Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardedCondition;>;

  private java.util.Deque<org.graalvm.compiler.nodes.DeoptimizingGuard> pendingTests;
    descriptor: Ljava/util/Deque;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Deque<Lorg/graalvm/compiler/nodes/DeoptimizingGuard;>;

  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 302
            ldc Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase;
            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.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.nodes.StructuredGraph, 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.nodes.spi.CoreProviders);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/nodes/spi/CoreProviders;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.core.common.cfg.BlockMap blockToNodes
        start local 3 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        start local 4 // org.graalvm.compiler.nodes.spi.CoreProviders context
         0: .line 321
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 322
            aload 0 /* this */
            aload 1 /* graph */
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
         2: .line 323
            aload 0 /* this */
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
         3: .line 324
            aload 0 /* this */
            aload 2 /* blockToNodes */
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.blockToNodes:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
         4: .line 325
            aload 0 /* this */
            aload 3 /* nodeToBlock */
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nodeToBlock:Lorg/graalvm/compiler/graph/NodeMap;
         5: .line 326
            aload 0 /* this */
            new org.graalvm.compiler.graph.NodeStack
            dup
            invokespecial org.graalvm.compiler.graph.NodeStack.<init>:()V
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.undoOperations:Lorg/graalvm/compiler/graph/NodeStack;
         6: .line 327
            aload 0 /* this */
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeMap:()Lorg/graalvm/compiler/graph/NodeMap;
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
         7: .line 328
            aload 0 /* this */
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
         8: .line 329
            aload 0 /* this */
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
         9: .line 330
            aload 0 /* this */
            aload 4 /* context */
            iconst_0
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.getDefaultSimplifier:(Lorg/graalvm/compiler/nodes/spi/CoreProviders;ZLjdk/vm/ci/meta/Assumptions;Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/graph/spi/SimplifierTool;
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tool:Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
        10: .line 331
            aload 0 /* this */
            getstatic org.graalvm.collections.Equivalence.IDENTITY:Lorg/graalvm/collections/Equivalence;
            invokestatic org.graalvm.collections.EconomicMap.create:(Lorg/graalvm/collections/Equivalence;)Lorg/graalvm/collections/EconomicMap;
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Lorg/graalvm/collections/EconomicMap;
        11: .line 332
            aload 0 /* this */
            new org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance$1
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance$1.<init>:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;)V
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.infoElementProvider:Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElementProvider;
        12: .line 339
            aload 0 /* this */
            new org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance$2
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance$2.<init>:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;)V
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.guardFolding:Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardFolding;
        13: .line 346
            return
        end local 4 // org.graalvm.compiler.nodes.spi.CoreProviders context
        end local 3 // org.graalvm.compiler.graph.NodeMap nodeToBlock
        end local 2 // org.graalvm.compiler.core.common.cfg.BlockMap blockToNodes
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   14     1         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0   14     2  blockToNodes  Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
            0   14     3   nodeToBlock  Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   14     4       context  Lorg/graalvm/compiler/nodes/spi/CoreProviders;
    Signature: (Lorg/graalvm/compiler/nodes/StructuredGraph;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/nodes/spi/CoreProviders;)V
    MethodParameters:
              Name  Flags
      graph         
      blockToNodes  
      nodeToBlock   
      context       

  protected void processConditionAnchor(org.graalvm.compiler.nodes.ConditionAnchorNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ConditionAnchorNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.ConditionAnchorNode node
         0: .line 349
            aload 0 /* this */
            aconst_null
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 1 /* node */
            invokedynamic rewire(Lorg/graalvm/compiler/nodes/ConditionAnchorNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
                  org/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance.lambda$0(Lorg/graalvm/compiler/nodes/ConditionAnchorNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z (6)
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tryProveGuardCondition:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
            pop
         1: .line 361
            return
        end local 1 // org.graalvm.compiler.nodes.ConditionAnchorNode node
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    2     1  node  Lorg/graalvm/compiler/nodes/ConditionAnchorNode;
    MethodParameters:
      Name  Flags
      node  

  protected void processGuard(org.graalvm.compiler.nodes.GuardNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GuardNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.GuardNode node
         0: .line 364
            aload 0 /* this */
            aload 1 /* node */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 0 /* this */
            aload 1 /* node */
            invokedynamic rewire(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;Lorg/graalvm/compiler/nodes/GuardNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
                  org/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance.lambda$1(Lorg/graalvm/compiler/nodes/GuardNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z (7)
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tryProveGuardCondition:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
         1: .line 389
            ifne 3
         2: .line 390
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.GuardNode.isNegated:()Z
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewCondition:(Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/GuardingNode;)V
         3: .line 392
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.GuardNode node
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    4     1  node  Lorg/graalvm/compiler/nodes/GuardNode;
    MethodParameters:
      Name  Flags
      node  

  protected void processFixedGuard(org.graalvm.compiler.nodes.FixedGuardNode);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedGuardNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.FixedGuardNode node
         0: .line 395
            aload 0 /* this */
            aload 1 /* node */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 0 /* this */
            aload 1 /* node */
            invokedynamic rewire(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;Lorg/graalvm/compiler/nodes/FixedGuardNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
                  org/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance.lambda$2(Lorg/graalvm/compiler/nodes/FixedGuardNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z (7)
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tryProveGuardCondition:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
         1: .line 410
            ifne 3
         2: .line 411
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.isNegated:()Z
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewCondition:(Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/GuardingNode;)V
         3: .line 413
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.FixedGuardNode node
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    4     1  node  Lorg/graalvm/compiler/nodes/FixedGuardNode;
    MethodParameters:
      Name  Flags
      node  

  private void rebuildPiNodes(org.graalvm.compiler.nodes.DeoptimizingGuard);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=12, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard guard
         0: .line 416
            aload 1 /* guard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            astore 2 /* newCondition */
        start local 2 // org.graalvm.compiler.nodes.LogicNode newCondition
         1: .line 417
            aload 2 /* newCondition */
            instanceof org.graalvm.compiler.nodes.java.InstanceOfNode
            ifeq 31
         2: .line 418
            aload 2 /* newCondition */
            checkcast org.graalvm.compiler.nodes.java.InstanceOfNode
            astore 3 /* inst */
        start local 3 // org.graalvm.compiler.nodes.java.InstanceOfNode inst
         3: .line 419
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.skipPi:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 4 /* originalValue */
        start local 4 // org.graalvm.compiler.nodes.ValueNode originalValue
         4: .line 420
            aconst_null
            astore 5 /* pi */
        start local 5 // org.graalvm.compiler.nodes.PiNode pi
         5: .line 423
            aload 1 /* guard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            ldc Lorg/graalvm/compiler/nodes/PiNode;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 30
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.PiNode top java.util.Iterator
      StackMap stack:
         6: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 6 /* existing */
        start local 6 // org.graalvm.compiler.nodes.PiNode existing
         7: .line 424
            aload 6 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PiNode.isAlive:()Z
            ifne 9
         8: .line 425
            goto 30
         9: .line 427
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.PiNode org.graalvm.compiler.nodes.PiNode java.util.Iterator
      StackMap stack:
            aload 4 /* originalValue */
            aload 6 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PiNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.skipPi:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpeq 11
        10: .line 429
            goto 30
        11: .line 433
      StackMap locals:
      StackMap stack:
            aload 6 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PiNode.piStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getCheckedStamp:()Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.join:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getCheckedStamp:()Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 12
            iconst_0
            goto 13
      StackMap locals:
      StackMap stack:
        12: iconst_1
      StackMap locals:
      StackMap stack: int
        13: istore 8 /* strongerStamp */
        start local 8 // boolean strongerStamp
        14: .line 434
            aload 6 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PiNode.piStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getCheckedStamp:()Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 15
            iconst_0
            goto 16
      StackMap locals: int
      StackMap stack:
        15: iconst_1
      StackMap locals:
      StackMap stack: int
        16: istore 9 /* differentCheckedStamp */
        start local 9 // boolean differentCheckedStamp
        17: .line 435
            aload 6 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PiNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpeq 18
            iconst_1
            goto 19
      StackMap locals: int
      StackMap stack:
        18: iconst_0
      StackMap locals:
      StackMap stack: int
        19: istore 10 /* differentObject */
        start local 10 // boolean differentObject
        20: .line 436
            iload 8 /* strongerStamp */
            ifne 30
            iload 9 /* differentCheckedStamp */
            ifne 21
            iload 10 /* differentObject */
            ifeq 30
        21: .line 437
      StackMap locals: int
      StackMap stack:
            aload 5 /* pi */
            ifnonnull 23
        22: .line 438
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.PiNode
            dup
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getCheckedStamp:()Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            aload 1 /* guard */
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokespecial org.graalvm.compiler.nodes.PiNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 5 /* pi */
        23: .line 440
      StackMap locals:
      StackMap stack:
            aload 5 /* pi */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* existing */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.join:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 5 /* pi */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 29
        24: .line 448
            iload 9 /* differentCheckedStamp */
            ifeq 30
        25: .line 449
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.PiNode
            dup
            aload 6 /* existing */
            invokevirtual org.graalvm.compiler.nodes.PiNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 3 /* inst */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getCheckedStamp:()Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            aload 1 /* guard */
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokespecial org.graalvm.compiler.nodes.PiNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 11 /* alternatePi */
        start local 11 // org.graalvm.compiler.nodes.PiNode alternatePi
        26: .line 456
            aload 11 /* alternatePi */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* existing */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.join:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 11 /* alternatePi */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 30
        27: .line 457
            aload 6 /* existing */
            aload 11 /* alternatePi */
            invokevirtual org.graalvm.compiler.nodes.PiNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 11 // org.graalvm.compiler.nodes.PiNode alternatePi
        28: .line 460
            goto 30
        29: .line 462
      StackMap locals:
      StackMap stack:
            aload 6 /* existing */
            aload 5 /* pi */
            invokevirtual org.graalvm.compiler.nodes.PiNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 10 // boolean differentObject
        end local 9 // boolean differentCheckedStamp
        end local 8 // boolean strongerStamp
        end local 6 // org.graalvm.compiler.nodes.PiNode existing
        30: .line 423
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.PiNode top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 5 // org.graalvm.compiler.nodes.PiNode pi
        end local 4 // org.graalvm.compiler.nodes.ValueNode originalValue
        end local 3 // org.graalvm.compiler.nodes.java.InstanceOfNode inst
        31: .line 466
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.nodes.LogicNode newCondition
        end local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard guard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   32     0                   this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   32     1                  guard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            1   32     2           newCondition  Lorg/graalvm/compiler/nodes/LogicNode;
            3   31     3                   inst  Lorg/graalvm/compiler/nodes/java/InstanceOfNode;
            4   31     4          originalValue  Lorg/graalvm/compiler/nodes/ValueNode;
            5   31     5                     pi  Lorg/graalvm/compiler/nodes/PiNode;
            7   30     6               existing  Lorg/graalvm/compiler/nodes/PiNode;
           14   30     8          strongerStamp  Z
           17   30     9  differentCheckedStamp  Z
           20   30    10        differentObject  Z
           26   28    11            alternatePi  Lorg/graalvm/compiler/nodes/PiNode;
    MethodParameters:
       Name  Flags
      guard  

  protected void processIf(org.graalvm.compiler.nodes.IfNode);
    descriptor: (Lorg/graalvm/compiler/nodes/IfNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.IfNode node
         0: .line 469
            aload 0 /* this */
            aconst_null
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.IfNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 0 /* this */
            aload 1 /* node */
            invokedynamic rewire(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;Lorg/graalvm/compiler/nodes/IfNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
                  org/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance.lambda$3(Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z (7)
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tryProveGuardCondition:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
            pop
         1: .line 477
            return
        end local 1 // org.graalvm.compiler.nodes.IfNode node
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    2     1  node  Lorg/graalvm/compiler/nodes/IfNode;
    MethodParameters:
      Name  Flags
      node  

  public org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks enter(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$Marks;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block block
         0: .line 481
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.undoOperations:Lorg/graalvm/compiler/graph/NodeStack;
            invokevirtual org.graalvm.compiler.graph.NodeStack.size:()I
            istore 2 /* infoElementsMark */
        start local 2 // int infoElementsMark
         1: .line 482
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
            invokevirtual java.util.ArrayDeque.size:()I
            istore 3 /* conditionsMark */
        start local 3 // int conditionsMark
         2: .line 483
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "[Pre Processing block %s]"
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 485
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
            invokeinterface java.util.Deque.clear:()V
         4: .line 486
            aload 0 /* this */
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNodes:(Lorg/graalvm/compiler/nodes/cfg/Block;)V
         5: .line 487
            new org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks
            dup
            iload 2 /* infoElementsMark */
            iload 3 /* conditionsMark */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks.<init>:(II)V
            areturn
        end local 3 // int conditionsMark
        end local 2 // int infoElementsMark
        end local 1 // org.graalvm.compiler.nodes.cfg.Block block
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    6     1             block  Lorg/graalvm/compiler/nodes/cfg/Block;
            1    6     2  infoElementsMark  I
            2    6     3    conditionsMark  I
    MethodParameters:
       Name  Flags
      block  

  protected void processNodes(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block block
         0: .line 491
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.blockToNodes:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            ifnull 7
         1: .line 492
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.blockToNodes: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
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.cfg.Block 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 493
            aload 2 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifeq 5
         4: .line 494
            aload 0 /* this */
            aload 2 /* n */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNode:(Lorg/graalvm/compiler/graph/Node;)V
        end local 2 // org.graalvm.compiler.graph.Node n
         5: .line 492
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 497
            goto 8
         7: .line 498
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 0 /* this */
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processBlock:(Lorg/graalvm/compiler/nodes/cfg/Block;)V
         8: .line 500
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.cfg.Block block
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    9     1  block  Lorg/graalvm/compiler/nodes/cfg/Block;
            3    5     2      n  Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
       Name  Flags
      block  

  private void processBlock(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block block
         0: .line 503
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 2 /* n */
        start local 2 // org.graalvm.compiler.nodes.FixedNode n
         1: .line 504
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 3 /* endNode */
        start local 3 // org.graalvm.compiler.nodes.FixedNode endNode
         2: .line 505
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "[Processing block %s]"
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 506
            goto 9
         4: .line 507
      StackMap locals: org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 2 /* n */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.isDeleted:()Z
            ifne 5
            aload 3 /* endNode */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.isDeleted:()Z
            ifeq 6
         5: .line 509
      StackMap locals:
      StackMap stack:
            return
         6: .line 511
      StackMap locals:
      StackMap stack:
            aload 2 /* n */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 4 /* next */
        start local 4 // org.graalvm.compiler.nodes.FixedNode next
         7: .line 512
            aload 0 /* this */
            aload 2 /* n */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNode:(Lorg/graalvm/compiler/graph/Node;)V
         8: .line 513
            aload 4 /* next */
            astore 2 /* n */
        end local 4 // org.graalvm.compiler.nodes.FixedNode next
         9: .line 506
      StackMap locals:
      StackMap stack:
            aload 2 /* n */
            aload 3 /* endNode */
            if_acmpne 4
        10: .line 515
            aload 3 /* endNode */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.isAlive:()Z
            ifeq 12
        11: .line 516
            aload 0 /* this */
            aload 3 /* endNode */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNode:(Lorg/graalvm/compiler/graph/Node;)V
        12: .line 518
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.FixedNode endNode
        end local 2 // org.graalvm.compiler.nodes.FixedNode n
        end local 1 // org.graalvm.compiler.nodes.cfg.Block block
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   13     1    block  Lorg/graalvm/compiler/nodes/cfg/Block;
            1   13     2        n  Lorg/graalvm/compiler/nodes/FixedNode;
            2   13     3  endNode  Lorg/graalvm/compiler/nodes/FixedNode;
            7    9     4     next  Lorg/graalvm/compiler/nodes/FixedNode;
    MethodParameters:
       Name  Flags
      block  

  protected void processNode(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.graph.Node node
         0: .line 522
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.withNodeSourcePosition:()Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 4 /* closeable */
        start local 4 // org.graalvm.compiler.debug.DebugCloseable closeable
         2: .line 523
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.spi.NodeWithState
            ifeq 4
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.extended.GuardingNode
            ifne 4
         3: .line 524
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
            invokeinterface java.util.Deque.clear:()V
         4: .line 527
      StackMap locals: java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.MergeNode
            ifeq 6
         5: .line 528
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.MergeNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.introducePisForPhis:(Lorg/graalvm/compiler/nodes/MergeNode;)V
         6: .line 531
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.AbstractBeginNode
            ifeq 12
         7: .line 532
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.LoopExitNode
            ifeq 10
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasValueProxies:()Z
            ifeq 10
         8: .line 548
            aload 4 /* closeable */
            ifnull 9
            aload 4 /* closeable */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
         9: .line 534
      StackMap locals:
      StackMap stack:
            return
        10: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.AbstractBeginNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processAbstractBegin:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)V
        11: .line 537
            goto 26
      StackMap locals:
      StackMap stack:
        12: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.FixedGuardNode
            ifeq 15
        13: .line 538
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.FixedGuardNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processFixedGuard:(Lorg/graalvm/compiler/nodes/FixedGuardNode;)V
        14: .line 539
            goto 26
      StackMap locals:
      StackMap stack:
        15: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.GuardNode
            ifeq 18
        16: .line 540
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.GuardNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processGuard:(Lorg/graalvm/compiler/nodes/GuardNode;)V
        17: .line 541
            goto 26
      StackMap locals:
      StackMap stack:
        18: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.ConditionAnchorNode
            ifeq 21
        19: .line 542
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.ConditionAnchorNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processConditionAnchor:(Lorg/graalvm/compiler/nodes/ConditionAnchorNode;)V
        20: .line 543
            goto 26
      StackMap locals:
      StackMap stack:
        21: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.IfNode
            ifeq 24
        22: .line 544
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.IfNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processIf:(Lorg/graalvm/compiler/nodes/IfNode;)V
        23: .line 545
            goto 26
      StackMap locals:
      StackMap stack:
        24: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.EndNode
            ifeq 26
        25: .line 546
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.EndNode
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processEnd:(Lorg/graalvm/compiler/nodes/EndNode;)V
        26: .line 548
      StackMap locals:
      StackMap stack:
            aload 4 /* closeable */
            ifnull 32
            aload 4 /* closeable */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 32
      StackMap locals:
      StackMap stack: java.lang.Throwable
        27: astore 2
            aload 4 /* closeable */
            ifnull 28
            aload 4 /* closeable */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 4 // org.graalvm.compiler.debug.DebugCloseable closeable
      StackMap locals:
      StackMap stack:
        28: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        29: astore 3
            aload 2
            ifnonnull 30
            aload 3
            astore 2
            goto 31
      StackMap locals:
      StackMap stack:
        30: aload 2
            aload 3
            if_acmpeq 31
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        31: aload 2
            athrow
        32: .line 549
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.graph.Node node
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   33     0       this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   33     1       node  Lorg/graalvm/compiler/graph/Node;
            2   28     4  closeable  Lorg/graalvm/compiler/debug/DebugCloseable;
      Exception table:
        from    to  target  type
           2     8      27  any
          10    26      27  any
           1     9      29  any
          10    29      29  any
    MethodParameters:
      Name  Flags
      node  

  protected void introducePisForPhis(org.graalvm.compiler.nodes.MergeNode);
    descriptor: (Lorg/graalvm/compiler/nodes/MergeNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=15, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.MergeNode merge
         0: .line 552
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* merge */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.collections.EconomicMap
            astore 2 /* mergeMap */
        start local 2 // org.graalvm.collections.EconomicMap mergeMap
         1: .line 553
            aload 2 /* mergeMap */
            ifnull 73
         2: .line 554
            aload 2 /* mergeMap */
            invokeinterface org.graalvm.collections.EconomicMap.getEntries:()Lorg/graalvm/collections/MapCursor;
            astore 3 /* entries */
        start local 3 // org.graalvm.collections.MapCursor entries
         3: .line 555
            goto 72
         4: .line 556
      StackMap locals: org.graalvm.collections.EconomicMap org.graalvm.collections.MapCursor
      StackMap stack:
            aload 3 /* entries */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValuePhiNode
            astore 4 /* phi */
        start local 4 // org.graalvm.compiler.nodes.ValuePhiNode phi
         5: .line 557
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 6
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.isAlive:()Z
            ifne 6
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.isDeleted:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 562
      StackMap locals: org.graalvm.compiler.nodes.ValuePhiNode
      StackMap stack:
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.isDeleted:()Z
            ifeq 8
         7: .line 563
            goto 72
         8: .line 565
      StackMap locals:
      StackMap stack:
            aload 3 /* entries */
            invokeinterface org.graalvm.collections.MapCursor.getValue:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement
            astore 5 /* phiInfoElements */
        start local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement phiInfoElements
         9: .line 566
            aconst_null
            astore 6 /* bestPossibleStamp */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp bestPossibleStamp
        10: .line 567
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        11: goto 22
        12: .line 568
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement org.graalvm.compiler.core.common.type.Stamp int
      StackMap stack:
            aload 4 /* phi */
            iload 7 /* i */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 8 /* valueAt */
        start local 8 // org.graalvm.compiler.nodes.ValueNode valueAt
        13: .line 569
            aload 8 /* valueAt */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 9 /* curBestStamp */
        start local 9 // org.graalvm.compiler.core.common.type.Stamp curBestStamp
        14: .line 570
            aload 5 /* phiInfoElements */
            aload 1 /* merge */
            iload 7 /* i */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.forwardEndAt:(I)Lorg/graalvm/compiler/nodes/EndNode;
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement.get:(Lorg/graalvm/compiler/nodes/EndNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            astore 10 /* infoElement */
        start local 10 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
        15: .line 571
            aload 10 /* infoElement */
            ifnull 17
        16: .line 572
            aload 9 /* curBestStamp */
            aload 10 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.join:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 9 /* curBestStamp */
        17: .line 575
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
      StackMap stack:
            aload 6 /* bestPossibleStamp */
            ifnonnull 20
        18: .line 576
            aload 9 /* curBestStamp */
            astore 6 /* bestPossibleStamp */
        19: .line 577
            goto 21
        20: .line 578
      StackMap locals:
      StackMap stack:
            aload 6 /* bestPossibleStamp */
            aload 9 /* curBestStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.meet:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 6 /* bestPossibleStamp */
        end local 10 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
        end local 9 // org.graalvm.compiler.core.common.type.Stamp curBestStamp
        end local 8 // org.graalvm.compiler.nodes.ValueNode valueAt
        21: .line 567
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 7 /* i */
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.valueCount:()I
            if_icmplt 12
        end local 7 // int i
        23: .line 582
            aload 4 /* phi */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 7 /* oldStamp */
        start local 7 // org.graalvm.compiler.core.common.type.Stamp oldStamp
        24: .line 583
            aload 7 /* oldStamp */
            aload 6 /* bestPossibleStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.tryImproveWith:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            ifnull 72
        25: .line 587
            iconst_0
            istore 8 /* allow */
        start local 8 // boolean allow
        26: .line 588
            aload 6 /* bestPossibleStamp */
            instanceof org.graalvm.compiler.core.common.type.ObjectStamp
            ifeq 29
        27: .line 590
            iconst_1
            istore 8 /* allow */
        28: .line 591
            goto 54
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.MergeNode org.graalvm.collections.EconomicMap org.graalvm.collections.MapCursor org.graalvm.compiler.nodes.ValuePhiNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.core.common.type.Stamp int
      StackMap stack:
        29: aload 6 /* bestPossibleStamp */
            instanceof org.graalvm.compiler.core.common.type.IntegerStamp
            ifeq 50
        30: .line 592
            aload 6 /* bestPossibleStamp */
            checkcast org.graalvm.compiler.core.common.type.IntegerStamp
            astore 9 /* integerStamp */
        start local 9 // org.graalvm.compiler.core.common.type.IntegerStamp integerStamp
        31: .line 593
            aload 7 /* oldStamp */
            checkcast org.graalvm.compiler.core.common.type.IntegerStamp
            astore 10 /* oldIntegerStamp */
        start local 10 // org.graalvm.compiler.core.common.type.IntegerStamp oldIntegerStamp
        32: .line 594
            aload 9 /* integerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isPositive:()Z
            aload 10 /* oldIntegerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isPositive:()Z
            if_icmpeq 35
        33: .line 595
            iconst_1
            istore 8 /* allow */
        34: .line 596
            goto 54
      StackMap locals: org.graalvm.compiler.core.common.type.IntegerStamp org.graalvm.compiler.core.common.type.IntegerStamp
      StackMap stack:
        35: aload 9 /* integerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isNegative:()Z
            aload 10 /* oldIntegerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isNegative:()Z
            if_icmpeq 38
        36: .line 597
            iconst_1
            istore 8 /* allow */
        37: .line 598
            goto 54
      StackMap locals:
      StackMap stack:
        38: aload 9 /* integerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isStrictlyPositive:()Z
            aload 10 /* oldIntegerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isStrictlyPositive:()Z
            if_icmpeq 41
        39: .line 599
            iconst_1
            istore 8 /* allow */
        40: .line 600
            goto 54
      StackMap locals:
      StackMap stack:
        41: aload 9 /* integerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isStrictlyNegative:()Z
            aload 10 /* oldIntegerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.isStrictlyNegative:()Z
            if_icmpeq 44
        42: .line 601
            iconst_1
            istore 8 /* allow */
        43: .line 602
            goto 54
      StackMap locals:
      StackMap stack:
        44: aload 9 /* integerStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.asConstant:()Ljdk/vm/ci/meta/JavaConstant;
            ifnull 47
        45: .line 603
            iconst_1
            istore 8 /* allow */
        46: .line 604
            goto 54
      StackMap locals:
      StackMap stack:
        47: aload 7 /* oldStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.isUnrestricted:()Z
            ifeq 54
        48: .line 605
            iconst_1
            istore 8 /* allow */
        end local 10 // org.graalvm.compiler.core.common.type.IntegerStamp oldIntegerStamp
        end local 9 // org.graalvm.compiler.core.common.type.IntegerStamp integerStamp
        49: .line 607
            goto 54
        50: .line 609
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 51
            aload 6 /* bestPossibleStamp */
            ifnonnull 51
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        51: .line 610
      StackMap locals:
      StackMap stack:
            aload 6 /* bestPossibleStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.asConstant:()Ljdk/vm/ci/meta/Constant;
            ifnull 52
            iconst_1
            goto 53
      StackMap locals:
      StackMap stack:
        52: iconst_0
      StackMap locals:
      StackMap stack: int
        53: istore 8 /* allow */
        54: .line 613
      StackMap locals:
      StackMap stack:
            iload 8 /* allow */
            ifeq 72
        55: .line 614
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.ValuePhiNode
            dup
            aload 6 /* bestPossibleStamp */
            aload 1 /* merge */
            invokespecial org.graalvm.compiler.nodes.ValuePhiNode.<init>:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/AbstractMergeNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addWithoutUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValuePhiNode
            astore 9 /* newPhi */
        start local 9 // org.graalvm.compiler.nodes.ValuePhiNode newPhi
        56: .line 615
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        57: goto 69
        58: .line 616
      StackMap locals: org.graalvm.compiler.nodes.ValuePhiNode int
      StackMap stack:
            aload 4 /* phi */
            iload 10 /* i */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 11 /* valueAt */
        start local 11 // org.graalvm.compiler.nodes.ValueNode valueAt
        59: .line 617
            aload 6 /* bestPossibleStamp */
            aload 11 /* valueAt */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.meet:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* bestPossibleStamp */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 67
        60: .line 620
            aload 5 /* phiInfoElements */
            aload 1 /* merge */
            iload 10 /* i */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.forwardEndAt:(I)Lorg/graalvm/compiler/nodes/EndNode;
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement.get:(Lorg/graalvm/compiler/nodes/EndNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            astore 12 /* infoElement */
        start local 12 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
        61: .line 621
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 62
            aload 12 /* infoElement */
            ifnonnull 62
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        62: .line 622
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
      StackMap stack:
            aload 12 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 13 /* curBestStamp */
        start local 13 // org.graalvm.compiler.core.common.type.Stamp curBestStamp
        63: .line 623
            aload 12 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 14 /* input */
        start local 14 // org.graalvm.compiler.nodes.ValueNode input
        64: .line 624
            aload 14 /* input */
            ifnonnull 66
        65: .line 625
            aload 11 /* valueAt */
            astore 14 /* input */
        66: .line 627
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 14 /* input */
            aload 13 /* curBestStamp */
            aload 12 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokestatic org.graalvm.compiler.nodes.PiNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.maybeAddOrUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            astore 11 /* valueAt */
        end local 14 // org.graalvm.compiler.nodes.ValueNode input
        end local 13 // org.graalvm.compiler.core.common.type.Stamp curBestStamp
        end local 12 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
        67: .line 629
      StackMap locals:
      StackMap stack:
            aload 9 /* newPhi */
            aload 11 /* valueAt */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.addInput:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        end local 11 // org.graalvm.compiler.nodes.ValueNode valueAt
        68: .line 615
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        69: iload 10 /* i */
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.valueCount:()I
            if_icmplt 58
        end local 10 // int i
        70: .line 631
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase.counterPhiStampsImproved:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        71: .line 632
            aload 4 /* phi */
            aload 9 /* newPhi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 9 // org.graalvm.compiler.nodes.ValuePhiNode newPhi
        end local 8 // boolean allow
        end local 7 // org.graalvm.compiler.core.common.type.Stamp oldStamp
        end local 6 // org.graalvm.compiler.core.common.type.Stamp bestPossibleStamp
        end local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement phiInfoElements
        end local 4 // org.graalvm.compiler.nodes.ValuePhiNode phi
        72: .line 555
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.MergeNode org.graalvm.collections.EconomicMap org.graalvm.collections.MapCursor
      StackMap stack:
            aload 3 /* entries */
            invokeinterface org.graalvm.collections.MapCursor.advance:()Z
            ifne 4
        end local 3 // org.graalvm.collections.MapCursor entries
        73: .line 637
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.graalvm.collections.EconomicMap mergeMap
        end local 1 // org.graalvm.compiler.nodes.MergeNode merge
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   74     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   74     1              merge  Lorg/graalvm/compiler/nodes/MergeNode;
            1   74     2           mergeMap  Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;>;
            3   73     3            entries  Lorg/graalvm/collections/MapCursor<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;>;
            5   72     4                phi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
            9   72     5    phiInfoElements  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;
           10   72     6  bestPossibleStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           11   23     7                  i  I
           13   21     8            valueAt  Lorg/graalvm/compiler/nodes/ValueNode;
           14   21     9       curBestStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           15   21    10        infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
           24   72     7           oldStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           26   72     8              allow  Z
           31   49     9       integerStamp  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
           32   49    10    oldIntegerStamp  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
           56   72     9             newPhi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
           57   70    10                  i  I
           59   68    11            valueAt  Lorg/graalvm/compiler/nodes/ValueNode;
           61   67    12        infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
           63   67    13       curBestStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           64   67    14              input  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
       Name  Flags
      merge  

  protected void processEnd(org.graalvm.compiler.nodes.EndNode);
    descriptor: (Lorg/graalvm/compiler/nodes/EndNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=11, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.EndNode end
         0: .line 640
            aload 1 /* end */
            invokevirtual org.graalvm.compiler.nodes.EndNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            astore 2 /* abstractMerge */
        start local 2 // org.graalvm.compiler.nodes.AbstractMergeNode abstractMerge
         1: .line 641
            aload 2 /* abstractMerge */
            instanceof org.graalvm.compiler.nodes.MergeNode
            ifeq 23
         2: .line 642
            aload 2 /* abstractMerge */
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 3 /* merge */
        start local 3 // org.graalvm.compiler.nodes.MergeNode merge
         3: .line 644
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Lorg/graalvm/collections/EconomicMap;
            aload 3 /* merge */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.collections.EconomicMap
            astore 4 /* mergeMap */
        start local 4 // org.graalvm.collections.EconomicMap mergeMap
         4: .line 645
            aload 3 /* merge */
            invokevirtual org.graalvm.compiler.nodes.MergeNode.valuePhis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 22
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.MergeNode org.graalvm.collections.EconomicMap top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValuePhiNode
            astore 5 /* phi */
        start local 5 // org.graalvm.compiler.nodes.ValuePhiNode phi
         6: .line 646
            aload 5 /* phi */
            aload 1 /* end */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.valueAt:(Lorg/graalvm/compiler/nodes/AbstractEndNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 7 /* valueAt */
        start local 7 // org.graalvm.compiler.nodes.ValueNode valueAt
         7: .line 647
            aload 0 /* this */
            aload 7 /* valueAt */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            astore 8 /* infoElement */
        start local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
         8: .line 648
            goto 21
         9: .line 649
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.MergeNode org.graalvm.collections.EconomicMap org.graalvm.compiler.nodes.ValuePhiNode java.util.Iterator org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
      StackMap stack:
            aload 8 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 9 /* newStamp */
        start local 9 // org.graalvm.compiler.core.common.type.Stamp newStamp
        10: .line 650
            aload 5 /* phi */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 9 /* newStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.tryImproveWith:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            ifnull 20
        11: .line 651
            aload 4 /* mergeMap */
            ifnonnull 14
        12: .line 652
            getstatic org.graalvm.collections.Equivalence.IDENTITY:Lorg/graalvm/collections/Equivalence;
            invokestatic org.graalvm.collections.EconomicMap.create:(Lorg/graalvm/collections/Equivalence;)Lorg/graalvm/collections/EconomicMap;
            astore 4 /* mergeMap */
        13: .line 653
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Lorg/graalvm/collections/EconomicMap;
            aload 3 /* merge */
            aload 4 /* mergeMap */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 656
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp
      StackMap stack:
            aload 4 /* mergeMap */
            aload 5 /* phi */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement
            astore 10 /* phiInfoElement */
        start local 10 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement phiInfoElement
        15: .line 657
            aload 10 /* phiInfoElement */
            ifnonnull 18
        16: .line 658
            new org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement
            dup
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement.<init>:()V
            astore 10 /* phiInfoElement */
        17: .line 659
            aload 4 /* mergeMap */
            aload 5 /* phi */
            aload 10 /* phiInfoElement */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 662
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement
      StackMap stack:
            aload 10 /* phiInfoElement */
            aload 1 /* end */
            aload 8 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement.set:(Lorg/graalvm/compiler/nodes/EndNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;)V
        19: .line 663
            goto 22
        end local 10 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement phiInfoElement
        20: .line 665
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            astore 8 /* infoElement */
        end local 9 // org.graalvm.compiler.core.common.type.Stamp newStamp
        21: .line 648
      StackMap locals:
      StackMap stack:
            aload 8 /* infoElement */
            ifnonnull 9
        end local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
        end local 7 // org.graalvm.compiler.nodes.ValueNode valueAt
        end local 5 // org.graalvm.compiler.nodes.ValuePhiNode phi
        22: .line 645
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.MergeNode org.graalvm.collections.EconomicMap top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // org.graalvm.collections.EconomicMap mergeMap
        end local 3 // org.graalvm.compiler.nodes.MergeNode merge
        23: .line 669
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.AbstractMergeNode
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.nodes.AbstractMergeNode abstractMerge
        end local 1 // org.graalvm.compiler.nodes.EndNode end
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   24     0            this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   24     1             end  Lorg/graalvm/compiler/nodes/EndNode;
            1   24     2   abstractMerge  Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            3   23     3           merge  Lorg/graalvm/compiler/nodes/MergeNode;
            4   23     4        mergeMap  Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;>;
            6   22     5             phi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
            7   22     7         valueAt  Lorg/graalvm/compiler/nodes/ValueNode;
            8   22     8     infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
           10   21     9        newStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           15   20    10  phiInfoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;
    MethodParameters:
      Name  Flags
      end   

  protected void registerNewCondition(org.graalvm.compiler.nodes.LogicNode, boolean, org.graalvm.compiler.nodes.extended.GuardingNode);
    descriptor: (Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/GuardingNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.LogicNode condition
        start local 2 // boolean negated
        start local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
         0: .line 672
            aload 1 /* condition */
            instanceof org.graalvm.compiler.nodes.UnaryOpLogicNode
            ifeq 7
         1: .line 673
            aload 1 /* condition */
            checkcast org.graalvm.compiler.nodes.UnaryOpLogicNode
            astore 4 /* unaryLogicNode */
        start local 4 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
         2: .line 674
            aload 4 /* unaryLogicNode */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* value */
        start local 5 // org.graalvm.compiler.nodes.ValueNode value
         3: .line 675
            aload 5 /* value */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 25
         4: .line 678
            aload 4 /* unaryLogicNode */
            iload 2 /* negated */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.getSucceedingStampForValue:(Z)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 6 /* newStamp */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp newStamp
         5: .line 679
            aload 0 /* this */
            aload 5 /* value */
            aload 6 /* newStamp */
            aload 3 /* guard */
            iconst_1
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Z)V
        end local 6 // org.graalvm.compiler.core.common.type.Stamp newStamp
        end local 5 // org.graalvm.compiler.nodes.ValueNode value
        end local 4 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
         6: .line 681
            goto 25
      StackMap locals:
      StackMap stack:
         7: aload 1 /* condition */
            instanceof org.graalvm.compiler.nodes.BinaryOpLogicNode
            ifeq 25
         8: .line 682
            aload 1 /* condition */
            checkcast org.graalvm.compiler.nodes.BinaryOpLogicNode
            astore 4 /* binaryOpLogicNode */
        start local 4 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
         9: .line 683
            aload 4 /* binaryOpLogicNode */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* x */
        start local 5 // org.graalvm.compiler.nodes.ValueNode x
        10: .line 684
            aload 4 /* binaryOpLogicNode */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* y */
        start local 6 // org.graalvm.compiler.nodes.ValueNode y
        11: .line 685
            aload 5 /* x */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 14
            aload 5 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 14
        12: .line 686
            aload 4 /* binaryOpLogicNode */
            iload 2 /* negated */
            aload 5 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getSucceedingStampForX:(ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 7 /* newStampX */
        start local 7 // org.graalvm.compiler.core.common.type.Stamp newStampX
        13: .line 687
            aload 0 /* this */
            aload 5 /* x */
            aload 7 /* newStampX */
            aload 3 /* guard */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        end local 7 // org.graalvm.compiler.core.common.type.Stamp newStampX
        14: .line 690
      StackMap locals: org.graalvm.compiler.nodes.BinaryOpLogicNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 6 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 17
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 17
        15: .line 691
            aload 4 /* binaryOpLogicNode */
            iload 2 /* negated */
            aload 5 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getSucceedingStampForY:(ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 7 /* newStampY */
        start local 7 // org.graalvm.compiler.core.common.type.Stamp newStampY
        16: .line 692
            aload 0 /* this */
            aload 6 /* y */
            aload 7 /* newStampY */
            aload 3 /* guard */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        end local 7 // org.graalvm.compiler.core.common.type.Stamp newStampY
        17: .line 695
      StackMap locals:
      StackMap stack:
            aload 1 /* condition */
            instanceof org.graalvm.compiler.nodes.calc.IntegerEqualsNode
            ifeq 25
            aload 3 /* guard */
            instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
            ifeq 25
            iload 2 /* negated */
            ifne 25
        18: .line 696
            aload 6 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 25
            aload 5 /* x */
            instanceof org.graalvm.compiler.nodes.calc.AndNode
            ifeq 25
        19: .line 697
            aload 5 /* x */
            checkcast org.graalvm.compiler.nodes.calc.AndNode
            astore 7 /* and */
        start local 7 // org.graalvm.compiler.nodes.calc.AndNode and
        20: .line 698
            aload 7 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 8 /* andX */
        start local 8 // org.graalvm.compiler.nodes.ValueNode andX
        21: .line 699
            aload 7 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* y */
            if_acmpne 25
            aload 8 /* andX */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 25
        22: .line 705
            aload 5 /* x */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokestatic org.graalvm.compiler.core.common.type.ArithmeticOpTable.forStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable;
            invokevirtual org.graalvm.compiler.core.common.type.ArithmeticOpTable.getOr:()Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp;
            astore 9 /* op */
        start local 9 // org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp op
        23: .line 706
            aload 9 /* op */
            aload 8 /* andX */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp.foldStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            checkcast org.graalvm.compiler.core.common.type.IntegerStamp
            astore 10 /* newStampX */
        start local 10 // org.graalvm.compiler.core.common.type.IntegerStamp newStampX
        24: .line 707
            aload 0 /* this */
            aload 8 /* andX */
            aload 10 /* newStampX */
            aload 3 /* guard */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        end local 10 // org.graalvm.compiler.core.common.type.IntegerStamp newStampX
        end local 9 // org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp op
        end local 8 // org.graalvm.compiler.nodes.ValueNode andX
        end local 7 // org.graalvm.compiler.nodes.calc.AndNode and
        end local 6 // org.graalvm.compiler.nodes.ValueNode y
        end local 5 // org.graalvm.compiler.nodes.ValueNode x
        end local 4 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
        25: .line 712
      StackMap locals:
      StackMap stack:
            aload 3 /* guard */
            instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
            ifeq 28
        26: .line 713
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 27
            aload 3 /* guard */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 1 /* condition */
            if_acmpeq 27
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        27: .line 714
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
            aload 3 /* guard */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
        28: .line 716
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* condition */
            iload 2 /* negated */
            aload 3 /* guard */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerCondition:(Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        29: .line 717
            return
        end local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 2 // boolean negated
        end local 1 // org.graalvm.compiler.nodes.LogicNode condition
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   30     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   30     1          condition  Lorg/graalvm/compiler/nodes/LogicNode;
            0   30     2            negated  Z
            0   30     3              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            2    6     4     unaryLogicNode  Lorg/graalvm/compiler/nodes/UnaryOpLogicNode;
            3    6     5              value  Lorg/graalvm/compiler/nodes/ValueNode;
            5    6     6           newStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            9   25     4  binaryOpLogicNode  Lorg/graalvm/compiler/nodes/BinaryOpLogicNode;
           10   25     5                  x  Lorg/graalvm/compiler/nodes/ValueNode;
           11   25     6                  y  Lorg/graalvm/compiler/nodes/ValueNode;
           13   14     7          newStampX  Lorg/graalvm/compiler/core/common/type/Stamp;
           16   17     7          newStampY  Lorg/graalvm/compiler/core/common/type/Stamp;
           20   25     7                and  Lorg/graalvm/compiler/nodes/calc/AndNode;
           21   25     8               andX  Lorg/graalvm/compiler/nodes/ValueNode;
           23   25     9                 op  Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp<Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp$Or;>;
           24   25    10          newStampX  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    MethodParameters:
           Name  Flags
      condition  
      negated    
      guard      

  org.graalvm.collections.Pair<org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement, org.graalvm.compiler.core.common.type.Stamp> recursiveFoldStampFromInfo(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/collections/Pair;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.graph.Node node
         0: .line 729
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.infoElementProvider:Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElementProvider;
            aload 1 /* node */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.recursiveFoldStamp:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElementProvider;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/collections/Pair;
            areturn
        end local 1 // org.graalvm.compiler.graph.Node node
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    1     1  node  Lorg/graalvm/compiler/graph/Node;
    Signature: (Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/collections/Pair<Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;Lorg/graalvm/compiler/core/common/type/Stamp;>;
    MethodParameters:
      Name  Flags
      node  

  protected boolean foldPendingTest(org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=14, args_size=5
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard thisGuard
        start local 2 // org.graalvm.compiler.nodes.ValueNode original
        start local 3 // org.graalvm.compiler.core.common.type.Stamp newStamp
        start local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewireGuardFunction
         0: .line 750
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
            invokeinterface java.util.Deque.iterator:()Ljava/util/Iterator;
            astore 6
            goto 27
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer top java.util.Iterator
      StackMap stack:
         1: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            astore 5 /* pendingGuard */
        start local 5 // org.graalvm.compiler.nodes.DeoptimizingGuard pendingGuard
         2: .line 751
            aload 5 /* pendingGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            astore 7 /* pendingCondition */
        start local 7 // org.graalvm.compiler.nodes.LogicNode pendingCondition
         3: .line 752
            getstatic jdk.vm.ci.meta.TriState.UNKNOWN:Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        start local 8 // jdk.vm.ci.meta.TriState result
         4: .line 753
            aload 7 /* pendingCondition */
            instanceof org.graalvm.compiler.nodes.UnaryOpLogicNode
            ifeq 9
         5: .line 754
            aload 7 /* pendingCondition */
            checkcast org.graalvm.compiler.nodes.UnaryOpLogicNode
            astore 9 /* unaryLogicNode */
        start local 9 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
         6: .line 755
            aload 9 /* unaryLogicNode */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* original */
            if_acmpne 24
         7: .line 756
            aload 9 /* unaryLogicNode */
            aload 3 /* newStamp */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        end local 9 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
         8: .line 758
            goto 24
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer org.graalvm.compiler.nodes.DeoptimizingGuard java.util.Iterator org.graalvm.compiler.nodes.LogicNode jdk.vm.ci.meta.TriState
      StackMap stack:
         9: aload 7 /* pendingCondition */
            instanceof org.graalvm.compiler.nodes.BinaryOpLogicNode
            ifeq 24
        10: .line 759
            aload 7 /* pendingCondition */
            checkcast org.graalvm.compiler.nodes.BinaryOpLogicNode
            astore 9 /* binaryOpLogicNode */
        start local 9 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
        11: .line 760
            aload 9 /* binaryOpLogicNode */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* x */
        start local 10 // org.graalvm.compiler.nodes.ValueNode x
        12: .line 761
            aload 9 /* binaryOpLogicNode */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 11 /* y */
        start local 11 // org.graalvm.compiler.nodes.ValueNode y
        13: .line 762
            aload 10 /* x */
            aload 2 /* original */
            if_acmpne 16
        14: .line 763
            aload 9 /* binaryOpLogicNode */
            aload 3 /* newStamp */
            aload 11 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        15: .line 764
            goto 24
      StackMap locals: org.graalvm.compiler.nodes.BinaryOpLogicNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
        16: aload 11 /* y */
            aload 2 /* original */
            if_acmpne 19
        17: .line 765
            aload 9 /* binaryOpLogicNode */
            aload 10 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* newStamp */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        18: .line 766
            goto 24
      StackMap locals:
      StackMap stack:
        19: aload 9 /* binaryOpLogicNode */
            instanceof org.graalvm.compiler.nodes.calc.IntegerEqualsNode
            ifeq 24
            aload 11 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 24
            aload 10 /* x */
            instanceof org.graalvm.compiler.nodes.calc.AndNode
            ifeq 24
        20: .line 767
            aload 10 /* x */
            checkcast org.graalvm.compiler.nodes.calc.AndNode
            astore 12 /* and */
        start local 12 // org.graalvm.compiler.nodes.calc.AndNode and
        21: .line 768
            aload 12 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 11 /* y */
            if_acmpne 24
            aload 12 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* original */
            if_acmpne 24
        22: .line 769
            aload 3 /* newStamp */
            invokestatic org.graalvm.compiler.core.common.type.ArithmeticOpTable.forStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable;
            invokevirtual org.graalvm.compiler.core.common.type.ArithmeticOpTable.getAnd:()Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp;
            astore 13 /* andOp */
        start local 13 // org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp andOp
        23: .line 770
            aload 9 /* binaryOpLogicNode */
            aload 13 /* andOp */
            aload 3 /* newStamp */
            aload 11 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp.foldStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 11 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        end local 13 // org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp andOp
        end local 12 // org.graalvm.compiler.nodes.calc.AndNode and
        end local 11 // org.graalvm.compiler.nodes.ValueNode y
        end local 10 // org.graalvm.compiler.nodes.ValueNode x
        end local 9 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
        24: .line 774
      StackMap locals:
      StackMap stack:
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 27
        25: .line 779
            aload 0 /* this */
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 5 /* pendingGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* original */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.canScheduleAbove:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 27
            aload 0 /* this */
            aload 1 /* thisGuard */
            aload 5 /* pendingGuard */
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 3 /* newStamp */
            aload 4 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.foldGuard:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
            ifeq 27
        26: .line 780
            iconst_1
            ireturn
        end local 8 // jdk.vm.ci.meta.TriState result
        end local 7 // org.graalvm.compiler.nodes.LogicNode pendingCondition
        end local 5 // org.graalvm.compiler.nodes.DeoptimizingGuard pendingGuard
        27: .line 750
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        28: .line 784
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewireGuardFunction
        end local 3 // org.graalvm.compiler.core.common.type.Stamp newStamp
        end local 2 // org.graalvm.compiler.nodes.ValueNode original
        end local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard thisGuard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   29     0                 this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   29     1            thisGuard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            0   29     2             original  Lorg/graalvm/compiler/nodes/ValueNode;
            0   29     3             newStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   29     4  rewireGuardFunction  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
            2   27     5         pendingGuard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            3   27     7     pendingCondition  Lorg/graalvm/compiler/nodes/LogicNode;
            4   27     8               result  Ljdk/vm/ci/meta/TriState;
            6    8     9       unaryLogicNode  Lorg/graalvm/compiler/nodes/UnaryOpLogicNode;
           11   24     9    binaryOpLogicNode  Lorg/graalvm/compiler/nodes/BinaryOpLogicNode;
           12   24    10                    x  Lorg/graalvm/compiler/nodes/ValueNode;
           13   24    11                    y  Lorg/graalvm/compiler/nodes/ValueNode;
           21   24    12                  and  Lorg/graalvm/compiler/nodes/calc/AndNode;
           23   24    13                andOp  Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp<Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp$And;>;
    MethodParameters:
                     Name  Flags
      thisGuard            
      original             
      newStamp             
      rewireGuardFunction  

  private boolean canScheduleAbove(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.graph.Node n
        start local 2 // org.graalvm.compiler.graph.Node target
        start local 3 // org.graalvm.compiler.nodes.ValueNode knownToBeAbove
         0: .line 788
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nodeToBlock:Lorg/graalvm/compiler/graph/NodeMap;
            aload 2 /* target */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 4 /* targetBlock */
        start local 4 // org.graalvm.compiler.nodes.cfg.Block targetBlock
         1: .line 789
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nodeToBlock:Lorg/graalvm/compiler/graph/NodeMap;
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            astore 5 /* testBlock */
        start local 5 // org.graalvm.compiler.nodes.cfg.Block testBlock
         2: .line 790
            aload 4 /* targetBlock */
            ifnull 14
            aload 5 /* testBlock */
            ifnull 14
         3: .line 791
            aload 4 /* targetBlock */
            aload 5 /* testBlock */
            if_acmpne 12
         4: .line 792
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.blockToNodes:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 4 /* targetBlock */
            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 7
            goto 10
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
      StackMap stack:
         5: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 6 /* fixed */
        start local 6 // org.graalvm.compiler.graph.Node fixed
         6: .line 793
            aload 6 /* fixed */
            aload 1 /* n */
            if_acmpne 8
         7: .line 794
            iconst_1
            ireturn
         8: .line 795
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            aload 6 /* fixed */
            aload 2 /* target */
            if_acmpne 10
         9: .line 796
            goto 14
        end local 6 // org.graalvm.compiler.graph.Node fixed
        10: .line 792
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        11: .line 799
            goto 14
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
        12: aload 5 /* testBlock */
            aload 4 /* targetBlock */
            invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.dominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifeq 14
        13: .line 800
            iconst_1
            ireturn
        14: .line 803
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InputFilter
            dup
            aload 3 /* knownToBeAbove */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InputFilter.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;)V
            astore 6 /* v */
        start local 6 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InputFilter v
        15: .line 804
            aload 1 /* n */
            aload 6 /* v */
            invokevirtual org.graalvm.compiler.graph.Node.applyInputs:(Lorg/graalvm/compiler/graph/Node$EdgeVisitor;)V
        16: .line 805
            aload 6 /* v */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InputFilter.ok:Z
            ireturn
        end local 6 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InputFilter v
        end local 5 // org.graalvm.compiler.nodes.cfg.Block testBlock
        end local 4 // org.graalvm.compiler.nodes.cfg.Block targetBlock
        end local 3 // org.graalvm.compiler.nodes.ValueNode knownToBeAbove
        end local 2 // org.graalvm.compiler.graph.Node target
        end local 1 // org.graalvm.compiler.graph.Node n
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   17     1               n  Lorg/graalvm/compiler/graph/Node;
            0   17     2          target  Lorg/graalvm/compiler/graph/Node;
            0   17     3  knownToBeAbove  Lorg/graalvm/compiler/nodes/ValueNode;
            1   17     4     targetBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            2   17     5       testBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
            6   10     6           fixed  Lorg/graalvm/compiler/graph/Node;
           15   17     6               v  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InputFilter;
    MethodParameters:
                Name  Flags
      n               
      target          
      knownToBeAbove  

  protected boolean foldGuard(org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.nodes.DeoptimizingGuard, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=9, args_size=6
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard thisGuard
        start local 2 // org.graalvm.compiler.nodes.DeoptimizingGuard otherGuard
        start local 3 // boolean outcome
        start local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewireGuardFunction
         0: .line 809
            aload 2 /* otherGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getAction:()Ljdk/vm/ci/meta/DeoptimizationAction;
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getAction:()Ljdk/vm/ci/meta/DeoptimizationAction;
            invokestatic org.graalvm.compiler.nodes.StaticDeoptimizingNode.mergeActions:(Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationAction;)Ljdk/vm/ci/meta/DeoptimizationAction;
            astore 6 /* action */
        start local 6 // jdk.vm.ci.meta.DeoptimizationAction action
         1: .line 810
            aload 6 /* action */
            ifnull 6
            aload 2 /* otherGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getSpeculation:()Ljdk/vm/ci/meta/SpeculationLog$Speculation;
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getSpeculation:()Ljdk/vm/ci/meta/SpeculationLog$Speculation;
            if_acmpne 6
         2: .line 811
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            invokevirtual org.graalvm.compiler.nodes.LogicNode.copyWithInputs:()Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LogicNode
            astore 7 /* condition */
        start local 7 // org.graalvm.compiler.nodes.LogicNode condition
         3: .line 824
            aload 1 /* thisGuard */
            aload 6 /* action */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.setAction:(Ljdk/vm/ci/meta/DeoptimizationAction;)V
         4: .line 825
            aload 2 /* otherGuard */
            aload 5 /* rewireGuardFunction */
            aload 1 /* thisGuard */
            aload 7 /* condition */
            aload 6 /* action */
            invokedynamic rewire(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Ljdk/vm/ci/meta/DeoptimizationAction;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
                  org/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance.lambda$4(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Ljdk/vm/ci/meta/DeoptimizationAction;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z (6)
                  (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            astore 8 /* rewirer */
        start local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewirer
         5: .line 840
            aload 2 /* otherGuard */
            iload 3 /* outcome */
            aconst_null
            aload 4 /* guardedValueStamp */
            aload 8 /* rewirer */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
            ireturn
        end local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewirer
        end local 7 // org.graalvm.compiler.nodes.LogicNode condition
         6: .line 842
      StackMap locals: jdk.vm.ci.meta.DeoptimizationAction
      StackMap stack:
            iconst_0
            ireturn
        end local 6 // jdk.vm.ci.meta.DeoptimizationAction action
        end local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewireGuardFunction
        end local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 3 // boolean outcome
        end local 2 // org.graalvm.compiler.nodes.DeoptimizingGuard otherGuard
        end local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard thisGuard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    7     0                 this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    7     1            thisGuard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            0    7     2           otherGuard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            0    7     3              outcome  Z
            0    7     4    guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    7     5  rewireGuardFunction  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
            1    7     6               action  Ljdk/vm/ci/meta/DeoptimizationAction;
            3    6     7            condition  Lorg/graalvm/compiler/nodes/LogicNode;
            5    6     8              rewirer  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
    MethodParameters:
                     Name  Flags
      thisGuard            
      otherGuard           
      outcome              
      guardedValueStamp    
      rewireGuardFunction  

  protected boolean tryProveGuardCondition(org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.nodes.LogicNode, org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard thisGuard
        start local 2 // org.graalvm.compiler.nodes.LogicNode node
        start local 3 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewireGuardFunction
         0: .line 846
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.infoElementProvider:Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElementProvider;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.guardFolding:Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardFolding;
            aload 1 /* thisGuard */
            aload 2 /* node */
            aload 3 /* rewireGuardFunction */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationUtil.tryProveGuardCondition:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElementProvider;Ljava/util/ArrayDeque;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardFolding;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;)Z
            ireturn
        end local 3 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer rewireGuardFunction
        end local 2 // org.graalvm.compiler.nodes.LogicNode node
        end local 1 // org.graalvm.compiler.nodes.DeoptimizingGuard thisGuard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    1     1            thisGuard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            0    1     2                 node  Lorg/graalvm/compiler/nodes/LogicNode;
            0    1     3  rewireGuardFunction  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;
    MethodParameters:
                     Name  Flags
      thisGuard            
      node                 
      rewireGuardFunction  

  protected void registerCondition(org.graalvm.compiler.nodes.LogicNode, boolean, org.graalvm.compiler.nodes.extended.GuardingNode);
    descriptor: (Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/GuardingNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.LogicNode condition
        start local 2 // boolean negated
        start local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
         0: .line 850
            aload 1 /* condition */
            invokevirtual org.graalvm.compiler.nodes.LogicNode.hasMoreThanOneUsage:()Z
            ifeq 4
         1: .line 851
            aload 0 /* this */
            aload 1 /* condition */
            iload 2 /* negated */
            ifeq 2
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.contradiction:()Lorg/graalvm/compiler/core/common/type/Stamp;
            goto 3
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.LogicNode int org.graalvm.compiler.nodes.extended.GuardingNode
      StackMap stack: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.LogicNode
         2: invokestatic org.graalvm.compiler.core.common.type.StampFactory.tautology:()Lorg/graalvm/compiler/core/common/type/Stamp;
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.LogicNode int org.graalvm.compiler.nodes.extended.GuardingNode
      StackMap stack: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.core.common.type.Stamp
         3: aload 3 /* guard */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
         4: .line 853
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
            new org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardedCondition
            dup
            aload 3 /* guard */
            aload 1 /* condition */
            iload 2 /* negated */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardedCondition.<init>:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/LogicNode;Z)V
            invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
         5: .line 854
            return
        end local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 2 // boolean negated
        end local 1 // org.graalvm.compiler.nodes.LogicNode condition
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    6     1  condition  Lorg/graalvm/compiler/nodes/LogicNode;
            0    6     2    negated  Z
            0    6     3      guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
    MethodParameters:
           Name  Flags
      condition  
      negated    
      guard      

  protected org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement getInfoElements(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.ValueNode proxiedValue
         0: .line 857
            aload 1 /* proxiedValue */
            ifnonnull 2
         1: .line 858
            aconst_null
            areturn
         2: .line 860
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
            aload 1 /* proxiedValue */
            invokevirtual org.graalvm.compiler.graph.NodeMap.getAndGrow:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
            astore 2 /* infoElement */
        start local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
         3: .line 861
            aload 2 /* infoElement */
            ifnonnull 5
         4: .line 862
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
            aload 1 /* proxiedValue */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.skipPi:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.graph.NodeMap.getAndGrow:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
            astore 2 /* infoElement */
         5: .line 864
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
      StackMap stack:
            aload 2 /* infoElement */
            areturn
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement infoElement
        end local 1 // org.graalvm.compiler.nodes.ValueNode proxiedValue
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    6     1  proxiedValue  Lorg/graalvm/compiler/nodes/ValueNode;
            3    6     2   infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
    MethodParameters:
              Name  Flags
      proxiedValue  

  private org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement nextElement(org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement);
    descriptor: (Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement current
         0: .line 868
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getParent:()Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            astore 2 /* parent */
        start local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement parent
         1: .line 869
            aload 2 /* parent */
            ifnull 3
         2: .line 870
            aload 2 /* parent */
            areturn
         3: .line 872
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 3 /* proxifiedInput */
        start local 3 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
         4: .line 873
            aload 3 /* proxifiedInput */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifeq 7
         5: .line 874
            aload 3 /* proxifiedInput */
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 4 /* piNode */
        start local 4 // org.graalvm.compiler.nodes.PiNode piNode
         6: .line 875
            aload 0 /* this */
            aload 4 /* piNode */
            invokevirtual org.graalvm.compiler.nodes.PiNode.getOriginalNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            areturn
        end local 4 // org.graalvm.compiler.nodes.PiNode piNode
        end local 3 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
         7: .line 878
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement parent
        end local 1 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement current
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    8     1         current  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            1    8     2          parent  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            4    7     3  proxifiedInput  Lorg/graalvm/compiler/nodes/ValueNode;
            6    7     4          piNode  Lorg/graalvm/compiler/nodes/PiNode;
    MethodParameters:
         Name  Flags
      current  

  protected void registerNewStamp(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.extended.GuardingNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.ValueNode maybeProxiedValue
        start local 2 // org.graalvm.compiler.core.common.type.Stamp newStamp
        start local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
         0: .line 882
            aload 0 /* this */
            aload 1 /* maybeProxiedValue */
            aload 2 /* newStamp */
            aload 3 /* guard */
            iconst_0
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Z)V
         1: .line 883
            return
        end local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 2 // org.graalvm.compiler.core.common.type.Stamp newStamp
        end local 1 // org.graalvm.compiler.nodes.ValueNode maybeProxiedValue
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    2     1  maybeProxiedValue  Lorg/graalvm/compiler/nodes/ValueNode;
            0    2     2           newStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    2     3              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
    MethodParameters:
                   Name  Flags
      maybeProxiedValue  
      newStamp           
      guard              

  protected void registerNewStamp(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.extended.GuardingNode, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=9, args_size=5
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.ValueNode maybeProxiedValue
        start local 2 // org.graalvm.compiler.core.common.type.Stamp newStamp
        start local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 4 // boolean propagateThroughPis
         0: .line 886
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 1
            aload 1 /* maybeProxiedValue */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 887
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 2
            aload 3 /* guard */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 889
      StackMap locals:
      StackMap stack:
            aload 2 /* newStamp */
            ifnull 3
            aload 2 /* newStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.isUnrestricted:()Z
            ifeq 4
         3: .line 890
      StackMap locals:
      StackMap stack:
            return
         4: .line 893
      StackMap locals:
      StackMap stack:
            aload 1 /* maybeProxiedValue */
            astore 5 /* value */
        start local 5 // org.graalvm.compiler.nodes.ValueNode value
         5: .line 894
            aload 2 /* newStamp */
            astore 6 /* stamp */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp stamp
         6: .line 896
            goto 23
         7: .line 897
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.Stamp
      StackMap stack:
            aconst_null
            astore 7 /* proxiedValue */
        start local 7 // org.graalvm.compiler.nodes.ValueNode proxiedValue
         8: .line 898
            aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifeq 10
         9: .line 899
            aload 5 /* value */
            astore 7 /* proxiedValue */
        10: .line 901
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase.counterStampsRegistered:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        11: .line 902
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "\t Saving stamp for node %s stamp %s guarded by %s"
            aload 5 /* value */
            aload 6 /* stamp */
            aload 3 /* guard */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        12: .line 903
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 13
            aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.LogicNode
            ifne 13
            aload 6 /* stamp */
            aload 5 /* value */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.isCompatible:(Lorg/graalvm/compiler/core/common/type/Stamp;)Z
            ifne 13
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 6 /* stamp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " vs. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* value */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        13: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
            aload 5 /* value */
            new org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
            dup
            aload 6 /* stamp */
            aload 3 /* guard */
            aload 7 /* proxiedValue */
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
            aload 5 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeMap.getAndGrow:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.<init>:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;)V
            invokevirtual org.graalvm.compiler.graph.NodeMap.setAndGrow:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
        14: .line 905
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.undoOperations:Lorg/graalvm/compiler/graph/NodeStack;
            aload 5 /* value */
            invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
        15: .line 906
            iload 4 /* propagateThroughPis */
            ifeq 19
            aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifeq 19
        16: .line 907
            aload 5 /* value */
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 8 /* piNode */
        start local 8 // org.graalvm.compiler.nodes.PiNode piNode
        17: .line 908
            aload 8 /* piNode */
            invokevirtual org.graalvm.compiler.nodes.PiNode.getOriginalNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* value */
        end local 8 // org.graalvm.compiler.nodes.PiNode piNode
        18: .line 909
            goto 23
      StackMap locals:
      StackMap stack:
        19: aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.spi.StampInverter
            ifeq 24
        20: .line 910
            aload 5 /* value */
            checkcast org.graalvm.compiler.nodes.spi.StampInverter
            astore 8 /* stampInverter */
        start local 8 // org.graalvm.compiler.nodes.spi.StampInverter stampInverter
        21: .line 911
            aload 8 /* stampInverter */
            invokeinterface org.graalvm.compiler.nodes.spi.StampInverter.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* value */
        22: .line 912
            aload 8 /* stampInverter */
            aload 6 /* stamp */
            invokeinterface org.graalvm.compiler.nodes.spi.StampInverter.invertStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 6 /* stamp */
        end local 8 // org.graalvm.compiler.nodes.spi.StampInverter stampInverter
        end local 7 // org.graalvm.compiler.nodes.ValueNode proxiedValue
        23: .line 896
      StackMap locals:
      StackMap stack:
            aload 6 /* stamp */
            ifnull 24
            aload 5 /* value */
            ifnonnull 7
        24: .line 917
      StackMap locals:
      StackMap stack:
            return
        end local 6 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 5 // org.graalvm.compiler.nodes.ValueNode value
        end local 4 // boolean propagateThroughPis
        end local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 2 // org.graalvm.compiler.core.common.type.Stamp newStamp
        end local 1 // org.graalvm.compiler.nodes.ValueNode maybeProxiedValue
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   25     0                 this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   25     1    maybeProxiedValue  Lorg/graalvm/compiler/nodes/ValueNode;
            0   25     2             newStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   25     3                guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0   25     4  propagateThroughPis  Z
            5   25     5                value  Lorg/graalvm/compiler/nodes/ValueNode;
            6   25     6                stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            8   23     7         proxiedValue  Lorg/graalvm/compiler/nodes/ValueNode;
           17   18     8               piNode  Lorg/graalvm/compiler/nodes/PiNode;
           21   23     8        stampInverter  Lorg/graalvm/compiler/nodes/spi/StampInverter;
    MethodParameters:
                     Name  Flags
      maybeProxiedValue    
      newStamp             
      guard                
      propagateThroughPis  

  protected void processAbstractBegin(org.graalvm.compiler.nodes.AbstractBeginNode);
    descriptor: (Lorg/graalvm/compiler/nodes/AbstractBeginNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
         0: .line 920
            aload 1 /* beginNode */
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
            astore 2 /* predecessor */
        start local 2 // org.graalvm.compiler.graph.Node predecessor
         1: .line 921
            aload 2 /* predecessor */
            instanceof org.graalvm.compiler.nodes.IfNode
            ifeq 9
         2: .line 922
            aload 2 /* predecessor */
            checkcast org.graalvm.compiler.nodes.IfNode
            astore 3 /* ifNode */
        start local 3 // org.graalvm.compiler.nodes.IfNode ifNode
         3: .line 923
            aload 3 /* ifNode */
            invokevirtual org.graalvm.compiler.nodes.IfNode.falseSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            aload 1 /* beginNode */
            if_acmpne 4
            iconst_1
            goto 5
      StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.IfNode
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 4 /* negated */
        start local 4 // boolean negated
         6: .line 924
            aload 3 /* ifNode */
            invokevirtual org.graalvm.compiler.nodes.IfNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
            astore 5 /* condition */
        start local 5 // org.graalvm.compiler.nodes.LogicNode condition
         7: .line 925
            aload 0 /* this */
            aload 5 /* condition */
            iload 4 /* negated */
            aload 1 /* beginNode */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewCondition:(Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        end local 5 // org.graalvm.compiler.nodes.LogicNode condition
        end local 4 // boolean negated
        end local 3 // org.graalvm.compiler.nodes.IfNode ifNode
         8: .line 926
            goto 16
      StackMap locals:
      StackMap stack:
         9: aload 2 /* predecessor */
            instanceof org.graalvm.compiler.nodes.java.TypeSwitchNode
            ifeq 13
        10: .line 927
            aload 2 /* predecessor */
            checkcast org.graalvm.compiler.nodes.java.TypeSwitchNode
            astore 3 /* typeSwitch */
        start local 3 // org.graalvm.compiler.nodes.java.TypeSwitchNode typeSwitch
        11: .line 928
            aload 0 /* this */
            aload 1 /* beginNode */
            aload 3 /* typeSwitch */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processTypeSwitch:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;Lorg/graalvm/compiler/nodes/java/TypeSwitchNode;)V
        end local 3 // org.graalvm.compiler.nodes.java.TypeSwitchNode typeSwitch
        12: .line 929
            goto 16
      StackMap locals:
      StackMap stack:
        13: aload 2 /* predecessor */
            instanceof org.graalvm.compiler.nodes.extended.IntegerSwitchNode
            ifeq 16
        14: .line 930
            aload 2 /* predecessor */
            checkcast org.graalvm.compiler.nodes.extended.IntegerSwitchNode
            astore 3 /* integerSwitchNode */
        start local 3 // org.graalvm.compiler.nodes.extended.IntegerSwitchNode integerSwitchNode
        15: .line 931
            aload 0 /* this */
            aload 1 /* beginNode */
            aload 3 /* integerSwitchNode */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processIntegerSwitch:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;Lorg/graalvm/compiler/nodes/extended/IntegerSwitchNode;)V
        end local 3 // org.graalvm.compiler.nodes.extended.IntegerSwitchNode integerSwitchNode
        16: .line 933
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.graph.Node predecessor
        end local 1 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   17     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   17     1          beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            1   17     2        predecessor  Lorg/graalvm/compiler/graph/Node;
            3    8     3             ifNode  Lorg/graalvm/compiler/nodes/IfNode;
            6    8     4            negated  Z
            7    8     5          condition  Lorg/graalvm/compiler/nodes/LogicNode;
           11   12     3         typeSwitch  Lorg/graalvm/compiler/nodes/java/TypeSwitchNode;
           15   16     3  integerSwitchNode  Lorg/graalvm/compiler/nodes/extended/IntegerSwitchNode;
    MethodParameters:
           Name  Flags
      beginNode  

  private static boolean maybeMultipleUsages(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 936
            aload 0 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.hasMoreThanOneUsage:()Z
            ifeq 2
         1: .line 937
            iconst_1
            ireturn
         2: .line 939
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifne 6
         3: .line 940
            aload 0 /* value */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifne 6
         4: .line 941
            aload 0 /* value */
            instanceof org.graalvm.compiler.nodes.spi.StampInverter
            ifne 6
         5: .line 939
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 0 // org.graalvm.compiler.nodes.ValueNode value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0  value  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
       Name  Flags
      value  

  protected void processIntegerSwitch(org.graalvm.compiler.nodes.AbstractBeginNode, org.graalvm.compiler.nodes.extended.IntegerSwitchNode);
    descriptor: (Lorg/graalvm/compiler/nodes/AbstractBeginNode;Lorg/graalvm/compiler/nodes/extended/IntegerSwitchNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        start local 2 // org.graalvm.compiler.nodes.extended.IntegerSwitchNode integerSwitchNode
         0: .line 946
            aload 2 /* integerSwitchNode */
            invokevirtual org.graalvm.compiler.nodes.extended.IntegerSwitchNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 3 /* value */
        start local 3 // org.graalvm.compiler.nodes.ValueNode value
         1: .line 947
            aload 3 /* value */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 5
         2: .line 948
            aload 2 /* integerSwitchNode */
            aload 1 /* beginNode */
            invokevirtual org.graalvm.compiler.nodes.extended.IntegerSwitchNode.getValueStampForSuccessor:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 4 /* stamp */
        start local 4 // org.graalvm.compiler.core.common.type.Stamp stamp
         3: .line 949
            aload 4 /* stamp */
            ifnull 5
         4: .line 950
            aload 0 /* this */
            aload 3 /* value */
            aload 4 /* stamp */
            aload 1 /* beginNode */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        end local 4 // org.graalvm.compiler.core.common.type.Stamp stamp
         5: .line 953
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.ValueNode value
        end local 2 // org.graalvm.compiler.nodes.extended.IntegerSwitchNode integerSwitchNode
        end local 1 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    6     1          beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            0    6     2  integerSwitchNode  Lorg/graalvm/compiler/nodes/extended/IntegerSwitchNode;
            1    6     3              value  Lorg/graalvm/compiler/nodes/ValueNode;
            3    5     4              stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    MethodParameters:
                   Name  Flags
      beginNode          
      integerSwitchNode  

  protected void processTypeSwitch(org.graalvm.compiler.nodes.AbstractBeginNode, org.graalvm.compiler.nodes.java.TypeSwitchNode);
    descriptor: (Lorg/graalvm/compiler/nodes/AbstractBeginNode;Lorg/graalvm/compiler/nodes/java/TypeSwitchNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        start local 2 // org.graalvm.compiler.nodes.java.TypeSwitchNode typeSwitch
         0: .line 956
            aload 2 /* typeSwitch */
            invokevirtual org.graalvm.compiler.nodes.java.TypeSwitchNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 3 /* hub */
        start local 3 // org.graalvm.compiler.nodes.ValueNode hub
         1: .line 957
            aload 3 /* hub */
            instanceof org.graalvm.compiler.nodes.extended.LoadHubNode
            ifeq 8
         2: .line 958
            aload 3 /* hub */
            checkcast org.graalvm.compiler.nodes.extended.LoadHubNode
            astore 4 /* loadHub */
        start local 4 // org.graalvm.compiler.nodes.extended.LoadHubNode loadHub
         3: .line 959
            aload 4 /* loadHub */
            invokevirtual org.graalvm.compiler.nodes.extended.LoadHubNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* value */
        start local 5 // org.graalvm.compiler.nodes.ValueNode value
         4: .line 960
            aload 5 /* value */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 8
         5: .line 961
            aload 2 /* typeSwitch */
            aload 1 /* beginNode */
            invokevirtual org.graalvm.compiler.nodes.java.TypeSwitchNode.getValueStampForSuccessor:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 6 /* stamp */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp stamp
         6: .line 962
            aload 6 /* stamp */
            ifnull 8
         7: .line 963
            aload 0 /* this */
            aload 5 /* value */
            aload 6 /* stamp */
            aload 1 /* beginNode */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.registerNewStamp:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
        end local 6 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 5 // org.graalvm.compiler.nodes.ValueNode value
        end local 4 // org.graalvm.compiler.nodes.extended.LoadHubNode loadHub
         8: .line 967
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.ValueNode hub
        end local 2 // org.graalvm.compiler.nodes.java.TypeSwitchNode typeSwitch
        end local 1 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    9     1   beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            0    9     2  typeSwitch  Lorg/graalvm/compiler/nodes/java/TypeSwitchNode;
            1    9     3         hub  Lorg/graalvm/compiler/nodes/ValueNode;
            3    8     4     loadHub  Lorg/graalvm/compiler/nodes/extended/LoadHubNode;
            4    8     5       value  Lorg/graalvm/compiler/nodes/ValueNode;
            6    8     6       stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    MethodParameters:
            Name  Flags
      beginNode   
      typeSwitch  

  public void exit(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$Marks;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block b
        start local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks marks
         0: .line 971
            aload 2 /* marks */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks.infoElementOperations:I
            istore 3 /* infoElementsMark */
        start local 3 // int infoElementsMark
         1: .line 972
            goto 5
         2: .line 973
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.undoOperations:Lorg/graalvm/compiler/graph/NodeStack;
            invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
            astore 4 /* node */
        start local 4 // org.graalvm.compiler.graph.Node node
         3: .line 974
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifeq 5
         4: .line 975
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
            aload 4 /* node */
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.map:Lorg/graalvm/compiler/graph/NodeMap;
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement.getParent:()Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$InfoElement;
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
        end local 4 // org.graalvm.compiler.graph.Node node
         5: .line 972
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.undoOperations:Lorg/graalvm/compiler/graph/NodeStack;
            invokevirtual org.graalvm.compiler.graph.NodeStack.size:()I
            iload 3 /* infoElementsMark */
            if_icmpgt 2
         6: .line 979
            aload 2 /* marks */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks.conditions:I
            istore 4 /* conditionsMark */
        start local 4 // int conditionsMark
         7: .line 980
            goto 9
         8: .line 981
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
            invokevirtual java.util.ArrayDeque.pop:()Ljava/lang/Object;
            pop
         9: .line 980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
            invokevirtual java.util.ArrayDeque.size:()I
            iload 4 /* conditionsMark */
            if_icmpgt 8
        10: .line 983
            return
        end local 4 // int conditionsMark
        end local 3 // int infoElementsMark
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks marks
        end local 1 // org.graalvm.compiler.nodes.cfg.Block b
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   11     1                 b  Lorg/graalvm/compiler/nodes/cfg/Block;
            0   11     2             marks  Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$Marks;
            1   11     3  infoElementsMark  I
            3    5     4              node  Lorg/graalvm/compiler/graph/Node;
            7   11     4    conditionsMark  I
    MethodParameters:
       Name  Flags
      b      
      marks  

  public java.lang.Object enter(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.enter:(Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$Marks;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void exit(org.graalvm.compiler.nodes.cfg.Block, java.lang.Object);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/lang/Object;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.exit:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$Marks;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static boolean lambda$0(org.graalvm.compiler.nodes.ConditionAnchorNode, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ConditionAnchorNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=6, args_size=5
        start local 1 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 2 // boolean result
        start local 3 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 4 // org.graalvm.compiler.nodes.ValueNode newInput
         0: .line 350
            iload 2 /* result */
            aload 0
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.isNegated:()Z
            if_icmpeq 5
         1: .line 351
            aload 0
            aload 1 /* guard */
            invokeinterface org.graalvm.compiler.nodes.extended.GuardingNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
         2: .line 352
            aload 0
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unlinkFixedNode:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
         3: .line 353
            aload 0
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killWithUnusedFloatingInputs:(Lorg/graalvm/compiler/graph/Node;)V
         4: .line 354
            goto 8
         5: .line 355
      StackMap locals:
      StackMap stack:
            aload 0
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.extended.ValueAnchorNode
            dup
            aconst_null
            invokespecial org.graalvm.compiler.nodes.extended.ValueAnchorNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.extended.ValueAnchorNode
            astore 5 /* valueAnchor */
        start local 5 // org.graalvm.compiler.nodes.extended.ValueAnchorNode valueAnchor
         6: .line 356
            aload 0
            aload 5 /* valueAnchor */
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
         7: .line 357
            aload 0
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 0
            aload 5 /* valueAnchor */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.replaceFixedWithFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
        end local 5 // org.graalvm.compiler.nodes.extended.ValueAnchorNode valueAnchor
         8: .line 359
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // org.graalvm.compiler.nodes.ValueNode newInput
        end local 3 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 2 // boolean result
        end local 1 // org.graalvm.compiler.nodes.extended.GuardingNode guard
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     1              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0    9     2             result  Z
            0    9     3  guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    9     4           newInput  Lorg/graalvm/compiler/nodes/ValueNode;
            6    8     5        valueAnchor  Lorg/graalvm/compiler/nodes/extended/ValueAnchorNode;

  private boolean lambda$1(org.graalvm.compiler.nodes.GuardNode, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/GuardNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=8, locals=8, args_size=6
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 2 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 3 // boolean result
        start local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 5 // org.graalvm.compiler.nodes.ValueNode newInput
         0: .line 365
            iload 3 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.isNegated:()Z
            if_icmpeq 5
         1: .line 366
            aload 1
            aload 2 /* guard */
            invokeinterface org.graalvm.compiler.nodes.extended.GuardingNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.GuardNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
         2: .line 367
            aload 2 /* guard */
            instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
            ifeq 11
            aload 2 /* guard */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            ifne 11
         3: .line 368
            aload 0 /* this */
            aload 2 /* guard */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rebuildPiNodes:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;)V
         4: .line 370
            goto 11
         5: .line 371
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getAnchor:()Lorg/graalvm/compiler/nodes/extended/AnchoringNode;
            checkcast org.graalvm.compiler.nodes.AbstractBeginNode
            astore 6 /* beginNode */
        start local 6 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
         6: .line 373
            aload 6 /* beginNode */
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            instanceof org.graalvm.compiler.nodes.DeoptimizeNode
            ifne 11
         7: .line 383
            new org.graalvm.compiler.nodes.FixedGuardNode
            dup
            iload 3 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(ZLorg/graalvm/compiler/graph/Graph;)Lorg/graalvm/compiler/nodes/LogicConstantNode;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getReason:()Ljdk/vm/ci/meta/DeoptimizationReason;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getAction:()Ljdk/vm/ci/meta/DeoptimizationAction;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getSpeculation:()Ljdk/vm/ci/meta/SpeculationLog$Speculation;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.isNegated:()Z
         8: .line 384
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getNodeSourcePosition:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
         9: .line 383
            invokespecial org.graalvm.compiler.nodes.FixedGuardNode.<init>:(Lorg/graalvm/compiler/nodes/LogicNode;Ljdk/vm/ci/meta/DeoptimizationReason;Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/SpeculationLog$Speculation;ZLorg/graalvm/compiler/graph/NodeSourcePosition;)V
            astore 7 /* deopt */
        start local 7 // org.graalvm.compiler.nodes.FixedGuardNode deopt
        10: .line 385
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 6 /* beginNode */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.GuardNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            aload 7 /* deopt */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.FixedNode
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addAfterFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/nodes/FixedNode;)V
        end local 7 // org.graalvm.compiler.nodes.FixedGuardNode deopt
        end local 6 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        11: .line 388
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 5 // org.graalvm.compiler.nodes.ValueNode newInput
        end local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 3 // boolean result
        end local 2 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   12     2              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0   12     3             result  Z
            0   12     4  guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   12     5           newInput  Lorg/graalvm/compiler/nodes/ValueNode;
            6   11     6          beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
           10   11     7              deopt  Lorg/graalvm/compiler/nodes/FixedGuardNode;

  private boolean lambda$2(org.graalvm.compiler.nodes.FixedGuardNode, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedGuardNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 2 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 3 // boolean result
        start local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 5 // org.graalvm.compiler.nodes.ValueNode newInput
         0: .line 396
            iload 3 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.isNegated:()Z
            if_icmpeq 7
         1: .line 397
            aload 1
            aload 2 /* guard */
            invokeinterface org.graalvm.compiler.nodes.extended.GuardingNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
         2: .line 398
            aload 1
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unlinkFixedNode:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
         3: .line 399
            aload 1
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killWithUnusedFloatingInputs:(Lorg/graalvm/compiler/graph/Node;)V
         4: .line 400
            aload 2 /* guard */
            instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
            ifeq 8
            aload 2 /* guard */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            ifne 8
         5: .line 401
            aload 0 /* this */
            aload 2 /* guard */
            checkcast org.graalvm.compiler.nodes.DeoptimizingGuard
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rebuildPiNodes:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;)V
         6: .line 403
            goto 8
         7: .line 404
      StackMap locals:
      StackMap stack:
            aload 1
            iload 3 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(ZLorg/graalvm/compiler/graph/Graph;)Lorg/graalvm/compiler/nodes/LogicConstantNode;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.isNegated:()Z
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.setCondition:(Lorg/graalvm/compiler/nodes/LogicNode;Z)V
         8: .line 408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "Kill fixed guard %s"
            aload 1
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
         9: .line 409
            iconst_1
            ireturn
        end local 5 // org.graalvm.compiler.nodes.ValueNode newInput
        end local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 3 // boolean result
        end local 2 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   10     2              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0   10     3             result  Z
            0   10     4  guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   10     5           newInput  Lorg/graalvm/compiler/nodes/ValueNode;

  private boolean lambda$3(org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 2 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 3 // boolean result
        start local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 5 // org.graalvm.compiler.nodes.ValueNode newInput
         0: .line 470
            aload 1
            iload 3 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.IfNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(ZLorg/graalvm/compiler/graph/Graph;)Lorg/graalvm/compiler/nodes/LogicConstantNode;
            invokevirtual org.graalvm.compiler.nodes.IfNode.setCondition:(Lorg/graalvm/compiler/nodes/LogicNode;)V
         1: .line 471
            aload 1
            iload 3 /* result */
            invokevirtual org.graalvm.compiler.nodes.IfNode.getSuccessor:(Z)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 6 /* survivingSuccessor */
        start local 6 // org.graalvm.compiler.nodes.AbstractBeginNode survivingSuccessor
         2: .line 472
            aload 6 /* survivingSuccessor */
            aload 2 /* guard */
            invokeinterface org.graalvm.compiler.nodes.extended.GuardingNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            getstatic org.graalvm.compiler.nodeinfo.InputType.Guard:Lorg/graalvm/compiler/nodeinfo/InputType;
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodeinfo/InputType;)V
         3: .line 474
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase.counterIfsKilled:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
         4: .line 475
            iconst_1
            ireturn
        end local 6 // org.graalvm.compiler.nodes.AbstractBeginNode survivingSuccessor
        end local 5 // org.graalvm.compiler.nodes.ValueNode newInput
        end local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 3 // boolean result
        end local 2 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        end local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    5     2               guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0    5     3              result  Z
            0    5     4   guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    5     5            newInput  Lorg/graalvm/compiler/nodes/ValueNode;
            2    5     6  survivingSuccessor  Lorg/graalvm/compiler/nodes/AbstractBeginNode;

  private static boolean lambda$4(org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer, org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.nodes.LogicNode, jdk.vm.ci.meta.DeoptimizationAction, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$GuardRewirer;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Ljdk/vm/ci/meta/DeoptimizationAction;Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=10, args_size=9
        start local 5 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 6 // boolean result
        start local 7 // org.graalvm.compiler.core.common.type.Stamp innerGuardedValueStamp
        start local 8 // org.graalvm.compiler.nodes.ValueNode newInput
         0: .line 827
            iload 6 /* result */
            aload 0
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            if_icmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 9 /* mustDeopt */
        start local 9 // boolean mustDeopt
         3: .line 828
            aload 1
            aload 5 /* guard */
            iload 9 /* mustDeopt */
            aload 2
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            if_icmpne 4
            iconst_1
            goto 5
      StackMap locals: org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode jdk.vm.ci.meta.DeoptimizationAction org.graalvm.compiler.nodes.extended.GuardingNode int org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.nodes.ValueNode int
      StackMap stack: org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer org.graalvm.compiler.nodes.extended.GuardingNode
         4: iconst_0
      StackMap locals: org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode jdk.vm.ci.meta.DeoptimizationAction org.graalvm.compiler.nodes.extended.GuardingNode int org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.nodes.ValueNode int
      StackMap stack: org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer org.graalvm.compiler.nodes.extended.GuardingNode int
         5: aload 7 /* innerGuardedValueStamp */
            aload 8 /* newInput */
            invokeinterface org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer.rewire:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 11
         6: .line 829
            iload 9 /* mustDeopt */
            ifne 10
         7: .line 830
            aload 0
            aload 3
            aload 2
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.setCondition:(Lorg/graalvm/compiler/nodes/LogicNode;Z)V
         8: .line 831
            aload 0
            aload 4
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.setAction:(Ljdk/vm/ci/meta/DeoptimizationAction;)V
         9: .line 832
            aload 0
            aload 2
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.getReason:()Ljdk/vm/ci/meta/DeoptimizationReason;
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.setReason:(Ljdk/vm/ci/meta/DeoptimizationReason;)V
        10: .line 834
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        11: .line 836
      StackMap locals:
      StackMap stack:
            aload 3
            invokevirtual org.graalvm.compiler.nodes.LogicNode.safeDelete:()V
        12: .line 837
            iconst_0
            ireturn
        end local 9 // boolean mustDeopt
        end local 8 // org.graalvm.compiler.nodes.ValueNode newInput
        end local 7 // org.graalvm.compiler.core.common.type.Stamp innerGuardedValueStamp
        end local 6 // boolean result
        end local 5 // org.graalvm.compiler.nodes.extended.GuardingNode guard
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   13     5                   guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0   13     6                  result  Z
            0   13     7  innerGuardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   13     8                newInput  Lorg/graalvm/compiler/nodes/ValueNode;
            3   13     9               mustDeopt  Z
}
Signature: Ljava/lang/Object;Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph$RecursiveVisitor<Lorg/graalvm/compiler/phases/common/ConditionalEliminationUtil$Marks;>;
SourceFile: "ConditionalEliminationPhase.java"
NestHost: org.graalvm.compiler.phases.common.ConditionalEliminationPhase
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public Speculation = jdk.vm.ci.meta.SpeculationLog$Speculation of jdk.vm.ci.meta.SpeculationLog
  public abstract BinaryOp = org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp of org.graalvm.compiler.core.common.type.ArithmeticOpTable
  public abstract And = org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp$And of org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp
  public abstract Or = org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp$Or of org.graalvm.compiler.core.common.type.ArithmeticOpTable$BinaryOp
  public abstract EdgeVisitor = org.graalvm.compiler.graph.Node$EdgeVisitor of org.graalvm.compiler.graph.Node
  public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
  public abstract RecursiveVisitor = org.graalvm.compiler.nodes.cfg.ControlFlowGraph$RecursiveVisitor of org.graalvm.compiler.nodes.cfg.ControlFlowGraph
  public Instance = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance$1
  org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance$2
  private final PhiInfoElement = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  public abstract GuardFolding = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardFolding of org.graalvm.compiler.phases.common.ConditionalEliminationUtil
  public abstract GuardRewirer = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardRewirer of org.graalvm.compiler.phases.common.ConditionalEliminationUtil
  public final GuardedCondition = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$GuardedCondition of org.graalvm.compiler.phases.common.ConditionalEliminationUtil
  public final InfoElement = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElement of org.graalvm.compiler.phases.common.ConditionalEliminationUtil
  public abstract InfoElementProvider = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InfoElementProvider of org.graalvm.compiler.phases.common.ConditionalEliminationUtil
  public InputFilter = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$InputFilter of org.graalvm.compiler.phases.common.ConditionalEliminationUtil
  public final Marks = org.graalvm.compiler.phases.common.ConditionalEliminationUtil$Marks of org.graalvm.compiler.phases.common.ConditionalEliminationUtil