public class org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance implements org.graalvm.compiler.nodes.cfg.ControlFlowGraph$RecursiveVisitor<org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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.ConditionalEliminationPhase$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/ConditionalEliminationPhase$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 jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.nodes.MergeNode, jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.nodes.ValuePhiNode, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement>> mergeMaps;
    descriptor: Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/MergeNode;Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;>;>;

  protected final java.util.ArrayDeque<org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition> conditions;
    descriptor: Ljava/util/ArrayDeque;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljava/util/ArrayDeque<Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 287
            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.phases.tiers.PhaseContext);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/phases/tiers/PhaseContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, 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.phases.tiers.PhaseContext context
         0: .line 304
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 305
            aload 0 /* this */
            aload 1 /* graph */
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
         2: .line 306
            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 307
            aload 0 /* this */
            aload 2 /* blockToNodes */
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.blockToNodes:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
         4: .line 308
            aload 0 /* this */
            aload 3 /* nodeToBlock */
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nodeToBlock:Lorg/graalvm/compiler/graph/NodeMap;
         5: .line 309
            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 310
            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 311
            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 312
            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 313
            aload 0 /* this */
            aload 4 /* context */
            invokevirtual org.graalvm.compiler.phases.tiers.PhaseContext.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 4 /* context */
            invokevirtual org.graalvm.compiler.phases.tiers.PhaseContext.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
            aload 4 /* context */
            invokevirtual org.graalvm.compiler.phases.tiers.PhaseContext.getConstantFieldProvider:()Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider;
            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;
        10: .line 314
            aload 4 /* context */
            invokevirtual org.graalvm.compiler.phases.tiers.PhaseContext.getLowerer:()Lorg/graalvm/compiler/nodes/spi/LoweringProvider;
        11: .line 313
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.getDefaultSimplifier:(Ljdk/vm/ci/meta/MetaAccessProvider;Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider;ZLjdk/vm/ci/meta/Assumptions;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/nodes/spi/LoweringProvider;)Lorg/graalvm/compiler/graph/spi/SimplifierTool;
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tool:Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
        12: .line 315
            aload 0 /* this */
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:()Ljdk/internal/vm/compiler/collections/EconomicMap;
            putfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Ljdk/internal/vm/compiler/collections/EconomicMap;
        13: .line 316
            return
        end local 4 // org.graalvm.compiler.phases.tiers.PhaseContext 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/phases/tiers/PhaseContext;
    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/phases/tiers/PhaseContext;)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=3, 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 319
            aload 0 /* this */
            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/ConditionalEliminationPhase$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.tryProveCondition:(Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            pop
         1: .line 331
            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=4, 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 334
            aload 0 /* this */
            aload 1 /* node */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 1 /* node */
            invokedynamic rewire(Lorg/graalvm/compiler/nodes/GuardNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 (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/ConditionalEliminationPhase$GuardRewirer;)Z
         1: .line 345
            ifne 3
         2: .line 346
            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 348
      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 351
            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/ConditionalEliminationPhase$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/ConditionalEliminationPhase$GuardRewirer;)Z
         1: .line 364
            ifne 3
         2: .line 365
            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 367
      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  

  protected void processIf(org.graalvm.compiler.nodes.IfNode);
    descriptor: (Lorg/graalvm/compiler/nodes/IfNode;)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.IfNode node
         0: .line 370
            aload 0 /* this */
            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/ConditionalEliminationPhase$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.tryProveCondition:(Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            pop
         1: .line 379
            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.ConditionalEliminationPhase$Marks enter(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 383
            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 384
            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 385
            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 387
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
            invokeinterface java.util.Deque.clear:()V
         4: .line 388
            aload 0 /* this */
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNodes:(Lorg/graalvm/compiler/nodes/cfg/Block;)V
         5: .line 389
            new org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Marks
            dup
            iload 2 /* infoElementsMark */
            iload 3 /* conditionsMark */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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 393
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.blockToNodes:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            ifnull 7
         1: .line 394
            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 395
            aload 2 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifeq 5
         4: .line 396
            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 394
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 399
            goto 8
         7: .line 400
      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 402
      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 405
            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 406
            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 407
            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 408
            goto 9
         4: .line 409
      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 411
      StackMap locals:
      StackMap stack:
            return
         6: .line 413
      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 414
            aload 0 /* this */
            aload 2 /* n */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNode:(Lorg/graalvm/compiler/graph/Node;)V
         8: .line 415
            aload 4 /* next */
            astore 2 /* n */
        end local 4 // org.graalvm.compiler.nodes.FixedNode next
         9: .line 408
      StackMap locals:
      StackMap stack:
            aload 2 /* n */
            aload 3 /* endNode */
            if_acmpne 4
        10: .line 417
            aload 3 /* endNode */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.isAlive:()Z
            ifeq 12
        11: .line 418
            aload 0 /* this */
            aload 3 /* endNode */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.processNode:(Lorg/graalvm/compiler/graph/Node;)V
        12: .line 420
      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 424
            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 425
            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 426
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.pendingTests:Ljava/util/Deque;
            invokeinterface java.util.Deque.clear:()V
         4: .line 429
      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 430
            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 433
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.AbstractBeginNode
            ifeq 12
         7: .line 434
            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 450
            aload 4 /* closeable */
            ifnull 9
            aload 4 /* closeable */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
         9: .line 436
      StackMap locals:
      StackMap stack:
            return
        10: .line 438
      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 439
            goto 26
      StackMap locals:
      StackMap stack:
        12: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.FixedGuardNode
            ifeq 15
        13: .line 440
            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 441
            goto 26
      StackMap locals:
      StackMap stack:
        15: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.GuardNode
            ifeq 18
        16: .line 442
            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 443
            goto 26
      StackMap locals:
      StackMap stack:
        18: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.ConditionAnchorNode
            ifeq 21
        19: .line 444
            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 445
            goto 26
      StackMap locals:
      StackMap stack:
        21: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.IfNode
            ifeq 24
        22: .line 446
            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 447
            goto 26
      StackMap locals:
      StackMap stack:
        24: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.EndNode
            ifeq 26
        25: .line 448
            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 450
      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 451
      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=16, 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 454
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* merge */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.internal.vm.compiler.collections.EconomicMap
            astore 2 /* mergeMap */
        start local 2 // jdk.internal.vm.compiler.collections.EconomicMap mergeMap
         1: .line 455
            aload 2 /* mergeMap */
            ifnull 73
         2: .line 456
            aload 2 /* mergeMap */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.getEntries:()Ljdk/internal/vm/compiler/collections/MapCursor;
            astore 3 /* entries */
        start local 3 // jdk.internal.vm.compiler.collections.MapCursor entries
         3: .line 457
            goto 72
         4: .line 458
      StackMap locals: jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.MapCursor
      StackMap stack:
            aload 3 /* entries */
            invokeinterface jdk.internal.vm.compiler.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 459
            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 464
      StackMap locals: org.graalvm.compiler.nodes.ValuePhiNode
      StackMap stack:
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.isDeleted:()Z
            ifeq 8
         7: .line 465
            goto 72
         8: .line 467
      StackMap locals:
      StackMap stack:
            aload 3 /* entries */
            invokeinterface jdk.internal.vm.compiler.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 468
            aconst_null
            astore 6 /* bestPossibleStamp */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp bestPossibleStamp
        10: .line 469
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        11: goto 22
        12: .line 470
      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 471
            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 472
            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/ConditionalEliminationPhase$InfoElement;
            astore 10 /* infoElement */
        start local 10 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        15: .line 473
            aload 10 /* infoElement */
            ifnull 17
        16: .line 474
            aload 9 /* curBestStamp */
            aload 10 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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 477
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 6 /* bestPossibleStamp */
            ifnonnull 20
        18: .line 478
            aload 9 /* curBestStamp */
            astore 6 /* bestPossibleStamp */
        19: .line 479
            goto 21
        20: .line 480
      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.ConditionalEliminationPhase$InfoElement infoElement
        end local 9 // org.graalvm.compiler.core.common.type.Stamp curBestStamp
        end local 8 // org.graalvm.compiler.nodes.ValueNode valueAt
        21: .line 469
      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 484
            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 485
            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 489
            iconst_0
            istore 8 /* allow */
        start local 8 // boolean allow
        26: .line 490
            aload 6 /* bestPossibleStamp */
            instanceof org.graalvm.compiler.core.common.type.ObjectStamp
            ifeq 29
        27: .line 492
            iconst_1
            istore 8 /* allow */
        28: .line 493
            goto 53
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.MergeNode jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.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 494
            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 495
            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 496
            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 497
            iconst_1
            istore 8 /* allow */
        34: .line 498
            goto 53
      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 499
            iconst_1
            istore 8 /* allow */
        37: .line 500
            goto 53
      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 501
            iconst_1
            istore 8 /* allow */
        40: .line 502
            goto 53
      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 503
            iconst_1
            istore 8 /* allow */
        43: .line 504
            goto 53
      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 505
            iconst_1
            istore 8 /* allow */
        46: .line 506
            goto 53
      StackMap locals:
      StackMap stack:
        47: aload 7 /* oldStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.isUnrestricted:()Z
            ifeq 53
        48: .line 507
            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 509
            goto 53
        50: .line 510
      StackMap locals:
      StackMap stack:
            aload 6 /* bestPossibleStamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.asConstant:()Ljdk/vm/ci/meta/Constant;
            ifnull 51
            iconst_1
            goto 52
      StackMap locals:
      StackMap stack:
        51: iconst_0
      StackMap locals:
      StackMap stack: int
        52: istore 8 /* allow */
        53: .line 513
      StackMap locals:
      StackMap stack:
            iload 8 /* allow */
            ifeq 72
        54: .line 514
            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
        55: .line 515
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        56: goto 69
        57: .line 516
      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
        58: .line 517
            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
        59: .line 520
            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/ConditionalEliminationPhase$InfoElement;
            astore 12 /* infoElement */
        start local 12 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        60: .line 521
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.$assertionsDisabled:Z
            ifne 61
            aload 12 /* infoElement */
            ifnonnull 61
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        61: .line 522
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 12 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 13 /* curBestStamp */
        start local 13 // org.graalvm.compiler.core.common.type.Stamp curBestStamp
        62: .line 523
            aload 12 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 14 /* input */
        start local 14 // org.graalvm.compiler.nodes.ValueNode input
        63: .line 524
            aload 14 /* input */
            ifnonnull 65
        64: .line 525
            aload 11 /* valueAt */
            astore 14 /* input */
        65: .line 527
      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 */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.guard: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 15 /* valueNode */
        start local 15 // org.graalvm.compiler.nodes.ValueNode valueNode
        66: .line 528
            aload 15 /* valueNode */
            astore 11 /* valueAt */
        end local 15 // org.graalvm.compiler.nodes.ValueNode valueNode
        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.ConditionalEliminationPhase$InfoElement infoElement
        67: .line 530
      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 515
            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 57
        end local 10 // int i
        70: .line 532
            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 533
            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 457
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.MergeNode jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.MapCursor
      StackMap stack:
            aload 3 /* entries */
            invokeinterface jdk.internal.vm.compiler.collections.MapCursor.advance:()Z
            ifne 4
        end local 3 // jdk.internal.vm.compiler.collections.MapCursor entries
        73: .line 538
      StackMap locals:
      StackMap stack:
            return
        end local 2 // jdk.internal.vm.compiler.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  Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$PhiInfoElement;>;
            3   73     3            entries  Ljdk/internal/vm/compiler/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/ConditionalEliminationPhase$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;
           55   72     9             newPhi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
           56   70    10                  i  I
           58   68    11            valueAt  Lorg/graalvm/compiler/nodes/ValueNode;
           60   67    12        infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
           62   67    13       curBestStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           63   67    14              input  Lorg/graalvm/compiler/nodes/ValueNode;
           66   67    15          valueNode  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 541
            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 542
            aload 2 /* abstractMerge */
            instanceof org.graalvm.compiler.nodes.MergeNode
            ifeq 23
         2: .line 543
            aload 2 /* abstractMerge */
            checkcast org.graalvm.compiler.nodes.MergeNode
            astore 3 /* merge */
        start local 3 // org.graalvm.compiler.nodes.MergeNode merge
         3: .line 545
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 3 /* merge */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.internal.vm.compiler.collections.EconomicMap
            astore 4 /* mergeMap */
        start local 4 // jdk.internal.vm.compiler.collections.EconomicMap mergeMap
         4: .line 546
            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 jdk.internal.vm.compiler.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 547
            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 548
            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/ConditionalEliminationPhase$InfoElement;
            astore 8 /* infoElement */
        start local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
         8: .line 549
            goto 21
         9: .line 550
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.MergeNode jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.nodes.ValuePhiNode java.util.Iterator org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 8 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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 551
            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 552
            aload 4 /* mergeMap */
            ifnonnull 14
        12: .line 553
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:()Ljdk/internal/vm/compiler/collections/EconomicMap;
            astore 4 /* mergeMap */
        13: .line 554
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.mergeMaps:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 3 /* merge */
            aload 4 /* mergeMap */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 557
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp
      StackMap stack:
            aload 4 /* mergeMap */
            aload 5 /* phi */
            invokeinterface jdk.internal.vm.compiler.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 558
            aload 10 /* phiInfoElement */
            ifnonnull 18
        16: .line 559
            new org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement
            dup
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement.<init>:()V
            astore 10 /* phiInfoElement */
        17: .line 560
            aload 4 /* mergeMap */
            aload 5 /* phi */
            aload 10 /* phiInfoElement */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 563
      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/ConditionalEliminationPhase$InfoElement;)V
        19: .line 564
            goto 22
        end local 10 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement phiInfoElement
        20: .line 566
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 8 /* infoElement */
        end local 9 // org.graalvm.compiler.core.common.type.Stamp newStamp
        21: .line 549
      StackMap locals:
      StackMap stack:
            aload 8 /* infoElement */
            ifnonnull 9
        end local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        end local 7 // org.graalvm.compiler.nodes.ValueNode valueAt
        end local 5 // org.graalvm.compiler.nodes.ValuePhiNode phi
        22: .line 546
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.EndNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.MergeNode jdk.internal.vm.compiler.collections.EconomicMap top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // jdk.internal.vm.compiler.collections.EconomicMap mergeMap
        end local 3 // org.graalvm.compiler.nodes.MergeNode merge
        23: .line 570
      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  Ljdk/internal/vm/compiler/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/ConditionalEliminationPhase$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 573
            aload 1 /* condition */
            instanceof org.graalvm.compiler.nodes.UnaryOpLogicNode
            ifeq 7
         1: .line 574
            aload 1 /* condition */
            checkcast org.graalvm.compiler.nodes.UnaryOpLogicNode
            astore 4 /* unaryLogicNode */
        start local 4 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
         2: .line 575
            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 576
            aload 5 /* value */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 25
         4: .line 579
            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 580
            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 582
            goto 25
      StackMap locals:
      StackMap stack:
         7: aload 1 /* condition */
            instanceof org.graalvm.compiler.nodes.BinaryOpLogicNode
            ifeq 25
         8: .line 583
            aload 1 /* condition */
            checkcast org.graalvm.compiler.nodes.BinaryOpLogicNode
            astore 4 /* binaryOpLogicNode */
        start local 4 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
         9: .line 584
            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 585
            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 586
            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 587
            aload 4 /* binaryOpLogicNode */
            iload 2 /* negated */
            aload 5 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 588
            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 591
      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 592
            aload 4 /* binaryOpLogicNode */
            iload 2 /* negated */
            aload 5 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 593
            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 596
      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 597
            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 598
            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 599
            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 600
            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 606
            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 607
            aload 9 /* op */
            aload 8 /* andX */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 6 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 608
            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 613
      StackMap locals:
      StackMap stack:
            aload 3 /* guard */
            instanceof org.graalvm.compiler.nodes.DeoptimizingGuard
            ifeq 28
        26: .line 614
            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 615
      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 617
      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 618
            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      

  jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement, org.graalvm.compiler.core.common.type.Stamp> recursiveFoldStamp(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Ljdk/internal/vm/compiler/collections/Pair;
    flags: (0x0000) 
    Code:
      stack=4, locals=7, 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 621
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.calc.UnaryNode
            ifeq 11
         1: .line 622
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.calc.UnaryNode
            astore 2 /* unary */
        start local 2 // org.graalvm.compiler.nodes.calc.UnaryNode unary
         2: .line 623
            aload 2 /* unary */
            invokevirtual org.graalvm.compiler.nodes.calc.UnaryNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 3 /* value */
        start local 3 // org.graalvm.compiler.nodes.ValueNode value
         3: .line 624
            aload 0 /* this */
            aload 3 /* value */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        start local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
         4: .line 625
            goto 9
         5: .line 626
      StackMap locals: org.graalvm.compiler.nodes.calc.UnaryNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 2 /* unary */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.nodes.calc.UnaryNode.foldStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 5 /* result */
        start local 5 // org.graalvm.compiler.core.common.type.Stamp result
         6: .line 627
            aload 5 /* result */
            ifnull 8
         7: .line 628
            aload 4 /* infoElement */
            aload 5 /* result */
            invokestatic jdk.internal.vm.compiler.collections.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Ljdk/internal/vm/compiler/collections/Pair;
            areturn
         8: .line 630
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        end local 5 // org.graalvm.compiler.core.common.type.Stamp result
         9: .line 625
      StackMap locals:
      StackMap stack:
            aload 4 /* infoElement */
            ifnonnull 5
        end local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        end local 3 // org.graalvm.compiler.nodes.ValueNode value
        end local 2 // org.graalvm.compiler.nodes.calc.UnaryNode unary
        10: .line 632
            goto 23
      StackMap locals:
      StackMap stack:
        11: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.calc.BinaryNode
            ifeq 23
        12: .line 633
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.calc.BinaryNode
            astore 2 /* binary */
        start local 2 // org.graalvm.compiler.nodes.calc.BinaryNode binary
        13: .line 634
            aload 2 /* binary */
            invokevirtual org.graalvm.compiler.nodes.calc.BinaryNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 3 /* y */
        start local 3 // org.graalvm.compiler.nodes.ValueNode y
        14: .line 635
            aload 2 /* binary */
            invokevirtual org.graalvm.compiler.nodes.calc.BinaryNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 4 /* x */
        start local 4 // org.graalvm.compiler.nodes.ValueNode x
        15: .line 636
            aload 3 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 23
        16: .line 637
            aload 0 /* this */
            aload 4 /* x */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 5 /* infoElement */
        start local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        17: .line 638
            goto 22
        18: .line 639
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.calc.BinaryNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 2 /* binary */
            aload 5 /* infoElement */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.stamp:Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* y */
            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.nodes.calc.BinaryNode.foldStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 6 /* result */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp result
        19: .line 640
            aload 6 /* result */
            ifnull 21
        20: .line 641
            aload 5 /* infoElement */
            aload 6 /* result */
            invokestatic jdk.internal.vm.compiler.collections.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Ljdk/internal/vm/compiler/collections/Pair;
            areturn
        21: .line 643
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp
      StackMap stack:
            aload 0 /* this */
            aload 5 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 5 /* infoElement */
        end local 6 // org.graalvm.compiler.core.common.type.Stamp result
        22: .line 638
      StackMap locals:
      StackMap stack:
            aload 5 /* infoElement */
            ifnonnull 18
        end local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        end local 4 // org.graalvm.compiler.nodes.ValueNode x
        end local 3 // org.graalvm.compiler.nodes.ValueNode y
        end local 2 // org.graalvm.compiler.nodes.calc.BinaryNode binary
        23: .line 647
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.graph.Node
      StackMap stack:
            aconst_null
            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   24     0         this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   24     1         node  Lorg/graalvm/compiler/graph/Node;
            2   10     2        unary  Lorg/graalvm/compiler/nodes/calc/UnaryNode;
            3   10     3        value  Lorg/graalvm/compiler/nodes/ValueNode;
            4   10     4  infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            6    9     5       result  Lorg/graalvm/compiler/core/common/type/Stamp;
           13   23     2       binary  Lorg/graalvm/compiler/nodes/calc/BinaryNode;
           14   23     3            y  Lorg/graalvm/compiler/nodes/ValueNode;
           15   23     4            x  Lorg/graalvm/compiler/nodes/ValueNode;
           17   23     5  infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
           19   22     6       result  Lorg/graalvm/compiler/core/common/type/Stamp;
    Signature: (Lorg/graalvm/compiler/graph/Node;)Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;Lorg/graalvm/compiler/core/common/type/Stamp;>;
    MethodParameters:
      Name  Flags
      node  

  private static org.graalvm.compiler.core.common.type.Stamp getSafeStamp(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.ValueNode x
         0: .line 656
            aload 0 /* 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;
            areturn
        end local 0 // org.graalvm.compiler.nodes.ValueNode x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
      Name  Flags
      x     

  private static org.graalvm.compiler.core.common.type.Stamp getOtherSafeStamp(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.ValueNode x
         0: .line 668
            aload 0 /* x */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 1
            aload 0 /* x */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.isAfterFixedReadPhase:()Z
            ifeq 2
         1: .line 669
      StackMap locals:
      StackMap stack:
            aload 0 /* 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;
            areturn
         2: .line 671
      StackMap locals:
      StackMap stack:
            aload 0 /* 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;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.unrestricted:()Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        end local 0 // org.graalvm.compiler.nodes.ValueNode x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     x  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
      Name  Flags
      x     

  jdk.internal.vm.compiler.collections.Pair<org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement, org.graalvm.compiler.core.common.type.Stamp> recursiveFoldStampFromInfo(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Ljdk/internal/vm/compiler/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 684
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.recursiveFoldStamp:(Lorg/graalvm/compiler/graph/Node;)Ljdk/internal/vm/compiler/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;)Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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.ConditionalEliminationPhase$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
         0: .line 705
            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.ConditionalEliminationPhase$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 706
            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 707
            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 708
            aload 7 /* pendingCondition */
            instanceof org.graalvm.compiler.nodes.UnaryOpLogicNode
            ifeq 9
         5: .line 709
            aload 7 /* pendingCondition */
            checkcast org.graalvm.compiler.nodes.UnaryOpLogicNode
            astore 9 /* unaryLogicNode */
        start local 9 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
         6: .line 710
            aload 9 /* unaryLogicNode */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* original */
            if_acmpne 24
         7: .line 711
            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 713
            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.ConditionalEliminationPhase$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 714
            aload 7 /* pendingCondition */
            checkcast org.graalvm.compiler.nodes.BinaryOpLogicNode
            astore 9 /* binaryOpLogicNode */
        start local 9 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
        11: .line 715
            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 716
            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 717
            aload 10 /* x */
            aload 2 /* original */
            if_acmpne 16
        14: .line 718
            aload 9 /* binaryOpLogicNode */
            aload 3 /* newStamp */
            aload 11 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 719
            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 720
            aload 9 /* binaryOpLogicNode */
            aload 10 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 721
            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 722
            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 723
            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 724
            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 725
            aload 9 /* binaryOpLogicNode */
            aload 13 /* andOp */
            aload 3 /* newStamp */
            aload 11 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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.ConditionalEliminationPhase$Instance.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 729
      StackMap locals:
      StackMap stack:
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 27
        25: .line 734
            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/ConditionalEliminationPhase$GuardRewirer;)Z
            ifeq 27
        26: .line 735
            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 705
      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.ConditionalEliminationPhase$GuardRewirer top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        28: .line 739
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$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 743
            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 744
            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 745
            aload 4 /* targetBlock */
            ifnull 14
            aload 5 /* testBlock */
            ifnull 14
         3: .line 746
            aload 4 /* targetBlock */
            aload 5 /* testBlock */
            if_acmpne 12
         4: .line 747
            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 748
            aload 6 /* fixed */
            aload 1 /* n */
            if_acmpne 8
         7: .line 749
            iconst_1
            ireturn
         8: .line 750
      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 751
            goto 14
        end local 6 // org.graalvm.compiler.graph.Node fixed
        10: .line 747
      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 754
            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 755
            iconst_1
            ireturn
        14: .line 758
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InputFilter
            dup
            aload 3 /* knownToBeAbove */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InputFilter.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;)V
            astore 6 /* v */
        start local 6 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InputFilter v
        15: .line 759
            aload 1 /* n */
            aload 6 /* v */
            invokevirtual org.graalvm.compiler.graph.Node.applyInputs:(Lorg/graalvm/compiler/graph/Node$EdgeVisitor;)V
        16: .line 760
            aload 6 /* v */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InputFilter.ok:Z
            ireturn
        end local 6 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$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.ConditionalEliminationPhase$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, 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.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
         0: .line 764
            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 765
            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 766
            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 779
            aload 1 /* thisGuard */
            aload 6 /* action */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.setAction:(Ljdk/vm/ci/meta/DeoptimizationAction;)V
         4: .line 780
            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/ConditionalEliminationPhase$GuardRewirer;Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Ljdk/vm/ci/meta/DeoptimizationAction;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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/ConditionalEliminationPhase$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.ConditionalEliminationPhase$GuardRewirer rewirer
         5: .line 795
            aload 0 /* this */
            aload 2 /* otherGuard */
            iload 3 /* outcome */
            aconst_null
            aload 4 /* guardedValueStamp */
            aload 8 /* rewirer */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 8 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer rewirer
        end local 7 // org.graalvm.compiler.nodes.LogicNode condition
         6: .line 797
      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.ConditionalEliminationPhase$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/ConditionalEliminationPhase$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/ConditionalEliminationPhase$GuardRewirer;
    MethodParameters:
                     Name  Flags
      thisGuard            
      otherGuard           
      outcome              
      guardedValueStamp    
      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 801
            aload 1 /* condition */
            invokevirtual org.graalvm.compiler.nodes.LogicNode.hasMoreThanOneUsage:()Z
            ifeq 4
         1: .line 802
            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 804
      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.ConditionalEliminationPhase$GuardedCondition
            dup
            aload 3 /* guard */
            aload 1 /* condition */
            iload 2 /* negated */
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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 805
            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.ConditionalEliminationPhase$InfoElement getInfoElements(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 808
            aload 1 /* proxiedValue */
            ifnonnull 2
         1: .line 809
            aconst_null
            areturn
         2: .line 811
      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.ConditionalEliminationPhase$InfoElement
            astore 2 /* infoElement */
        start local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
         3: .line 812
            aload 2 /* infoElement */
            ifnonnull 5
         4: .line 813
            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.ConditionalEliminationPhase$InfoElement
            astore 2 /* infoElement */
         5: .line 815
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 2 /* infoElement */
            areturn
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$InfoElement;
    MethodParameters:
              Name  Flags
      proxiedValue  

  protected boolean rewireGuards(org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 2 // boolean result
        start local 3 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
        start local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
         0: .line 819
            getstatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase.counterStampsFound: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
         1: .line 820
            aload 5 /* rewireGuardFunction */
            aload 1 /* guard */
            iload 2 /* result */
            aload 4 /* guardedValueStamp */
            aload 3 /* proxifiedInput */
            invokeinterface org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer.rewire:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ireturn
        end local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
        end local 4 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 3 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
        end local 2 // boolean result
        end local 1 // 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    2     0                 this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    2     1                guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0    2     2               result  Z
            0    2     3       proxifiedInput  Lorg/graalvm/compiler/nodes/ValueNode;
            0    2     4    guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    2     5  rewireGuardFunction  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;
    MethodParameters:
                     Name  Flags
      guard                
      result               
      proxifiedInput       
      guardedValueStamp    
      rewireGuardFunction  

  protected boolean tryProveCondition(org.graalvm.compiler.nodes.LogicNode, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 1 // org.graalvm.compiler.nodes.LogicNode node
        start local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
         0: .line 824
            aload 0 /* this */
            aconst_null
            aload 1 /* node */
            aload 2 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.tryProveGuardCondition:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
        end local 1 // org.graalvm.compiler.nodes.LogicNode 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/nodes/LogicNode;
            0    1     2  rewireGuardFunction  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;
    MethodParameters:
                     Name  Flags
      node                 
      rewireGuardFunction  

  private org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement nextElement(org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement);
    descriptor: (Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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.ConditionalEliminationPhase$InfoElement current
         0: .line 828
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getParent:()Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 2 /* parent */
        start local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement parent
         1: .line 829
            aload 2 /* parent */
            ifnull 3
         2: .line 830
            aload 2 /* parent */
            areturn
         3: .line 832
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 3 /* proxifiedInput */
        start local 3 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
         4: .line 833
            aload 3 /* proxifiedInput */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifeq 7
         5: .line 834
            aload 3 /* proxifiedInput */
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 4 /* piNode */
        start local 4 // org.graalvm.compiler.nodes.PiNode piNode
         6: .line 835
            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/ConditionalEliminationPhase$InfoElement;
            areturn
        end local 4 // org.graalvm.compiler.nodes.PiNode piNode
        end local 3 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
         7: .line 838
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement parent
        end local 1 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$InfoElement;
            1    8     2          parent  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            4    7     3  proxifiedInput  Lorg/graalvm/compiler/nodes/ValueNode;
            6    7     4          piNode  Lorg/graalvm/compiler/nodes/PiNode;
    MethodParameters:
         Name  Flags
      current  

  protected boolean tryProveGuardCondition(org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.nodes.LogicNode, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer);
    descriptor: (Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=11, 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.ConditionalEliminationPhase$GuardRewirer rewireGuardFunction
         0: .line 842
            aload 0 /* this */
            aload 2 /* node */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        start local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
         1: .line 843
            goto 7
         2: .line 844
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
      StackMap stack:
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 5 /* stamp */
        start local 5 // org.graalvm.compiler.core.common.type.Stamp stamp
         3: .line 845
            aload 5 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.asConstant:()Ljdk/vm/ci/meta/Constant;
            checkcast jdk.vm.ci.meta.JavaConstant
            astore 6 /* constant */
        start local 6 // jdk.vm.ci.meta.JavaConstant constant
         4: .line 846
            aload 6 /* constant */
            ifnull 6
         5: .line 848
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 6 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asBoolean:()Z
            aconst_null
            aconst_null
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
         6: .line 850
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp jdk.vm.ci.meta.JavaConstant
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        end local 6 // jdk.vm.ci.meta.JavaConstant constant
        end local 5 // org.graalvm.compiler.core.common.type.Stamp stamp
         7: .line 843
      StackMap locals:
      StackMap stack:
            aload 4 /* infoElement */
            ifnonnull 2
         8: .line 853
            aload 0 /* this */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.conditions:Ljava/util/ArrayDeque;
            invokevirtual java.util.ArrayDeque.iterator:()Ljava/util/Iterator;
            astore 6
            goto 13
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement top java.util.Iterator
      StackMap stack:
         9: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition
            astore 5 /* guardedCondition */
        start local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition guardedCondition
        10: .line 854
            aload 5 /* guardedCondition */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition.getCondition:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 5 /* guardedCondition */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition.isNegated:()Z
            aload 2 /* node */
            invokevirtual org.graalvm.compiler.nodes.LogicNode.implies:(ZLorg/graalvm/compiler/nodes/LogicNode;)Ljdk/vm/ci/meta/TriState;
            astore 7 /* result */
        start local 7 // jdk.vm.ci.meta.TriState result
        11: .line 855
            aload 7 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 13
        12: .line 856
            aload 0 /* this */
            aload 5 /* guardedCondition */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition.guard:Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 7 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aconst_null
            aconst_null
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 7 // jdk.vm.ci.meta.TriState result
        end local 5 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition guardedCondition
        13: .line 853
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        14: .line 860
            aload 2 /* node */
            instanceof org.graalvm.compiler.nodes.UnaryOpLogicNode
            ifeq 34
        15: .line 861
            aload 2 /* node */
            checkcast org.graalvm.compiler.nodes.UnaryOpLogicNode
            astore 5 /* unaryLogicNode */
        start local 5 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
        16: .line 862
            aload 5 /* unaryLogicNode */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* value */
        start local 6 // org.graalvm.compiler.nodes.ValueNode value
        17: .line 863
            aload 0 /* this */
            aload 6 /* value */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        18: .line 864
            goto 24
        19: .line 865
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement org.graalvm.compiler.nodes.UnaryOpLogicNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 7 /* stamp */
        start local 7 // org.graalvm.compiler.core.common.type.Stamp stamp
        20: .line 866
            aload 5 /* unaryLogicNode */
            aload 7 /* stamp */
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        start local 8 // jdk.vm.ci.meta.TriState result
        21: .line 867
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 23
        22: .line 868
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        23: .line 870
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp jdk.vm.ci.meta.TriState
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        end local 8 // jdk.vm.ci.meta.TriState result
        end local 7 // org.graalvm.compiler.core.common.type.Stamp stamp
        24: .line 864
      StackMap locals:
      StackMap stack:
            aload 4 /* infoElement */
            ifnonnull 19
        25: .line 872
            aload 0 /* this */
            aload 6 /* value */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.recursiveFoldStampFromInfo:(Lorg/graalvm/compiler/graph/Node;)Ljdk/internal/vm/compiler/collections/Pair;
            astore 7 /* foldResult */
        start local 7 // jdk.internal.vm.compiler.collections.Pair foldResult
        26: .line 873
            aload 7 /* foldResult */
            ifnull 30
        27: .line 874
            aload 5 /* unaryLogicNode */
            aload 7 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.type.Stamp
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 8 /* result */
        start local 8 // jdk.vm.ci.meta.TriState result
        28: .line 875
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 30
        29: .line 876
            aload 0 /* this */
            aload 7 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 7 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 7 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.type.Stamp
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 8 // jdk.vm.ci.meta.TriState result
        30: .line 879
      StackMap locals: jdk.internal.vm.compiler.collections.Pair
      StackMap stack:
            aload 1 /* thisGuard */
            ifnull 89
        31: .line 880
            aload 5 /* unaryLogicNode */
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            invokevirtual org.graalvm.compiler.nodes.UnaryOpLogicNode.getSucceedingStampForValue:(Z)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 8 /* newStamp */
        start local 8 // org.graalvm.compiler.core.common.type.Stamp newStamp
        32: .line 881
            aload 8 /* newStamp */
            ifnull 89
            aload 0 /* this */
            aload 1 /* thisGuard */
            aload 6 /* value */
            aload 8 /* newStamp */
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.foldPendingTest:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ifeq 89
        33: .line 882
            iconst_1
            ireturn
        end local 8 // org.graalvm.compiler.core.common.type.Stamp newStamp
        end local 7 // jdk.internal.vm.compiler.collections.Pair foldResult
        end local 6 // org.graalvm.compiler.nodes.ValueNode value
        end local 5 // org.graalvm.compiler.nodes.UnaryOpLogicNode unaryLogicNode
        34: .line 886
      StackMap locals:
      StackMap stack:
            aload 2 /* node */
            instanceof org.graalvm.compiler.nodes.BinaryOpLogicNode
            ifeq 86
        35: .line 887
            aload 2 /* node */
            checkcast org.graalvm.compiler.nodes.BinaryOpLogicNode
            astore 5 /* binaryOpLogicNode */
        start local 5 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
        36: .line 888
            aload 5 /* binaryOpLogicNode */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* x */
        start local 6 // org.graalvm.compiler.nodes.ValueNode x
        37: .line 889
            aload 5 /* binaryOpLogicNode */
            invokevirtual org.graalvm.compiler.nodes.BinaryOpLogicNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 7 /* y */
        start local 7 // org.graalvm.compiler.nodes.ValueNode y
        38: .line 890
            aload 0 /* this */
            aload 6 /* x */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        39: .line 891
            goto 44
        40: .line 892
      StackMap locals: org.graalvm.compiler.nodes.BinaryOpLogicNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 5 /* binaryOpLogicNode */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 7 /* y */
            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.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 */
        start local 8 // jdk.vm.ci.meta.TriState result
        41: .line 893
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 43
        42: .line 894
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        43: .line 896
      StackMap locals: jdk.vm.ci.meta.TriState
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        end local 8 // jdk.vm.ci.meta.TriState result
        44: .line 891
      StackMap locals:
      StackMap stack:
            aload 4 /* infoElement */
            ifnonnull 40
        45: .line 899
            aload 7 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 51
        46: .line 900
            aload 0 /* this */
            aload 6 /* x */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.recursiveFoldStampFromInfo:(Lorg/graalvm/compiler/graph/Node;)Ljdk/internal/vm/compiler/collections/Pair;
            astore 8 /* foldResult */
        start local 8 // jdk.internal.vm.compiler.collections.Pair foldResult
        47: .line 901
            aload 8 /* foldResult */
            ifnull 58
        48: .line 902
            aload 5 /* binaryOpLogicNode */
            aload 8 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.type.Stamp
            aload 7 /* y */
            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.nodes.BinaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 9 /* result */
        start local 9 // jdk.vm.ci.meta.TriState result
        49: .line 903
            aload 9 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 58
        50: .line 904
            aload 0 /* this */
            aload 8 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 9 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 8 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 8 /* foldResult */
            invokevirtual jdk.internal.vm.compiler.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.type.Stamp
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 9 // jdk.vm.ci.meta.TriState result
        end local 8 // jdk.internal.vm.compiler.collections.Pair foldResult
        51: .line 908
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* y */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        52: .line 909
            goto 57
        53: .line 910
      StackMap locals:
      StackMap stack:
            aload 5 /* binaryOpLogicNode */
            aload 6 /* 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;
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()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 */
        start local 8 // jdk.vm.ci.meta.TriState result
        54: .line 911
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 56
        55: .line 912
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 8 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        56: .line 914
      StackMap locals: jdk.vm.ci.meta.TriState
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        end local 8 // jdk.vm.ci.meta.TriState result
        57: .line 909
      StackMap locals:
      StackMap stack:
            aload 4 /* infoElement */
            ifnonnull 53
        58: .line 925
      StackMap locals:
      StackMap stack:
            aload 6 /* x */
            instanceof org.graalvm.compiler.nodes.calc.BinaryArithmeticNode
            ifeq 69
            aload 7 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 69
        59: .line 926
            aload 6 /* x */
            checkcast org.graalvm.compiler.nodes.calc.BinaryArithmeticNode
            astore 8 /* binary */
        start local 8 // org.graalvm.compiler.nodes.calc.BinaryArithmeticNode binary
        60: .line 927
            aload 8 /* binary */
            invokevirtual org.graalvm.compiler.nodes.calc.BinaryArithmeticNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 69
        61: .line 928
            aload 0 /* this */
            aload 8 /* binary */
            invokevirtual org.graalvm.compiler.nodes.calc.BinaryArithmeticNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getInfoElements:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        62: .line 929
            goto 68
        63: .line 930
      StackMap locals: org.graalvm.compiler.nodes.calc.BinaryArithmeticNode
      StackMap stack:
            aload 8 /* binary */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getStamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 8 /* binary */
            invokevirtual org.graalvm.compiler.nodes.calc.BinaryArithmeticNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            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.nodes.calc.BinaryArithmeticNode.foldStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 9 /* newStampX */
        start local 9 // org.graalvm.compiler.core.common.type.Stamp newStampX
        64: .line 931
            aload 5 /* binaryOpLogicNode */
            aload 9 /* newStampX */
            aload 7 /* y */
            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.nodes.BinaryOpLogicNode.tryFold:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/TriState;
            astore 10 /* result */
        start local 10 // jdk.vm.ci.meta.TriState result
        65: .line 932
            aload 10 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.isKnown:()Z
            ifeq 67
        66: .line 933
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            aload 10 /* result */
            invokevirtual jdk.vm.ci.meta.TriState.toBoolean:()Z
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getProxifiedInput:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 9 /* newStampX */
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        67: .line 935
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp jdk.vm.ci.meta.TriState
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infoElement */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.nextElement:(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            astore 4 /* infoElement */
        end local 10 // jdk.vm.ci.meta.TriState result
        end local 9 // org.graalvm.compiler.core.common.type.Stamp newStampX
        68: .line 929
      StackMap locals:
      StackMap stack:
            aload 4 /* infoElement */
            ifnonnull 63
        end local 8 // org.graalvm.compiler.nodes.calc.BinaryArithmeticNode binary
        69: .line 940
      StackMap locals:
      StackMap stack:
            aload 1 /* thisGuard */
            ifnull 77
            aload 5 /* binaryOpLogicNode */
            instanceof org.graalvm.compiler.nodes.calc.IntegerEqualsNode
            ifeq 77
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            ifne 77
        70: .line 941
            aload 7 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 77
            aload 6 /* x */
            instanceof org.graalvm.compiler.nodes.calc.AndNode
            ifeq 77
        71: .line 942
            aload 6 /* x */
            checkcast org.graalvm.compiler.nodes.calc.AndNode
            astore 8 /* and */
        start local 8 // org.graalvm.compiler.nodes.calc.AndNode and
        72: .line 943
            aload 8 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 7 /* y */
            if_acmpne 77
        73: .line 949
            aload 6 /* 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
        74: .line 950
            aload 9 /* op */
            aload 8 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 7 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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
        75: .line 951
            aload 0 /* this */
            aload 1 /* thisGuard */
            aload 8 /* and */
            invokevirtual org.graalvm.compiler.nodes.calc.AndNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 10 /* newStampX */
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.foldPendingTest:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ifeq 77
        76: .line 952
            iconst_1
            ireturn
        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.calc.AndNode and
        77: .line 958
      StackMap locals:
      StackMap stack:
            aload 1 /* thisGuard */
            ifnull 89
        78: .line 959
            aload 6 /* x */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 82
        79: .line 960
            aload 5 /* binaryOpLogicNode */
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            aload 6 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 7 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 8 /* newStampX */
        start local 8 // org.graalvm.compiler.core.common.type.Stamp newStampX
        80: .line 961
            aload 8 /* newStampX */
            ifnull 82
            aload 0 /* this */
            aload 1 /* thisGuard */
            aload 6 /* x */
            aload 8 /* newStampX */
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.foldPendingTest:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ifeq 82
        81: .line 962
            iconst_1
            ireturn
        end local 8 // org.graalvm.compiler.core.common.type.Stamp newStampX
        82: .line 965
      StackMap locals:
      StackMap stack:
            aload 7 /* y */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 89
        83: .line 966
            aload 5 /* binaryOpLogicNode */
            aload 1 /* thisGuard */
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.isNegated:()Z
            aload 6 /* x */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.getOtherSafeStamp:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 7 /* y */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.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 8 /* newStampY */
        start local 8 // org.graalvm.compiler.core.common.type.Stamp newStampY
        84: .line 967
            aload 8 /* newStampY */
            ifnull 89
            aload 0 /* this */
            aload 1 /* thisGuard */
            aload 7 /* y */
            aload 8 /* newStampY */
            aload 3 /* rewireGuardFunction */
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.foldPendingTest:(Lorg/graalvm/compiler/nodes/DeoptimizingGuard;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ifeq 89
        85: .line 968
            iconst_1
            ireturn
        end local 8 // org.graalvm.compiler.core.common.type.Stamp newStampY
        end local 7 // org.graalvm.compiler.nodes.ValueNode y
        end local 6 // org.graalvm.compiler.nodes.ValueNode x
        end local 5 // org.graalvm.compiler.nodes.BinaryOpLogicNode binaryOpLogicNode
        86: .line 972
      StackMap locals:
      StackMap stack:
            aload 2 /* node */
            instanceof org.graalvm.compiler.nodes.ShortCircuitOrNode
            ifeq 89
        87: .line 973
            aload 2 /* node */
            checkcast org.graalvm.compiler.nodes.ShortCircuitOrNode
            astore 5 /* shortCircuitOrNode */
        start local 5 // org.graalvm.compiler.nodes.ShortCircuitOrNode shortCircuitOrNode
        88: .line 974
            aload 0 /* this */
            aload 5 /* shortCircuitOrNode */
            invokevirtual org.graalvm.compiler.nodes.ShortCircuitOrNode.getX:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 0 /* this */
            aload 5 /* shortCircuitOrNode */
            aload 3 /* rewireGuardFunction */
            invokedynamic rewire(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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$5(Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;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.tryProveCondition:(Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 5 // org.graalvm.compiler.nodes.ShortCircuitOrNode shortCircuitOrNode
        89: .line 998
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement infoElement
        end local 3 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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   90     0                 this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   90     1            thisGuard  Lorg/graalvm/compiler/nodes/DeoptimizingGuard;
            0   90     2                 node  Lorg/graalvm/compiler/nodes/LogicNode;
            0   90     3  rewireGuardFunction  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;
            1   90     4          infoElement  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;
            3    7     5                stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            4    7     6             constant  Ljdk/vm/ci/meta/JavaConstant;
           10   13     5     guardedCondition  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardedCondition;
           11   13     7               result  Ljdk/vm/ci/meta/TriState;
           16   34     5       unaryLogicNode  Lorg/graalvm/compiler/nodes/UnaryOpLogicNode;
           17   34     6                value  Lorg/graalvm/compiler/nodes/ValueNode;
           20   24     7                stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           21   24     8               result  Ljdk/vm/ci/meta/TriState;
           26   34     7           foldResult  Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;Lorg/graalvm/compiler/core/common/type/Stamp;>;
           28   30     8               result  Ljdk/vm/ci/meta/TriState;
           32   34     8             newStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           36   86     5    binaryOpLogicNode  Lorg/graalvm/compiler/nodes/BinaryOpLogicNode;
           37   86     6                    x  Lorg/graalvm/compiler/nodes/ValueNode;
           38   86     7                    y  Lorg/graalvm/compiler/nodes/ValueNode;
           41   44     8               result  Ljdk/vm/ci/meta/TriState;
           47   51     8           foldResult  Ljdk/internal/vm/compiler/collections/Pair<Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$InfoElement;Lorg/graalvm/compiler/core/common/type/Stamp;>;
           49   51     9               result  Ljdk/vm/ci/meta/TriState;
           54   57     8               result  Ljdk/vm/ci/meta/TriState;
           60   69     8               binary  Lorg/graalvm/compiler/nodes/calc/BinaryArithmeticNode<*>;
           64   68     9            newStampX  Lorg/graalvm/compiler/core/common/type/Stamp;
           65   68    10               result  Ljdk/vm/ci/meta/TriState;
           72   77     8                  and  Lorg/graalvm/compiler/nodes/calc/AndNode;
           74   77     9                   op  Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp<Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable$BinaryOp$Or;>;
           75   77    10            newStampX  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
           80   82     8            newStampX  Lorg/graalvm/compiler/core/common/type/Stamp;
           84   86     8            newStampY  Lorg/graalvm/compiler/core/common/type/Stamp;
           88   89     5   shortCircuitOrNode  Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;
    MethodParameters:
                     Name  Flags
      thisGuard            
      node                 
      rewireGuardFunction  

  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 1002
            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 1003
            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 1006
            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 1007
      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 1009
      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 1010
      StackMap locals:
      StackMap stack:
            return
         4: .line 1013
      StackMap locals:
      StackMap stack:
            aload 1 /* maybeProxiedValue */
            astore 5 /* value */
        start local 5 // org.graalvm.compiler.nodes.ValueNode value
         5: .line 1014
            aload 2 /* newStamp */
            astore 6 /* stamp */
        start local 6 // org.graalvm.compiler.core.common.type.Stamp stamp
         6: .line 1016
            goto 23
         7: .line 1017
      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 1018
            aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifeq 10
         9: .line 1019
            aload 5 /* value */
            astore 7 /* proxiedValue */
        10: .line 1021
      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 1022
            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 1023
            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 1024
      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.ConditionalEliminationPhase$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.ConditionalEliminationPhase$InfoElement
            invokespecial org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$InfoElement;)V
            invokevirtual org.graalvm.compiler.graph.NodeMap.setAndGrow:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
        14: .line 1025
            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 1026
            iload 4 /* propagateThroughPis */
            ifeq 19
            aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifeq 19
        16: .line 1027
            aload 5 /* value */
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 8 /* piNode */
        start local 8 // org.graalvm.compiler.nodes.PiNode piNode
        17: .line 1028
            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 1029
            goto 23
      StackMap locals:
      StackMap stack:
        19: aload 5 /* value */
            instanceof org.graalvm.compiler.nodes.spi.StampInverter
            ifeq 24
        20: .line 1030
            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 1031
            aload 8 /* stampInverter */
            invokeinterface org.graalvm.compiler.nodes.spi.StampInverter.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* value */
        22: .line 1032
            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 1016
      StackMap locals:
      StackMap stack:
            aload 6 /* stamp */
            ifnull 24
            aload 5 /* value */
            ifnonnull 7
        24: .line 1037
      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 1040
            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 1041
            aload 2 /* predecessor */
            instanceof org.graalvm.compiler.nodes.IfNode
            ifeq 9
         2: .line 1042
            aload 2 /* predecessor */
            checkcast org.graalvm.compiler.nodes.IfNode
            astore 3 /* ifNode */
        start local 3 // org.graalvm.compiler.nodes.IfNode ifNode
         3: .line 1043
            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 1044
            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 1045
            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 1046
            goto 16
      StackMap locals:
      StackMap stack:
         9: aload 2 /* predecessor */
            instanceof org.graalvm.compiler.nodes.java.TypeSwitchNode
            ifeq 13
        10: .line 1047
            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 1048
            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 1049
            goto 16
      StackMap locals:
      StackMap stack:
        13: aload 2 /* predecessor */
            instanceof org.graalvm.compiler.nodes.extended.IntegerSwitchNode
            ifeq 16
        14: .line 1050
            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 1051
            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 1053
      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 1056
            aload 0 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.hasMoreThanOneUsage:()Z
            ifeq 2
         1: .line 1057
            iconst_1
            ireturn
         2: .line 1059
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifne 6
         3: .line 1060
            aload 0 /* value */
            instanceof org.graalvm.compiler.nodes.PiNode
            ifne 6
         4: .line 1061
            aload 0 /* value */
            instanceof org.graalvm.compiler.nodes.spi.StampInverter
            ifne 6
         5: .line 1059
            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 1066
            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 1067
            aload 3 /* value */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 5
         2: .line 1068
            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 1069
            aload 4 /* stamp */
            ifnull 5
         4: .line 1070
            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 1073
      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 1076
            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 1077
            aload 3 /* hub */
            instanceof org.graalvm.compiler.nodes.extended.LoadHubNode
            ifeq 8
         2: .line 1078
            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 1079
            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 1080
            aload 5 /* value */
            invokestatic org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.maybeMultipleUsages:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifeq 8
         5: .line 1081
            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 1082
            aload 6 /* stamp */
            ifnull 8
         7: .line 1083
            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 1087
      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.ConditionalEliminationPhase$Marks);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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.ConditionalEliminationPhase$Marks marks
         0: .line 1091
            aload 2 /* marks */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Marks.infoElementOperations:I
            istore 3 /* infoElementsMark */
        start local 3 // int infoElementsMark
         1: .line 1092
            goto 5
         2: .line 1093
      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 1094
            aload 4 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
            ifeq 5
         4: .line 1095
            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.ConditionalEliminationPhase$InfoElement
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement.getParent:()Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 1092
      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 1099
            aload 2 /* marks */
            getfield org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Marks.conditions:I
            istore 4 /* conditionsMark */
        start local 4 // int conditionsMark
         7: .line 1100
            goto 9
         8: .line 1101
      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 1100
      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 1103
            return
        end local 4 // int conditionsMark
        end local 3 // int infoElementsMark
        end local 2 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$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/ConditionalEliminationPhase$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.ConditionalEliminationPhase$Marks
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.exit:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 320
            iload 2 /* result */
            aload 0
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.isNegated:()Z
            if_icmpeq 5
         1: .line 321
            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 322
            aload 0
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unlinkFixedNode:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
         3: .line 323
            aload 0
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killWithUnusedFloatingInputs:(Lorg/graalvm/compiler/graph/Node;)V
         4: .line 324
            goto 8
         5: .line 325
      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 326
            aload 0
            aload 5 /* valueAnchor */
            invokevirtual org.graalvm.compiler.nodes.ConditionAnchorNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
         7: .line 327
            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 329
      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 static 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: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=8, 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 335
            iload 2 /* result */
            aload 0
            invokevirtual org.graalvm.compiler.nodes.GuardNode.isNegated:()Z
            if_icmpeq 3
         1: .line 336
            aload 0
            aload 1 /* 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 337
            goto 8
         3: .line 338
      StackMap locals:
      StackMap stack:
            aload 0
            invokevirtual org.graalvm.compiler.nodes.GuardNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.DeoptimizeNode
            dup
            aload 0
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getAction:()Ljdk/vm/ci/meta/DeoptimizationAction;
            aload 0
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getReason:()Ljdk/vm/ci/meta/DeoptimizationReason;
            aload 0
            invokevirtual org.graalvm.compiler.nodes.GuardNode.getSpeculation:()Ljdk/vm/ci/meta/SpeculationLog$Speculation;
            invokespecial org.graalvm.compiler.nodes.DeoptimizeNode.<init>:(Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;Ljdk/vm/ci/meta/SpeculationLog$Speculation;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.DeoptimizeNode
            astore 5 /* deopt */
        start local 5 // org.graalvm.compiler.nodes.DeoptimizeNode deopt
         4: .line 339
            aload 0
            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
         5: .line 340
            aload 6 /* beginNode */
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 7 /* next */
        start local 7 // org.graalvm.compiler.nodes.FixedNode next
         6: .line 341
            aload 6 /* beginNode */
            aload 5 /* deopt */
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
         7: .line 342
            aload 7 /* next */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        end local 7 // org.graalvm.compiler.nodes.FixedNode next
        end local 6 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        end local 5 // org.graalvm.compiler.nodes.DeoptimizeNode deopt
         8: .line 344
      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;
            4    8     5              deopt  Lorg/graalvm/compiler/nodes/DeoptimizeNode;
            5    8     6          beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            6    8     7               next  Lorg/graalvm/compiler/nodes/FixedNode;

  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=6, 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 352
            iload 3 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.isNegated:()Z
            if_icmpeq 5
         1: .line 353
            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 354
            aload 1
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unlinkFixedNode:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
         3: .line 355
            aload 1
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killWithUnusedFloatingInputs:(Lorg/graalvm/compiler/graph/Node;)V
         4: .line 356
            goto 9
         5: .line 357
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.DeoptimizeNode
            dup
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.getAction:()Ljdk/vm/ci/meta/DeoptimizationAction;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.getReason:()Ljdk/vm/ci/meta/DeoptimizationReason;
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.getSpeculation:()Ljdk/vm/ci/meta/SpeculationLog$Speculation;
            invokespecial org.graalvm.compiler.nodes.DeoptimizeNode.<init>:(Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;Ljdk/vm/ci/meta/SpeculationLog$Speculation;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.DeoptimizeNode
            astore 6 /* deopt */
        start local 6 // org.graalvm.compiler.nodes.DeoptimizeNode deopt
         6: .line 358
            aload 6 /* deopt */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.stateBefore:()Lorg/graalvm/compiler/nodes/FrameState;
            invokevirtual org.graalvm.compiler.nodes.DeoptimizeNode.setStateBefore:(Lorg/graalvm/compiler/nodes/FrameState;)V
         7: .line 359
            aload 1
            aload 6 /* deopt */
            invokevirtual org.graalvm.compiler.nodes.FixedGuardNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
         8: .line 360
            aload 1
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        end local 6 // org.graalvm.compiler.nodes.DeoptimizeNode deopt
         9: .line 362
      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 guard"
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;)V
        10: .line 363
            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   11     0               this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0   11     2              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0   11     3             result  Z
            0   11     4  guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   11     5           newInput  Lorg/graalvm/compiler/nodes/ValueNode;
            6    9     6              deopt  Lorg/graalvm/compiler/nodes/DeoptimizeNode;

  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 371
            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
         1: .line 372
            aload 6 /* survivingSuccessor */
            getstatic org.graalvm.compiler.nodeinfo.InputType.Guard:Lorg/graalvm/compiler/nodeinfo/InputType;
            aload 2 /* guard */
            invokeinterface org.graalvm.compiler.nodes.extended.GuardingNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.replaceAtUsages:(Lorg/graalvm/compiler/nodeinfo/InputType;Lorg/graalvm/compiler/graph/Node;)V
         2: .line 373
            aload 6 /* survivingSuccessor */
            aconst_null
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
         3: .line 374
            aload 1
            aload 6 /* survivingSuccessor */
            invokevirtual org.graalvm.compiler.nodes.IfNode.replaceAtPredecessor:(Lorg/graalvm/compiler/graph/Node;)V
         4: .line 375
            aload 1
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killCFG:(Lorg/graalvm/compiler/nodes/FixedNode;)V
         5: .line 376
            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
         6: .line 377
            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    7     0                this  Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;
            0    7     2               guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0    7     3              result  Z
            0    7     4   guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    7     5            newInput  Lorg/graalvm/compiler/nodes/ValueNode;
            1    7     6  survivingSuccessor  Lorg/graalvm/compiler/nodes/AbstractBeginNode;

  private static boolean lambda$4(org.graalvm.compiler.nodes.DeoptimizingGuard, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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/ConditionalEliminationPhase$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 782
            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 783
            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.ConditionalEliminationPhase$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.ConditionalEliminationPhase$GuardRewirer org.graalvm.compiler.nodes.extended.GuardingNode
         4: iconst_0
      StackMap locals: org.graalvm.compiler.nodes.DeoptimizingGuard org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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.ConditionalEliminationPhase$GuardRewirer org.graalvm.compiler.nodes.extended.GuardingNode int
         5: aload 7 /* innerGuardedValueStamp */
            aload 8 /* newInput */
            invokeinterface org.graalvm.compiler.phases.common.ConditionalEliminationPhase$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 784
            iload 9 /* mustDeopt */
            ifne 10
         7: .line 785
            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 786
            aload 0
            aload 4
            invokeinterface org.graalvm.compiler.nodes.DeoptimizingGuard.setAction:(Ljdk/vm/ci/meta/DeoptimizationAction;)V
         9: .line 787
            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 789
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        11: .line 791
      StackMap locals:
      StackMap stack:
            aload 3
            invokevirtual org.graalvm.compiler.nodes.LogicNode.safeDelete:()V
        12: .line 792
            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

  private boolean lambda$5(org.graalvm.compiler.nodes.ShortCircuitOrNode, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;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=7, args_size=7
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 3 // org.graalvm.compiler.nodes.extended.GuardingNode guard
        start local 4 // boolean result
        start local 5 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        start local 6 // org.graalvm.compiler.nodes.ValueNode newInput
         0: .line 975
            iload 4 /* result */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.ShortCircuitOrNode.isXNegated:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: int
         1: iconst_1
      StackMap locals: org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance org.graalvm.compiler.nodes.ShortCircuitOrNode org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer org.graalvm.compiler.nodes.extended.GuardingNode int org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.nodes.ValueNode
      StackMap stack: int int
         2: if_icmpne 4
         3: .line 976
            aload 0 /* this */
            aload 3 /* guard */
            iconst_1
            aload 6 /* newInput */
            aload 5 /* guardedValueStamp */
            aload 2
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
         4: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1
            invokevirtual org.graalvm.compiler.nodes.ShortCircuitOrNode.getY:()Lorg/graalvm/compiler/nodes/LogicNode;
            aload 0 /* this */
            aload 6 /* newInput */
            aload 3 /* guard */
            aload 1
            aload 5 /* guardedValueStamp */
            aload 2
            invokedynamic rewire(Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$Instance;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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$6(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;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.tryProveCondition:(Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
        end local 6 // org.graalvm.compiler.nodes.ValueNode newInput
        end local 5 // org.graalvm.compiler.core.common.type.Stamp guardedValueStamp
        end local 4 // boolean result
        end local 3 // 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     3              guard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0    5     4             result  Z
            0    5     5  guardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    5     6           newInput  Lorg/graalvm/compiler/nodes/ValueNode;

  private boolean lambda$6(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.extended.GuardingNode, org.graalvm.compiler.nodes.ShortCircuitOrNode, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer, org.graalvm.compiler.nodes.extended.GuardingNode, boolean, org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ShortCircuitOrNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;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=6, locals=11, args_size=10
        start local 0 // org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance this
        start local 6 // org.graalvm.compiler.nodes.extended.GuardingNode innerGuard
        start local 7 // boolean innerResult
        start local 8 // org.graalvm.compiler.core.common.type.Stamp innerGuardedValueStamp
        start local 9 // org.graalvm.compiler.nodes.ValueNode innerNewInput
         0: .line 979
            aload 1
            astore 10 /* proxifiedInput */
        start local 10 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
         1: .line 980
            aload 10 /* proxifiedInput */
            ifnonnull 4
         2: .line 981
            aload 9 /* innerNewInput */
            astore 10 /* proxifiedInput */
         3: .line 982
            goto 7
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
         4: aload 9 /* innerNewInput */
            ifnull 7
         5: .line 983
            aload 9 /* innerNewInput */
            aload 1
            if_acmpeq 7
         6: .line 985
            iconst_0
            ireturn
         7: .line 989
      StackMap locals:
      StackMap stack:
            aload 6 /* innerGuard */
            aload 2
            if_acmpne 9
         8: .line 990
            aload 0 /* this */
            aload 2
            iload 7 /* innerResult */
            aload 3
            invokevirtual org.graalvm.compiler.nodes.ShortCircuitOrNode.isYNegated:()Z
            ixor
            aload 10 /* proxifiedInput */
            aload 4
            aload 5
            invokevirtual org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance.rewireGuards:(Lorg/graalvm/compiler/nodes/extended/GuardingNode;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$GuardRewirer;)Z
            ireturn
         9: .line 992
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 10 // org.graalvm.compiler.nodes.ValueNode proxifiedInput
        end local 9 // org.graalvm.compiler.nodes.ValueNode innerNewInput
        end local 8 // org.graalvm.compiler.core.common.type.Stamp innerGuardedValueStamp
        end local 7 // boolean innerResult
        end local 6 // org.graalvm.compiler.nodes.extended.GuardingNode innerGuard
        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     6              innerGuard  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            0   10     7             innerResult  Z
            0   10     8  innerGuardedValueStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0   10     9           innerNewInput  Lorg/graalvm/compiler/nodes/ValueNode;
            1   10    10          proxifiedInput  Lorg/graalvm/compiler/nodes/ValueNode;
}
Signature: Ljava/lang/Object;Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph$RecursiveVisitor<Lorg/graalvm/compiler/phases/common/ConditionalEliminationPhase$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 RecursiveVisitor = org.graalvm.compiler.nodes.cfg.ControlFlowGraph$RecursiveVisitor of org.graalvm.compiler.nodes.cfg.ControlFlowGraph
  protected abstract GuardRewirer = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardRewirer of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  protected final GuardedCondition = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$GuardedCondition of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  protected final InfoElement = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InfoElement of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  InputFilter = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$InputFilter of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  public Instance = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Instance of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  public final Marks = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$Marks of org.graalvm.compiler.phases.common.ConditionalEliminationPhase
  private final PhiInfoElement = org.graalvm.compiler.phases.common.ConditionalEliminationPhase$PhiInfoElement of org.graalvm.compiler.phases.common.ConditionalEliminationPhase