public class org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor extends org.graalvm.compiler.virtual.phases.ea.EffectsClosure<BlockT>.MergeProcessor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor
  super_class: org.graalvm.compiler.virtual.phases.ea.EffectsClosure$MergeProcessor
{
  private jdk.internal.vm.compiler.collections.EconomicMap<java.lang.Object, org.graalvm.compiler.nodes.ValuePhiNode> materializedPhis;
    descriptor: Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Object;Lorg/graalvm/compiler/nodes/ValuePhiNode;>;

  private jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValuePhiNode[]> valuePhis;
    descriptor: Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/ValuePhiNode;>;

  private jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.nodes.ValuePhiNode, org.graalvm.compiler.nodes.virtual.VirtualObjectNode> valueObjectVirtuals;
    descriptor: Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;>;

  private final boolean needsCaching;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure this$0;
    descriptor: Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  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 592
            ldc Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            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.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure, org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;Lorg/graalvm/compiler/nodes/cfg/Block;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 2 // org.graalvm.compiler.nodes.cfg.Block mergeBlock
         0: .line 599
            aload 0 /* this */
            aload 1
            putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
         1: .line 600
            aload 0 /* this */
            aload 1
            aload 2 /* mergeBlock */
            invokespecial org.graalvm.compiler.virtual.phases.ea.EffectsClosure$MergeProcessor.<init>:(Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure;Lorg/graalvm/compiler/nodes/cfg/Block;)V
         2: .line 602
            aload 0 /* this */
            aload 2 /* mergeBlock */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.isLoopHeader:()Z
            putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
         3: .line 603
            return
        end local 2 // org.graalvm.compiler.nodes.cfg.Block mergeBlock
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    4     2  mergeBlock  Lorg/graalvm/compiler/nodes/cfg/Block;
    MethodParameters:
            Name  Flags
      this$0      final
      mergeBlock  

  protected <T> org.graalvm.compiler.nodes.PhiNode getPhi(T, org.graalvm.compiler.core.common.type.Stamp);
    descriptor: (Ljava/lang/Object;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // java.lang.Object virtual
        start local 2 // org.graalvm.compiler.core.common.type.Stamp stamp
         0: .line 606
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
            ifeq 2
         1: .line 607
            aload 0 /* this */
            aload 1 /* virtual */
            aload 2 /* stamp */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhiCached:(Ljava/lang/Object;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
            areturn
         2: .line 609
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* stamp */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.createValuePhi:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/ValuePhiNode;
            areturn
        end local 2 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 1 // java.lang.Object virtual
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    3     1  virtual  TT;
            0    3     2    stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    Signature: <T:Ljava/lang/Object;>(TT;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
    MethodParameters:
         Name  Flags
      virtual  
      stamp    

  private <T> org.graalvm.compiler.nodes.PhiNode getPhiCached(T, org.graalvm.compiler.core.common.type.Stamp);
    descriptor: (Ljava/lang/Object;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // java.lang.Object virtual
        start local 2 // org.graalvm.compiler.core.common.type.Stamp stamp
         0: .line 614
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.materializedPhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            ifnonnull 2
         1: .line 615
            aload 0 /* this */
            getstatic jdk.internal.vm.compiler.collections.Equivalence.DEFAULT:Ljdk/internal/vm/compiler/collections/Equivalence;
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.materializedPhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
         2: .line 617
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.materializedPhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* virtual */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValuePhiNode
            astore 3 /* result */
        start local 3 // org.graalvm.compiler.nodes.ValuePhiNode result
         3: .line 618
            aload 3 /* result */
            ifnonnull 6
         4: .line 619
            aload 0 /* this */
            aload 2 /* stamp */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.createValuePhi:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/ValuePhiNode;
            astore 3 /* result */
         5: .line 620
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.materializedPhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* virtual */
            aload 3 /* result */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 622
      StackMap locals: org.graalvm.compiler.nodes.ValuePhiNode
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // org.graalvm.compiler.nodes.ValuePhiNode result
        end local 2 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 1 // java.lang.Object virtual
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    7     1  virtual  TT;
            0    7     2    stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            3    7     3   result  Lorg/graalvm/compiler/nodes/ValuePhiNode;
    Signature: <T:Ljava/lang/Object;>(TT;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
    MethodParameters:
         Name  Flags
      virtual  
      stamp    

  private org.graalvm.compiler.nodes.PhiNode[] getValuePhis(org.graalvm.compiler.nodes.ValueNode, int);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;I)[Lorg/graalvm/compiler/nodes/PhiNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.nodes.ValueNode key
        start local 2 // int entryCount
         0: .line 626
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
            ifeq 2
         1: .line 627
            aload 0 /* this */
            aload 1 /* key */
            iload 2 /* entryCount */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getValuePhisCached:(Lorg/graalvm/compiler/nodes/ValueNode;I)[Lorg/graalvm/compiler/nodes/PhiNode;
            areturn
         2: .line 629
      StackMap locals:
      StackMap stack:
            iload 2 /* entryCount */
            anewarray org.graalvm.compiler.nodes.ValuePhiNode
            areturn
        end local 2 // int entryCount
        end local 1 // org.graalvm.compiler.nodes.ValueNode key
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    3     1         key  Lorg/graalvm/compiler/nodes/ValueNode;
            0    3     2  entryCount  I
    MethodParameters:
            Name  Flags
      key         
      entryCount  

  private org.graalvm.compiler.nodes.PhiNode[] getValuePhisCached(org.graalvm.compiler.nodes.ValueNode, int);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;I)[Lorg/graalvm/compiler/nodes/PhiNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.nodes.ValueNode key
        start local 2 // int entryCount
         0: .line 634
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valuePhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            ifnonnull 2
         1: .line 635
            aload 0 /* this */
            getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY_WITH_SYSTEM_HASHCODE:Ljdk/internal/vm/compiler/collections/Equivalence;
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valuePhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
         2: .line 637
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valuePhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* key */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValuePhiNode[]
            astore 3 /* result */
        start local 3 // org.graalvm.compiler.nodes.ValuePhiNode[] result
         3: .line 638
            aload 3 /* result */
            ifnonnull 6
         4: .line 639
            iload 2 /* entryCount */
            anewarray org.graalvm.compiler.nodes.ValuePhiNode
            astore 3 /* result */
         5: .line 640
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valuePhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* key */
            aload 3 /* result */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 642
      StackMap locals: org.graalvm.compiler.nodes.ValuePhiNode[]
      StackMap stack:
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 7
            aload 3 /* result */
            arraylength
            iload 2 /* entryCount */
            if_icmpeq 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 643
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // org.graalvm.compiler.nodes.ValuePhiNode[] result
        end local 2 // int entryCount
        end local 1 // org.graalvm.compiler.nodes.ValueNode key
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    8     1         key  Lorg/graalvm/compiler/nodes/ValueNode;
            0    8     2  entryCount  I
            3    8     3      result  [Lorg/graalvm/compiler/nodes/ValuePhiNode;
    MethodParameters:
            Name  Flags
      key         
      entryCount  

  private org.graalvm.compiler.nodes.virtual.VirtualObjectNode getValueObjectVirtual(org.graalvm.compiler.nodes.ValuePhiNode, org.graalvm.compiler.nodes.virtual.VirtualObjectNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.nodes.ValuePhiNode phi
        start local 2 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
         0: .line 647
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
            ifeq 2
         1: .line 648
            aload 0 /* this */
            aload 1 /* phi */
            aload 2 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getValueObjectVirtualCached:(Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            areturn
         2: .line 650
      StackMap locals:
      StackMap stack:
            aload 2 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.duplicate:()Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            astore 3 /* duplicate */
        start local 3 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode duplicate
         3: .line 651
            aload 3 /* duplicate */
            aload 2 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getNodeSourcePosition:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.setNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
         4: .line 652
            aload 3 /* duplicate */
            areturn
        end local 3 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode duplicate
        end local 2 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        end local 1 // org.graalvm.compiler.nodes.ValuePhiNode phi
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    5     1        phi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
            0    5     2    virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            3    5     3  duplicate  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
    MethodParameters:
         Name  Flags
      phi      
      virtual  

  private org.graalvm.compiler.nodes.virtual.VirtualObjectNode getValueObjectVirtualCached(org.graalvm.compiler.nodes.ValuePhiNode, org.graalvm.compiler.nodes.virtual.VirtualObjectNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.nodes.ValuePhiNode phi
        start local 2 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
         0: .line 657
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valueObjectVirtuals:Ljdk/internal/vm/compiler/collections/EconomicMap;
            ifnonnull 2
         1: .line 658
            aload 0 /* this */
            getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valueObjectVirtuals:Ljdk/internal/vm/compiler/collections/EconomicMap;
         2: .line 660
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valueObjectVirtuals:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* phi */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            astore 3 /* result */
        start local 3 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode result
         3: .line 661
            aload 3 /* result */
            ifnonnull 7
         4: .line 662
            aload 2 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.duplicate:()Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            astore 3 /* result */
         5: .line 663
            aload 3 /* result */
            aload 2 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getNodeSourcePosition:()Lorg/graalvm/compiler/graph/NodeSourcePosition;
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.setNodeSourcePosition:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
         6: .line 664
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valueObjectVirtuals:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 1 /* phi */
            aload 3 /* result */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 666
      StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode result
        end local 2 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        end local 1 // org.graalvm.compiler.nodes.ValuePhiNode phi
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    8     1      phi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
            0    8     2  virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            3    8     3   result  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
    MethodParameters:
         Name  Flags
      phi      
      virtual  

  protected void merge(java.util.List<BlockT>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=21, args_size=2
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // java.util.List statesList
         0: .line 681
            aload 1 /* statesList */
            invokeinterface java.util.List.size:()I
            anewarray org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            astore 2 /* states */
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
         1: .line 682
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 683
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int
      StackMap stack:
            aload 2 /* states */
            iload 3 /* i */
            aload 1 /* statesList */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            aastore
         4: .line 682
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 1 /* statesList */
            invokeinterface java.util.List.size:()I
            if_icmplt 3
        end local 3 // int i
         6: .line 687
            aload 0 /* this */
            aload 2 /* states */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.intersectVirtualObjects:([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)[I
            astore 3 /* virtualObjTemp */
        start local 3 // int[] virtualObjTemp
         7: .line 689
            iconst_0
            istore 4 /* forceMaterialization */
        start local 4 // boolean forceMaterialization
         8: .line 690
            aconst_null
            astore 5 /* forcedMaterializationValue */
        start local 5 // org.graalvm.compiler.nodes.ValueNode forcedMaterializationValue
         9: .line 691
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.merge:Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            astore 6 /* frameState */
        start local 6 // org.graalvm.compiler.nodes.FrameState frameState
        10: .line 692
            aload 6 /* frameState */
            ifnull 26
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.isExceptionHandlingBCI:()Z
            ifeq 26
        11: .line 695
            iconst_1
            istore 4 /* forceMaterialization */
        12: .line 697
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.stackSize:()I
            iconst_1
            if_icmpne 26
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.merge:Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            instanceof org.graalvm.compiler.nodes.UnwindNode
            ifeq 26
        13: .line 698
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 14
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.outerFrameState:()Lorg/graalvm/compiler/nodes/FrameState;
            ifnull 14
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 699
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.merge:Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            checkcast org.graalvm.compiler.nodes.UnwindNode
            astore 7 /* unwind */
        start local 7 // org.graalvm.compiler.nodes.UnwindNode unwind
        15: .line 700
            aload 7 /* unwind */
            invokevirtual org.graalvm.compiler.nodes.UnwindNode.exception:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* frameState */
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.FrameState.stackAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpne 26
        16: .line 701
            iconst_1
            istore 8 /* nullLocals */
        start local 8 // boolean nullLocals
        17: .line 702
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        18: goto 23
        19: .line 703
      StackMap locals: org.graalvm.compiler.nodes.UnwindNode int int
      StackMap stack:
            aload 6 /* frameState */
            iload 9 /* i */
            invokevirtual org.graalvm.compiler.nodes.FrameState.localAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            ifnull 22
        20: .line 704
            iconst_0
            istore 8 /* nullLocals */
        21: .line 705
            goto 24
        22: .line 702
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 9 /* i */
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.localsSize:()I
            if_icmplt 19
        end local 9 // int i
        24: .line 708
      StackMap locals:
      StackMap stack:
            iload 8 /* nullLocals */
            ifeq 26
        25: .line 711
            aload 7 /* unwind */
            invokevirtual org.graalvm.compiler.nodes.UnwindNode.exception:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* forcedMaterializationValue */
        end local 8 // boolean nullLocals
        end local 7 // org.graalvm.compiler.nodes.UnwindNode unwind
        26: .line 719
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* materialized */
        start local 7 // boolean materialized
        27: .line 721
            iload 4 /* forceMaterialization */
            ifne 30
            aload 2 /* states */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.identicalObjectStates:([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
            ifeq 30
        28: .line 722
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            aload 2 /* states */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.adoptAddObjectStates:(Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)V
        29: .line 723
            goto 89
        30: .line 725
      StackMap locals: int
      StackMap stack:
            aload 3 /* virtualObjTemp */
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 88
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int top int int int[]
      StackMap stack:
        31: aload 11
            iload 9
            iaload
            istore 8 /* object */
        start local 8 // int object
        32: .line 726
            iload 4 /* forceMaterialization */
            ifne 35
            aload 2 /* states */
            iload 8 /* object */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.identicalObjectStates:([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;I)Z
            ifeq 35
        33: .line 727
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            iload 8 /* object */
            aload 2 /* states */
            iconst_0
            aaload
            iload 8 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.share:()Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.addObject:(ILorg/graalvm/compiler/virtual/phases/ea/ObjectState;)V
        34: .line 728
            goto 87
        35: .line 732
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int int int int int[]
      StackMap stack:
            iconst_0
            istore 12 /* virtualCount */
        start local 12 // int virtualCount
        36: .line 733
            aload 2 /* states */
            iconst_0
            aaload
            iload 8 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 13 /* startObj */
        start local 13 // org.graalvm.compiler.virtual.phases.ea.ObjectState startObj
        37: .line 734
            iconst_1
            istore 14 /* locksMatch */
        start local 14 // boolean locksMatch
        38: .line 735
            iconst_1
            istore 15 /* ensureVirtual */
        start local 15 // boolean ensureVirtual
        39: .line 736
            aload 13 /* startObj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 40
            aconst_null
            goto 41
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int int int int int[] int org.graalvm.compiler.virtual.phases.ea.ObjectState int int
      StackMap stack:
        40: aload 13 /* startObj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getMaterializedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.nodes.ValueNode
        41: astore 16 /* uniqueMaterializedValue */
        start local 16 // org.graalvm.compiler.nodes.ValueNode uniqueMaterializedValue
        42: .line 737
            iconst_0
            istore 17 /* i */
        start local 17 // int i
        43: goto 65
        44: .line 738
      StackMap locals: org.graalvm.compiler.nodes.ValueNode int
      StackMap stack:
            aload 2 /* states */
            iload 17 /* i */
            aaload
            iload 8 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 18 /* obj */
        start local 18 // org.graalvm.compiler.virtual.phases.ea.ObjectState obj
        45: .line 739
            iload 15 /* ensureVirtual */
            aload 18 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEnsureVirtualized:()Z
            iand
            istore 15 /* ensureVirtual */
        46: .line 740
            iload 4 /* forceMaterialization */
            ifeq 57
        47: .line 741
            aload 5 /* forcedMaterializationValue */
            ifnonnull 50
        48: .line 742
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        49: .line 743
            goto 64
        50: .line 745
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.ObjectState
      StackMap stack:
            aload 5 /* forcedMaterializationValue */
            astore 19 /* value */
        start local 19 // org.graalvm.compiler.nodes.ValueNode value
        51: .line 746
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.merge:Lorg/graalvm/compiler/nodes/AbstractMergeNode;
            aload 19 /* value */
            invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.isPhiAtMerge:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 53
        52: .line 747
            aload 19 /* value */
            checkcast org.graalvm.compiler.nodes.ValuePhiNode
            iload 17 /* i */
            invokevirtual org.graalvm.compiler.nodes.ValuePhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 19 /* value */
        53: .line 749
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 19 /* value */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.getAlias:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 20 /* alias */
        start local 20 // org.graalvm.compiler.nodes.ValueNode alias
        54: .line 750
            aload 20 /* alias */
            instanceof org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            ifeq 57
            aload 20 /* alias */
            checkcast org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            iload 8 /* object */
            if_icmpne 57
        55: .line 751
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        56: .line 752
            goto 64
        end local 20 // org.graalvm.compiler.nodes.ValueNode alias
        end local 19 // org.graalvm.compiler.nodes.ValueNode value
        57: .line 756
      StackMap locals:
      StackMap stack:
            aload 18 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 62
        58: .line 757
            iinc 12 /* virtualCount */ 1
        59: .line 758
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        60: .line 759
            iload 14 /* locksMatch */
            aload 18 /* obj */
            aload 13 /* startObj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.locksEqual:(Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;)Z
            iand
            istore 14 /* locksMatch */
        61: .line 760
            goto 64
      StackMap locals:
      StackMap stack:
        62: aload 18 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getMaterializedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 16 /* uniqueMaterializedValue */
            if_acmpeq 64
        63: .line 761
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        end local 18 // org.graalvm.compiler.virtual.phases.ea.ObjectState obj
        64: .line 737
      StackMap locals:
      StackMap stack:
            iinc 17 /* i */ 1
      StackMap locals:
      StackMap stack:
        65: iload 17 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 44
        end local 17 // int i
        66: .line 765
            iload 12 /* virtualCount */
            aload 2 /* states */
            arraylength
            if_icmpne 69
            iload 14 /* locksMatch */
            ifeq 69
        67: .line 766
            iload 7 /* materialized */
            aload 0 /* this */
            iload 8 /* object */
            aconst_null
            aload 2 /* states */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeObjectStates:(I[I[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
            ior
            istore 7 /* materialized */
        68: .line 767
            goto 87
        69: .line 768
      StackMap locals:
      StackMap stack:
            aload 16 /* uniqueMaterializedValue */
            ifnull 72
        70: .line 769
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            iload 8 /* object */
            new org.graalvm.compiler.virtual.phases.ea.ObjectState
            dup
            aload 16 /* uniqueMaterializedValue */
            aconst_null
            iload 15 /* ensureVirtual */
            invokespecial org.graalvm.compiler.virtual.phases.ea.ObjectState.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/virtual/LockState;Z)V
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.addObject:(ILorg/graalvm/compiler/virtual/phases/ea/ObjectState;)V
        71: .line 770
            goto 87
        72: .line 771
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 8 /* object */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhi:(Ljava/lang/Object;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
            astore 17 /* materializedValuePhi */
        start local 17 // org.graalvm.compiler.nodes.PhiNode materializedValuePhi
        73: .line 772
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            aload 17 /* materializedValuePhi */
            ldc "materializedPhi"
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.addFloatingNode:(Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)V
        74: .line 773
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        75: goto 85
        76: .line 774
      StackMap locals: org.graalvm.compiler.nodes.PhiNode int
      StackMap stack:
            aload 2 /* states */
            iload 18 /* i */
            aaload
            iload 8 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 19 /* obj */
        start local 19 // org.graalvm.compiler.virtual.phases.ea.ObjectState obj
        77: .line 775
            aload 19 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 83
        78: .line 776
            aload 0 /* this */
            iload 18 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPredecessor:(I)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 20 /* predecessor */
        start local 20 // org.graalvm.compiler.nodes.cfg.Block predecessor
        79: .line 777
            iload 15 /* ensureVirtual */
            ifne 81
            aload 19 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 81
        80: .line 780
            aload 19 /* obj */
            iconst_0
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.setEnsureVirtualized:(Z)V
        81: .line 782
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.ObjectState org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            iload 7 /* materialized */
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 2 /* states */
            iload 18 /* i */
            aaload
            iload 8 /* object */
            aload 20 /* predecessor */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.blockEffects:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 20 /* predecessor */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.GraphEffectList
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.COUNTER_MATERIALIZATIONS_MERGE:Lorg/graalvm/compiler/debug/CounterKey;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.ensureMaterialized:(Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;ILorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/debug/CounterKey;)Z
            ior
            istore 7 /* materialized */
        82: .line 783
            aload 2 /* states */
            iload 18 /* i */
            aaload
            iload 8 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 19 /* obj */
        end local 20 // org.graalvm.compiler.nodes.cfg.Block predecessor
        83: .line 785
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 17 /* materializedValuePhi */
            iload 18 /* i */
            aload 19 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getMaterializedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.setPhiInput:(Lorg/graalvm/compiler/nodes/PhiNode;ILorg/graalvm/compiler/nodes/ValueNode;)V
        end local 19 // org.graalvm.compiler.virtual.phases.ea.ObjectState obj
        84: .line 773
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
        85: iload 18 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 76
        end local 18 // int i
        86: .line 787
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            iload 8 /* object */
            new org.graalvm.compiler.virtual.phases.ea.ObjectState
            dup
            aload 17 /* materializedValuePhi */
            aconst_null
            iconst_0
            invokespecial org.graalvm.compiler.virtual.phases.ea.ObjectState.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/virtual/LockState;Z)V
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.addObject:(ILorg/graalvm/compiler/virtual/phases/ea/ObjectState;)V
        end local 17 // org.graalvm.compiler.nodes.PhiNode materializedValuePhi
        end local 16 // org.graalvm.compiler.nodes.ValueNode uniqueMaterializedValue
        end local 15 // boolean ensureVirtual
        end local 14 // boolean locksMatch
        end local 13 // org.graalvm.compiler.virtual.phases.ea.ObjectState startObj
        end local 12 // int virtualCount
        end local 8 // int object
        87: .line 725
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int top int int int[]
      StackMap stack:
            iinc 9 1
      StackMap locals:
      StackMap stack:
        88: iload 9
            iload 10
            if_icmplt 31
        89: .line 793
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 9
            goto 94
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int top java.util.Iterator
      StackMap stack:
        90: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 8 /* phi */
        start local 8 // org.graalvm.compiler.nodes.PhiNode phi
        91: .line 794
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.aliases:Lorg/graalvm/compiler/graph/NodeMap;
            aload 8 /* phi */
            aconst_null
            invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
        92: .line 795
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.hasVirtualInputs:Lorg/graalvm/compiler/graph/NodeBitMap;
            aload 8 /* phi */
            invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
            ifeq 94
            aload 8 /* phi */
            instanceof org.graalvm.compiler.nodes.ValuePhiNode
            ifeq 94
        93: .line 796
            iload 7 /* materialized */
            aload 0 /* this */
            aload 8 /* phi */
            checkcast org.graalvm.compiler.nodes.ValuePhiNode
            aload 2 /* states */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.processPhi:(Lorg/graalvm/compiler/nodes/ValuePhiNode;[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
            ior
            istore 7 /* materialized */
        end local 8 // org.graalvm.compiler.nodes.PhiNode phi
        94: .line 793
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 90
        95: .line 799
            iload 7 /* materialized */
            ifeq 99
        96: .line 800
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.virtualObjects:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.resetObjectStates:(I)V
        97: .line 801
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.clear:()V
        98: .line 802
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.afterMergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.clear:()V
        99: .line 804
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor java.util.List org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int[] int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.FrameState int
      StackMap stack:
            iload 7 /* materialized */
            ifne 26
       100: .line 805
            return
        end local 7 // boolean materialized
        end local 6 // org.graalvm.compiler.nodes.FrameState frameState
        end local 5 // org.graalvm.compiler.nodes.ValueNode forcedMaterializationValue
        end local 4 // boolean forceMaterialization
        end local 3 // int[] virtualObjTemp
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        end local 1 // java.util.List statesList
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0  101     0                        this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0  101     1                  statesList  Ljava/util/List<TBlockT;>;
            1  101     2                      states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            2    6     3                           i  I
            7  101     3              virtualObjTemp  [I
            8  101     4        forceMaterialization  Z
            9  101     5  forcedMaterializationValue  Lorg/graalvm/compiler/nodes/ValueNode;
           10  101     6                  frameState  Lorg/graalvm/compiler/nodes/FrameState;
           15   26     7                      unwind  Lorg/graalvm/compiler/nodes/UnwindNode;
           17   26     8                  nullLocals  Z
           18   24     9                           i  I
           27  101     7                materialized  Z
           32   87     8                      object  I
           36   87    12                virtualCount  I
           37   87    13                    startObj  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           38   87    14                  locksMatch  Z
           39   87    15               ensureVirtual  Z
           42   87    16     uniqueMaterializedValue  Lorg/graalvm/compiler/nodes/ValueNode;
           43   66    17                           i  I
           45   64    18                         obj  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           51   57    19                       value  Lorg/graalvm/compiler/nodes/ValueNode;
           54   57    20                       alias  Lorg/graalvm/compiler/nodes/ValueNode;
           73   87    17        materializedValuePhi  Lorg/graalvm/compiler/nodes/PhiNode;
           75   86    18                           i  I
           77   84    19                         obj  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           79   83    20                 predecessor  Lorg/graalvm/compiler/nodes/cfg/Block;
           91   94     8                         phi  Lorg/graalvm/compiler/nodes/PhiNode;
    Signature: (Ljava/util/List<TBlockT;>;)V
    MethodParameters:
            Name  Flags
      statesList  

  private int[] intersectVirtualObjects(org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState<?>[]);
    descriptor: ([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)[I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
         0: .line 808
            aload 1 /* states */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getStateCount:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 809
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 810
      StackMap locals: int int
      StackMap stack:
            iload 2 /* length */
            aload 1 /* states */
            iload 3 /* i */
            aaload
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getStateCount:()I
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* length */
         4: .line 809
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 1 /* states */
            arraylength
            if_icmplt 3
        end local 3 // int i
         6: .line 813
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         7: .line 814
            iconst_0
            istore 4 /* objectIndex */
        start local 4 // int objectIndex
         8: goto 12
         9: .line 815
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* states */
            iload 4 /* objectIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.intersectObjectState:([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;I)Z
            ifeq 11
        10: .line 816
            iinc 3 /* count */ 1
        11: .line 814
      StackMap locals:
      StackMap stack:
            iinc 4 /* objectIndex */ 1
      StackMap locals:
      StackMap stack:
        12: iload 4 /* objectIndex */
            iload 2 /* length */
            if_icmplt 9
        end local 4 // int objectIndex
        13: .line 820
            iconst_0
            istore 4 /* index */
        start local 4 // int index
        14: .line 821
            iload 3 /* count */
            newarray 10
            astore 5 /* resultInts */
        start local 5 // int[] resultInts
        15: .line 822
            iconst_0
            istore 6 /* objectIndex */
        start local 6 // int objectIndex
        16: goto 20
        17: .line 823
      StackMap locals: int[] int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* states */
            iload 6 /* objectIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.intersectObjectState:([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;I)Z
            ifeq 19
        18: .line 824
            aload 5 /* resultInts */
            iload 4 /* index */
            iinc 4 /* index */ 1
            iload 6 /* objectIndex */
            iastore
        19: .line 822
      StackMap locals:
      StackMap stack:
            iinc 6 /* objectIndex */ 1
      StackMap locals:
      StackMap stack:
        20: iload 6 /* objectIndex */
            iload 2 /* length */
            if_icmplt 17
        end local 6 // int objectIndex
        21: .line 827
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 22
            iload 4 /* index */
            iload 3 /* count */
            if_icmpeq 22
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        22: .line 828
      StackMap locals:
      StackMap stack:
            aload 5 /* resultInts */
            areturn
        end local 5 // int[] resultInts
        end local 4 // int index
        end local 3 // int count
        end local 2 // int length
        end local 1 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   23     0         this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0   23     1       states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            1   23     2       length  I
            2    6     3            i  I
            7   23     3        count  I
            8   13     4  objectIndex  I
           14   23     4        index  I
           15   23     5   resultInts  [I
           16   21     6  objectIndex  I
    Signature: ([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;)[I
    MethodParameters:
        Name  Flags
      states  

  private boolean intersectObjectState(org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState<?>[], );
    descriptor: ([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        start local 2 // int objectIndex
         0: .line 832
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 833
      StackMap locals: int
      StackMap stack:
            aload 1 /* states */
            iload 3 /* i */
            aaload
            astore 4 /* state */
        start local 4 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState state
         3: .line 834
            aload 4 /* state */
            iload 2 /* objectIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectStateOptional:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            ifnonnull 5
         4: .line 835
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState state
         5: .line 832
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 1 /* states */
            arraylength
            if_icmplt 2
        end local 3 // int i
         7: .line 838
            iconst_1
            ireturn
        end local 2 // int objectIndex
        end local 1 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0    8     1       states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            0    8     2  objectIndex  I
            1    7     3            i  I
            3    5     4        state  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;
    Signature: ([Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;I)Z
    MethodParameters:
             Name  Flags
      states       
      objectIndex  

  private boolean mergeObjectStates(int, int[], org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState<?>[]);
    descriptor: (I[I[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=18, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // int resultObject
        start local 2 // int[] sourceObjects
        start local 3 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
         0: .line 853
            iconst_1
            istore 4 /* compatible */
        start local 4 // boolean compatible
         1: .line 854
            iconst_1
            istore 5 /* ensureVirtual */
        start local 5 // boolean ensureVirtual
         2: .line 855
            aload 2 /* sourceObjects */
            iload 1 /* resultObject */
            invokedynamic applyAsInt([II)Ljava/util/function/IntUnaryOperator;
              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:
                  (I)I
                  org/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor.lambda$0([III)I (6)
                  (I)I
            astore 6 /* getObject */
        start local 6 // java.util.function.IntUnaryOperator getObject
         3: .line 857
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.virtualObjects:Ljava/util/ArrayList;
            iload 1 /* resultObject */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            astore 7 /* virtual */
        start local 7 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
         4: .line 858
            aload 7 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            istore 8 /* entryCount */
        start local 8 // int entryCount
         5: .line 861
            aconst_null
            astore 9 /* twoSlotKinds */
        start local 9 // jdk.vm.ci.meta.JavaKind[] twoSlotKinds
         6: .line 862
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         7: goto 29
         8: .line 863
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor int int[] org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int int java.util.function.IntUnaryOperator org.graalvm.compiler.nodes.virtual.VirtualObjectNode int jdk.vm.ci.meta.JavaKind[] int
      StackMap stack:
            aload 3 /* states */
            iload 10 /* i */
            aaload
            aload 6 /* getObject */
            iload 10 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 11 /* objectState */
        start local 11 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
         9: .line 864
            aload 11 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntries:()[Lorg/graalvm/compiler/nodes/ValueNode;
            astore 12 /* entries */
        start local 12 // org.graalvm.compiler.nodes.ValueNode[] entries
        10: .line 865
            iconst_0
            istore 13 /* valueIndex */
        start local 13 // int valueIndex
        11: .line 866
            iload 5 /* ensureVirtual */
            aload 11 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEnsureVirtualized:()Z
            iand
            istore 5 /* ensureVirtual */
        12: .line 867
            goto 27
        13: .line 868
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.ObjectState org.graalvm.compiler.nodes.ValueNode[] int
      StackMap stack:
            aload 12 /* entries */
            iload 13 /* valueIndex */
            aaload
            invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 14 /* otherKind */
        start local 14 // jdk.vm.ci.meta.JavaKind otherKind
        14: .line 869
            aload 7 /* virtual */
            iload 13 /* valueIndex */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(I)Ljdk/vm/ci/meta/JavaKind;
            astore 15 /* entryKind */
        start local 15 // jdk.vm.ci.meta.JavaKind entryKind
        15: .line 870
            aload 15 /* entryKind */
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 24
            aload 14 /* otherKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.needsTwoSlots:()Z
            ifeq 24
        16: .line 871
            aload 9 /* twoSlotKinds */
            ifnonnull 18
        17: .line 872
            iload 8 /* entryCount */
            anewarray jdk.vm.ci.meta.JavaKind
            astore 9 /* twoSlotKinds */
        18: .line 874
      StackMap locals: jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind
      StackMap stack:
            aload 9 /* twoSlotKinds */
            iload 13 /* valueIndex */
            aaload
            ifnull 21
            aload 9 /* twoSlotKinds */
            iload 13 /* valueIndex */
            aaload
            aload 14 /* otherKind */
            if_acmpeq 21
        19: .line 875
            iconst_0
            istore 4 /* compatible */
        20: .line 876
            goto 30
        21: .line 878
      StackMap locals:
      StackMap stack:
            aload 9 /* twoSlotKinds */
            iload 13 /* valueIndex */
            aload 14 /* otherKind */
            aastore
        22: .line 880
            iinc 13 /* valueIndex */ 1
        23: .line 881
            goto 26
        24: .line 882
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 26
            aload 15 /* entryKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 14 /* otherKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 26
            aload 15 /* entryKind */
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 25
            aload 14 /* otherKind */
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 26
        25: .line 883
      StackMap locals:
      StackMap stack:
            aload 15 /* entryKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            aload 14 /* otherKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            if_icmpge 26
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 15 /* entryKind */
            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 14 /* otherKind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        26: .line 885
      StackMap locals:
      StackMap stack:
            iinc 13 /* valueIndex */ 1
        end local 15 // jdk.vm.ci.meta.JavaKind entryKind
        end local 14 // jdk.vm.ci.meta.JavaKind otherKind
        27: .line 867
      StackMap locals:
      StackMap stack:
            iload 13 /* valueIndex */
            iload 8 /* entryCount */
            if_icmplt 13
        end local 13 // int valueIndex
        end local 12 // org.graalvm.compiler.nodes.ValueNode[] entries
        end local 11 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        28: .line 862
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 10 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 8
        end local 10 // int i
        30: .line 888
      StackMap locals:
      StackMap stack:
            iload 4 /* compatible */
            ifeq 55
            aload 9 /* twoSlotKinds */
            ifnull 55
        31: .line 890
            iconst_0
            istore 10 /* valueIndex */
        start local 10 // int valueIndex
        32: goto 54
        33: .line 891
      StackMap locals: int
      StackMap stack:
            aload 9 /* twoSlotKinds */
            iload 10 /* valueIndex */
            aaload
            ifnull 53
        34: .line 892
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 36
            iload 10 /* valueIndex */
            aload 7 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            iconst_1
            isub
            if_icmpge 35
            aload 7 /* virtual */
            iload 10 /* valueIndex */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(I)Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 35
            aload 7 /* virtual */
            iload 10 /* valueIndex */
            iconst_1
            iadd
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(I)Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 36
      StackMap locals:
      StackMap stack:
        35: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        36: .line 893
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        37: goto 52
        38: .line 894
      StackMap locals: int
      StackMap stack:
            aload 6 /* getObject */
            iload 11 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            istore 12 /* object */
        start local 12 // int object
        39: .line 895
            aload 3 /* states */
            iload 11 /* i */
            aaload
            iload 12 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 13 /* objectState */
        start local 13 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        40: .line 896
            aload 13 /* objectState */
            iload 10 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 14 /* value */
        start local 14 // org.graalvm.compiler.nodes.ValueNode value
        41: .line 897
            aload 14 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 15 /* valueKind */
        start local 15 // jdk.vm.ci.meta.JavaKind valueKind
        42: .line 898
            aload 15 /* valueKind */
            aload 9 /* twoSlotKinds */
            iload 10 /* valueIndex */
            aaload
            if_acmpeq 51
        43: .line 899
            aload 13 /* objectState */
            iload 10 /* valueIndex */
            iconst_1
            iadd
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 16 /* nextValue */
        start local 16 // org.graalvm.compiler.nodes.ValueNode nextValue
        44: .line 900
            aload 14 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 49
            aload 14 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            getstatic jdk.vm.ci.meta.JavaConstant.INT_0:Ljdk/vm/ci/meta/PrimitiveConstant;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 49
            aload 16 /* nextValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 49
            aload 16 /* nextValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            getstatic jdk.vm.ci.meta.JavaConstant.INT_0:Ljdk/vm/ci/meta/PrimitiveConstant;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 49
        45: .line 902
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "Rewriting entry %s to constant of larger size"
            iload 10 /* valueIndex */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;I)V
        46: .line 903
            aload 3 /* states */
            iload 11 /* i */
            aaload
            iload 12 /* object */
            iload 10 /* valueIndex */
            aload 9 /* twoSlotKinds */
            iload 10 /* valueIndex */
            aaload
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.ConstantNode.defaultForKind:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.setEntry:(IILorg/graalvm/compiler/nodes/ValueNode;)V
        47: .line 904
            aload 3 /* states */
            iload 11 /* i */
            aaload
            iload 12 /* object */
            iload 10 /* valueIndex */
            iconst_1
            iadd
            invokestatic jdk.vm.ci.meta.JavaConstant.forIllegal:()Ljdk/vm/ci/meta/PrimitiveConstant;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.tool:Lorg/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.setEntry:(IILorg/graalvm/compiler/nodes/ValueNode;)V
        48: .line 905
            goto 51
        49: .line 906
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor int int[] org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int int java.util.function.IntUnaryOperator org.graalvm.compiler.nodes.virtual.VirtualObjectNode int jdk.vm.ci.meta.JavaKind[] int int int org.graalvm.compiler.virtual.phases.ea.ObjectState org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.JavaKind org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            iconst_0
            istore 4 /* compatible */
        50: .line 907
            goto 55
        end local 16 // org.graalvm.compiler.nodes.ValueNode nextValue
        end local 15 // jdk.vm.ci.meta.JavaKind valueKind
        end local 14 // org.graalvm.compiler.nodes.ValueNode value
        end local 13 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        end local 12 // int object
        51: .line 893
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor int int[] org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int int java.util.function.IntUnaryOperator org.graalvm.compiler.nodes.virtual.VirtualObjectNode int jdk.vm.ci.meta.JavaKind[] int int
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        52: iload 11 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 38
        end local 11 // int i
        53: .line 890
      StackMap locals:
      StackMap stack:
            iinc 10 /* valueIndex */ 1
      StackMap locals:
      StackMap stack:
        54: iload 10 /* valueIndex */
            iload 8 /* entryCount */
            if_icmplt 33
        end local 10 // int valueIndex
        55: .line 915
      StackMap locals:
      StackMap stack:
            iload 4 /* compatible */
            ifeq 98
        56: .line 917
            aload 3 /* states */
            iconst_0
            aaload
            aload 6 /* getObject */
            iconst_0
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntries:()[Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode[].clone:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValueNode[]
            astore 10 /* values */
        start local 10 // org.graalvm.compiler.nodes.ValueNode[] values
        57: .line 918
            aload 0 /* this */
            aload 7 /* virtual */
            aload 7 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getValuePhis:(Lorg/graalvm/compiler/nodes/ValueNode;I)[Lorg/graalvm/compiler/nodes/PhiNode;
            astore 11 /* phis */
        start local 11 // org.graalvm.compiler.nodes.PhiNode[] phis
        58: .line 919
            iconst_0
            istore 12 /* valueIndex */
        start local 12 // int valueIndex
        59: .line 920
            goto 75
        60: .line 921
      StackMap locals: org.graalvm.compiler.nodes.ValueNode[] org.graalvm.compiler.nodes.PhiNode[] int
      StackMap stack:
            iconst_1
            istore 13 /* i */
        start local 13 // int i
        61: goto 67
        62: .line 922
      StackMap locals: int
      StackMap stack:
            aload 11 /* phis */
            iload 12 /* valueIndex */
            aaload
            ifnonnull 66
        63: .line 923
            aload 3 /* states */
            iload 13 /* i */
            aaload
            aload 6 /* getObject */
            iload 13 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            iload 12 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 14 /* field */
        start local 14 // org.graalvm.compiler.nodes.ValueNode field
        64: .line 924
            aload 10 /* values */
            iload 12 /* valueIndex */
            aaload
            aload 14 /* field */
            if_acmpeq 66
        65: .line 925
            aload 11 /* phis */
            iload 12 /* valueIndex */
            aload 0 /* this */
            aload 10 /* values */
            iload 12 /* valueIndex */
            aaload
            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;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.createValuePhi:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/ValuePhiNode;
            aastore
        end local 14 // org.graalvm.compiler.nodes.ValueNode field
        66: .line 921
      StackMap locals:
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        67: iload 13 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 62
        end local 13 // int i
        68: .line 929
            aload 11 /* phis */
            iload 12 /* valueIndex */
            aaload
            ifnull 70
            aload 11 /* phis */
            iload 12 /* valueIndex */
            aaload
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.PhiNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 10 /* values */
            iload 12 /* valueIndex */
            aaload
            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 70
        69: .line 930
            aload 11 /* phis */
            iload 12 /* valueIndex */
            aload 0 /* this */
            aload 10 /* values */
            iload 12 /* valueIndex */
            aaload
            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;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.createValuePhi:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/ValuePhiNode;
            aastore
        70: .line 932
      StackMap locals:
      StackMap stack:
            aload 9 /* twoSlotKinds */
            ifnull 74
            aload 9 /* twoSlotKinds */
            iload 12 /* valueIndex */
            aaload
            ifnull 74
        71: .line 934
            iinc 12 /* valueIndex */ 1
        72: .line 935
            aload 11 /* phis */
            iload 12 /* valueIndex */
            aconst_null
            aastore
        73: .line 936
            aload 10 /* values */
            iload 12 /* valueIndex */
            invokestatic jdk.vm.ci.meta.JavaConstant.forIllegal:()Ljdk/vm/ci/meta/PrimitiveConstant;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.tool:Lorg/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            aastore
        74: .line 938
      StackMap locals:
      StackMap stack:
            iinc 12 /* valueIndex */ 1
        75: .line 920
      StackMap locals:
      StackMap stack:
            iload 12 /* valueIndex */
            aload 10 /* values */
            arraylength
            if_icmplt 60
        76: .line 941
            iconst_0
            istore 13 /* materialized */
        start local 13 // boolean materialized
        77: .line 942
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        78: goto 95
        79: .line 943
      StackMap locals: int int
      StackMap stack:
            aload 11 /* phis */
            iload 14 /* i */
            aaload
            astore 15 /* phi */
        start local 15 // org.graalvm.compiler.nodes.PhiNode phi
        80: .line 944
            aload 15 /* phi */
            ifnull 94
        81: .line 945
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            aload 15 /* phi */
            ldc "virtualMergePhi"
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.addFloatingNode:(Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)V
        82: .line 946
            aload 7 /* virtual */
            iload 14 /* i */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(I)Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 85
        83: .line 947
            iload 13 /* materialized */
            aload 0 /* this */
            aload 6 /* getObject */
            aload 3 /* states */
            aload 15 /* phi */
            iload 14 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeObjectEntry:(Ljava/util/function/IntUnaryOperator;[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/nodes/PhiNode;I)Z
            ior
            istore 13 /* materialized */
        84: .line 948
            goto 93
        85: .line 949
      StackMap locals: org.graalvm.compiler.nodes.PhiNode
      StackMap stack:
            iconst_0
            istore 16 /* i2 */
        start local 16 // int i2
        86: goto 92
        87: .line 950
      StackMap locals: int
      StackMap stack:
            aload 3 /* states */
            iload 16 /* i2 */
            aaload
            aload 6 /* getObject */
            iload 16 /* i2 */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 17 /* state */
        start local 17 // org.graalvm.compiler.virtual.phases.ea.ObjectState state
        88: .line 951
            aload 17 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifne 90
        89: .line 952
            goto 93
        90: .line 954
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.ObjectState
      StackMap stack:
            aload 0 /* this */
            aload 15 /* phi */
            iload 16 /* i2 */
            aload 17 /* state */
            iload 14 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.setPhiInput:(Lorg/graalvm/compiler/nodes/PhiNode;ILorg/graalvm/compiler/nodes/ValueNode;)V
        end local 17 // org.graalvm.compiler.virtual.phases.ea.ObjectState state
        91: .line 949
            iinc 16 /* i2 */ 1
      StackMap locals:
      StackMap stack:
        92: iload 16 /* i2 */
            aload 3 /* states */
            arraylength
            if_icmplt 87
        end local 16 // int i2
        93: .line 957
      StackMap locals:
      StackMap stack:
            aload 10 /* values */
            iload 14 /* i */
            aload 15 /* phi */
            aastore
        end local 15 // org.graalvm.compiler.nodes.PhiNode phi
        94: .line 942
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        95: iload 14 /* i */
            aload 10 /* values */
            arraylength
            if_icmplt 79
        end local 14 // int i
        96: .line 960
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            iload 1 /* resultObject */
            new org.graalvm.compiler.virtual.phases.ea.ObjectState
            dup
            aload 10 /* values */
            aload 3 /* states */
            iconst_0
            aaload
            aload 6 /* getObject */
            iconst_0
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getLocks:()Lorg/graalvm/compiler/nodes/virtual/LockState;
            iload 5 /* ensureVirtual */
            invokespecial org.graalvm.compiler.virtual.phases.ea.ObjectState.<init>:([Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/virtual/LockState;Z)V
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.addObject:(ILorg/graalvm/compiler/virtual/phases/ea/ObjectState;)V
        97: .line 961
            iload 13 /* materialized */
            ireturn
        end local 13 // boolean materialized
        end local 12 // int valueIndex
        end local 11 // org.graalvm.compiler.nodes.PhiNode[] phis
        end local 10 // org.graalvm.compiler.nodes.ValueNode[] values
        98: .line 964
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor int int[] org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int int java.util.function.IntUnaryOperator org.graalvm.compiler.nodes.virtual.VirtualObjectNode int jdk.vm.ci.meta.JavaKind[]
      StackMap stack:
            aload 0 /* this */
            iload 1 /* resultObject */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhi:(Ljava/lang/Object;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/nodes/PhiNode;
            astore 10 /* materializedValuePhi */
        start local 10 // org.graalvm.compiler.nodes.PhiNode materializedValuePhi
        99: .line 965
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       100: goto 107
       101: .line 966
      StackMap locals: org.graalvm.compiler.nodes.PhiNode int
      StackMap stack:
            aload 0 /* this */
            iload 11 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPredecessor:(I)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 12 /* predecessor */
        start local 12 // org.graalvm.compiler.nodes.cfg.Block predecessor
       102: .line 967
            iload 5 /* ensureVirtual */
            ifne 104
            aload 3 /* states */
            iload 11 /* i */
            aaload
            aload 6 /* getObject */
            iload 11 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 104
       103: .line 969
            aload 3 /* states */
            iload 11 /* i */
            aaload
            aload 6 /* getObject */
            iload 11 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            iconst_0
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.setEnsureVirtualized:(Z)V
       104: .line 971
      StackMap locals: org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 3 /* states */
            iload 11 /* i */
            aaload
            aload 6 /* getObject */
            iload 11 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            aload 12 /* predecessor */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.blockEffects:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 12 /* predecessor */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.GraphEffectList
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.COUNTER_MATERIALIZATIONS_MERGE:Lorg/graalvm/compiler/debug/CounterKey;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.ensureMaterialized:(Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;ILorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/debug/CounterKey;)Z
            pop
       105: .line 972
            aload 0 /* this */
            aload 10 /* materializedValuePhi */
            iload 11 /* i */
            aload 3 /* states */
            iload 11 /* i */
            aaload
            aload 6 /* getObject */
            iload 11 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getMaterializedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.setPhiInput:(Lorg/graalvm/compiler/nodes/PhiNode;ILorg/graalvm/compiler/nodes/ValueNode;)V
        end local 12 // org.graalvm.compiler.nodes.cfg.Block predecessor
       106: .line 965
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       107: iload 11 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 101
        end local 11 // int i
       108: .line 974
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.newState:Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
            iload 1 /* resultObject */
            new org.graalvm.compiler.virtual.phases.ea.ObjectState
            dup
            aload 10 /* materializedValuePhi */
            aconst_null
            iload 5 /* ensureVirtual */
            invokespecial org.graalvm.compiler.virtual.phases.ea.ObjectState.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/virtual/LockState;Z)V
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.addObject:(ILorg/graalvm/compiler/virtual/phases/ea/ObjectState;)V
       109: .line 975
            iconst_1
            ireturn
        end local 10 // org.graalvm.compiler.nodes.PhiNode materializedValuePhi
        end local 9 // jdk.vm.ci.meta.JavaKind[] twoSlotKinds
        end local 8 // int entryCount
        end local 7 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        end local 6 // java.util.function.IntUnaryOperator getObject
        end local 5 // boolean ensureVirtual
        end local 4 // boolean compatible
        end local 3 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        end local 2 // int[] sourceObjects
        end local 1 // int resultObject
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0  110     0                  this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0  110     1          resultObject  I
            0  110     2         sourceObjects  [I
            0  110     3                states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            1  110     4            compatible  Z
            2  110     5         ensureVirtual  Z
            3  110     6             getObject  Ljava/util/function/IntUnaryOperator;
            4  110     7               virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            5  110     8            entryCount  I
            6  110     9          twoSlotKinds  [Ljdk/vm/ci/meta/JavaKind;
            7   30    10                     i  I
            9   28    11           objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           10   28    12               entries  [Lorg/graalvm/compiler/nodes/ValueNode;
           11   28    13            valueIndex  I
           14   27    14             otherKind  Ljdk/vm/ci/meta/JavaKind;
           15   27    15             entryKind  Ljdk/vm/ci/meta/JavaKind;
           32   55    10            valueIndex  I
           37   53    11                     i  I
           39   51    12                object  I
           40   51    13           objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           41   51    14                 value  Lorg/graalvm/compiler/nodes/ValueNode;
           42   51    15             valueKind  Ljdk/vm/ci/meta/JavaKind;
           44   51    16             nextValue  Lorg/graalvm/compiler/nodes/ValueNode;
           57   98    10                values  [Lorg/graalvm/compiler/nodes/ValueNode;
           58   98    11                  phis  [Lorg/graalvm/compiler/nodes/PhiNode;
           59   98    12            valueIndex  I
           61   68    13                     i  I
           64   66    14                 field  Lorg/graalvm/compiler/nodes/ValueNode;
           77   98    13          materialized  Z
           78   96    14                     i  I
           80   94    15                   phi  Lorg/graalvm/compiler/nodes/PhiNode;
           86   93    16                    i2  I
           88   91    17                 state  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           99  110    10  materializedValuePhi  Lorg/graalvm/compiler/nodes/PhiNode;
          100  108    11                     i  I
          102  106    12           predecessor  Lorg/graalvm/compiler/nodes/cfg/Block;
    Signature: (I[I[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;)Z
    MethodParameters:
               Name  Flags
      resultObject   
      sourceObjects  
      states         

  private boolean mergeObjectEntry(java.util.function.IntUnaryOperator, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState<?>[], org.graalvm.compiler.nodes.PhiNode, );
    descriptor: (Ljava/util/function/IntUnaryOperator;[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/nodes/PhiNode;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=5
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // java.util.function.IntUnaryOperator objectIdFunc
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        start local 3 // org.graalvm.compiler.nodes.PhiNode phi
        start local 4 // int entryIndex
         0: .line 986
            iconst_0
            istore 5 /* materialized */
        start local 5 // boolean materialized
         1: .line 987
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         2: goto 17
         3: .line 988
      StackMap locals: int int
      StackMap stack:
            aload 1 /* objectIdFunc */
            iload 6 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            istore 7 /* object */
        start local 7 // int object
         4: .line 989
            aload 2 /* states */
            iload 6 /* i */
            aaload
            iload 7 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 8 /* objectState */
        start local 8 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
         5: .line 990
            aload 8 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifne 7
         6: .line 991
            goto 18
         7: .line 993
      StackMap locals: int org.graalvm.compiler.virtual.phases.ea.ObjectState
      StackMap stack:
            aload 8 /* objectState */
            iload 4 /* entryIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 9 /* entry */
        start local 9 // org.graalvm.compiler.nodes.ValueNode entry
         8: .line 994
            aload 9 /* entry */
            instanceof org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            ifeq 15
         9: .line 995
            aload 9 /* entry */
            checkcast org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            astore 10 /* entryVirtual */
        start local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode entryVirtual
        10: .line 996
            aload 0 /* this */
            iload 6 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPredecessor:(I)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 11 /* predecessor */
        start local 11 // org.graalvm.compiler.nodes.cfg.Block predecessor
        11: .line 997
            iload 5 /* materialized */
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 2 /* states */
            iload 6 /* i */
            aaload
            aload 10 /* entryVirtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            aload 11 /* predecessor */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.blockEffects:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 11 /* predecessor */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.GraphEffectList
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.COUNTER_MATERIALIZATIONS_MERGE:Lorg/graalvm/compiler/debug/CounterKey;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.ensureMaterialized:(Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;ILorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/debug/CounterKey;)Z
            ior
            istore 5 /* materialized */
        12: .line 998
            aload 2 /* states */
            iload 6 /* i */
            aaload
            iload 7 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 8 /* objectState */
        13: .line 999
            aload 8 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 15
        14: .line 1000
            aload 2 /* states */
            iload 6 /* i */
            aaload
            iload 7 /* object */
            iload 4 /* entryIndex */
            aload 2 /* states */
            iload 6 /* i */
            aaload
            aload 10 /* entryVirtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getMaterializedValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            dup
            astore 9 /* entry */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.setEntry:(IILorg/graalvm/compiler/nodes/ValueNode;)V
        end local 11 // org.graalvm.compiler.nodes.cfg.Block predecessor
        end local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode entryVirtual
        15: .line 1003
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 0 /* this */
            aload 3 /* phi */
            iload 6 /* i */
            aload 9 /* entry */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.setPhiInput:(Lorg/graalvm/compiler/nodes/PhiNode;ILorg/graalvm/compiler/nodes/ValueNode;)V
        end local 9 // org.graalvm.compiler.nodes.ValueNode entry
        end local 8 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        end local 7 // int object
        16: .line 987
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 6 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 3
        end local 6 // int i
        18: .line 1005
      StackMap locals:
      StackMap stack:
            iload 5 /* materialized */
            ireturn
        end local 5 // boolean materialized
        end local 4 // int entryIndex
        end local 3 // org.graalvm.compiler.nodes.PhiNode phi
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        end local 1 // java.util.function.IntUnaryOperator objectIdFunc
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0   19     1  objectIdFunc  Ljava/util/function/IntUnaryOperator;
            0   19     2        states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            0   19     3           phi  Lorg/graalvm/compiler/nodes/PhiNode;
            0   19     4    entryIndex  I
            1   19     5  materialized  Z
            2   18     6             i  I
            4   16     7        object  I
            5   16     8   objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            8   16     9         entry  Lorg/graalvm/compiler/nodes/ValueNode;
           10   15    10  entryVirtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           11   15    11   predecessor  Lorg/graalvm/compiler/nodes/cfg/Block;
    Signature: (Ljava/util/function/IntUnaryOperator;[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;Lorg/graalvm/compiler/nodes/PhiNode;I)Z
    MethodParameters:
              Name  Flags
      objectIdFunc  
      states        
      phi           
      entryIndex    

  private boolean processPhi(org.graalvm.compiler.nodes.ValuePhiNode, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState<?>[]);
    descriptor: (Lorg/graalvm/compiler/nodes/ValuePhiNode;[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.nodes.ValuePhiNode phi
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
         0: .line 1021
            iconst_0
            istore 3 /* virtualInputs */
        start local 3 // int virtualInputs
         1: .line 1022
            iconst_1
            istore 4 /* uniqueVirtualObject */
        start local 4 // boolean uniqueVirtualObject
         2: .line 1023
            iconst_1
            istore 5 /* ensureVirtual */
        start local 5 // boolean ensureVirtual
         3: .line 1024
            aload 2 /* states */
            arraylength
            anewarray org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            astore 6 /* virtualObjs */
        start local 6 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode[] virtualObjs
         4: .line 1025
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 20
         6: .line 1026
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor org.graalvm.compiler.nodes.ValuePhiNode org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int int int org.graalvm.compiler.nodes.virtual.VirtualObjectNode[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 0 /* this */
            aload 1 /* phi */
            iload 7 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhiValueAt:(Lorg/graalvm/compiler/nodes/PhiNode;I)Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.getAlias:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 8 /* alias */
        start local 8 // org.graalvm.compiler.nodes.ValueNode alias
         7: .line 1027
            aload 8 /* alias */
            instanceof org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            ifeq 19
         8: .line 1028
            aload 8 /* alias */
            checkcast org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            astore 9 /* virtual */
        start local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
         9: .line 1029
            aload 6 /* virtualObjs */
            iload 7 /* i */
            aload 9 /* virtual */
            aastore
        10: .line 1030
            aload 2 /* states */
            iload 7 /* i */
            aaload
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectStateOptional:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 10 /* objectState */
        start local 10 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        11: .line 1031
            aload 10 /* objectState */
            ifnonnull 14
        12: .line 1032
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 13
            aload 0 /* this */
            aload 1 /* phi */
            iload 7 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhiValueAt:(Lorg/graalvm/compiler/nodes/PhiNode;I)Lorg/graalvm/compiler/nodes/ValueNode;
            instanceof org.graalvm.compiler.nodes.PhiNode
            ifne 13
            new java.lang.AssertionError
            dup
            ldc "this should only happen for phi nodes"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        13: .line 1033
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.virtual.VirtualObjectNode org.graalvm.compiler.virtual.phases.ea.ObjectState
      StackMap stack:
            iconst_0
            ireturn
        14: .line 1035
      StackMap locals:
      StackMap stack:
            aload 10 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 19
        15: .line 1036
            aload 6 /* virtualObjs */
            iconst_0
            aaload
            aload 8 /* alias */
            if_acmpeq 17
        16: .line 1037
            iconst_0
            istore 4 /* uniqueVirtualObject */
        17: .line 1039
      StackMap locals:
      StackMap stack:
            iload 5 /* ensureVirtual */
            aload 10 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEnsureVirtualized:()Z
            iand
            istore 5 /* ensureVirtual */
        18: .line 1040
            iinc 3 /* virtualInputs */ 1
        end local 10 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        end local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        end local 8 // org.graalvm.compiler.nodes.ValueNode alias
        19: .line 1025
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 7 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 6
        end local 7 // int i
        21: .line 1044
            iload 3 /* virtualInputs */
            aload 2 /* states */
            arraylength
            if_icmpne 66
        22: .line 1045
            iload 4 /* uniqueVirtualObject */
            ifeq 26
        23: .line 1047
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 6 /* virtualObjs */
            iconst_0
            aaload
            aload 1 /* phi */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.addVirtualAlias:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
        24: .line 1048
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            aload 1 /* phi */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.deleteNode:(Lorg/graalvm/compiler/graph/Node;)V
        25: .line 1049
            iconst_0
            ireturn
        26: .line 1052
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 7 /* compatible */
        start local 7 // boolean compatible
        27: .line 1053
            aload 6 /* virtualObjs */
            iconst_0
            aaload
            astore 8 /* firstVirtual */
        start local 8 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode firstVirtual
        28: .line 1054
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        29: goto 38
        30: .line 1055
      StackMap locals: int org.graalvm.compiler.nodes.virtual.VirtualObjectNode int
      StackMap stack:
            aload 6 /* virtualObjs */
            iload 9 /* i */
            aaload
            astore 10 /* virtual */
        start local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        31: .line 1057
            aload 8 /* firstVirtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.type:()Ljdk/vm/ci/meta/ResolvedJavaType;
            aload 10 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.type:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 32
            aload 8 /* firstVirtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            aload 10 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            if_icmpeq 34
        32: .line 1058
      StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode
      StackMap stack:
            iconst_0
            istore 7 /* compatible */
        33: .line 1059
            goto 39
        34: .line 1061
      StackMap locals:
      StackMap stack:
            aload 2 /* states */
            iconst_0
            aaload
            aload 8 /* firstVirtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            aload 2 /* states */
            iload 9 /* i */
            aaload
            aload 10 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.locksEqual:(Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;)Z
            ifne 37
        35: .line 1062
            iconst_0
            istore 7 /* compatible */
        36: .line 1063
            goto 39
        end local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        37: .line 1054
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 9 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 30
        end local 9 // int i
        39: .line 1066
      StackMap locals:
      StackMap stack:
            iload 7 /* compatible */
            ifeq 48
        40: .line 1067
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        41: goto 47
        42: .line 1068
      StackMap locals: int
      StackMap stack:
            aload 6 /* virtualObjs */
            iload 9 /* i */
            aaload
            astore 10 /* virtual */
        start local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        43: .line 1073
            aload 10 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.hasIdentity:()Z
            ifeq 46
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* phi */
            iload 9 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPhiValueAt:(Lorg/graalvm/compiler/nodes/PhiNode;I)Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* virtualObjs */
            aload 2 /* states */
            iload 9 /* i */
            aaload
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.isSingleUsageAllocation:(Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
            ifne 46
        44: .line 1074
            iconst_0
            istore 7 /* compatible */
        45: .line 1075
            goto 48
        end local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        46: .line 1067
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        47: iload 9 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 42
        end local 9 // int i
        48: .line 1079
      StackMap locals:
      StackMap stack:
            iload 7 /* compatible */
            ifeq 66
        49: .line 1080
            aload 0 /* this */
            aload 1 /* phi */
            aload 6 /* virtualObjs */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getValueObjectVirtual:(Lorg/graalvm/compiler/nodes/ValuePhiNode;Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            astore 9 /* virtual */
        start local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        50: .line 1081
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            aload 9 /* virtual */
            ldc "valueObjectNode"
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.addFloatingNode:(Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)V
        51: .line 1082
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            aload 1 /* phi */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.deleteNode:(Lorg/graalvm/compiler/graph/Node;)V
        52: .line 1083
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            iconst_m1
            if_icmpne 56
        53: .line 1084
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.virtualObjects:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 10 /* id */
        start local 10 // int id
        54: .line 1085
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.virtualObjects:Ljava/util/ArrayList;
            aload 9 /* virtual */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        55: .line 1086
            aload 9 /* virtual */
            iload 10 /* id */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.setObjectId:(I)V
        end local 10 // int id
        56: .line 1089
      StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode
      StackMap stack:
            aload 2 /* states */
            arraylength
            newarray 10
            astore 10 /* virtualObjectIds */
        start local 10 // int[] virtualObjectIds
        57: .line 1090
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        58: goto 61
        59: .line 1091
      StackMap locals: int[] int
      StackMap stack:
            aload 10 /* virtualObjectIds */
            iload 11 /* i */
            aload 6 /* virtualObjs */
            iload 11 /* i */
            aaload
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            iastore
        60: .line 1090
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        61: iload 11 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 59
        end local 11 // int i
        62: .line 1093
            aload 0 /* this */
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            aload 10 /* virtualObjectIds */
            aload 2 /* states */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeObjectStates:(I[I[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
            istore 11 /* materialized */
        start local 11 // boolean materialized
        63: .line 1094
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 9 /* virtual */
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.addVirtualAlias:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
        64: .line 1095
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 9 /* virtual */
            aload 1 /* phi */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.addVirtualAlias:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
        65: .line 1096
            iload 11 /* materialized */
            ireturn
        end local 11 // boolean materialized
        end local 10 // int[] virtualObjectIds
        end local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        end local 8 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode firstVirtual
        end local 7 // boolean compatible
        66: .line 1102
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor org.graalvm.compiler.nodes.ValuePhiNode org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] int int int org.graalvm.compiler.nodes.virtual.VirtualObjectNode[]
      StackMap stack:
            iconst_0
            istore 7 /* materialized */
        start local 7 // boolean materialized
        67: .line 1103
            iload 3 /* virtualInputs */
            ifle 78
        68: .line 1104
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        69: goto 77
        70: .line 1105
      StackMap locals: int int
      StackMap stack:
            aload 6 /* virtualObjs */
            iload 8 /* i */
            aaload
            astore 9 /* virtual */
        start local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        71: .line 1106
            aload 9 /* virtual */
            ifnull 76
        72: .line 1107
            aload 0 /* this */
            iload 8 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPredecessor:(I)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 10 /* predecessor */
        start local 10 // org.graalvm.compiler.nodes.cfg.Block predecessor
        73: .line 1108
            iload 5 /* ensureVirtual */
            ifne 75
            aload 2 /* states */
            iload 8 /* i */
            aaload
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 75
        74: .line 1110
            aload 2 /* states */
            iload 8 /* i */
            aaload
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            iconst_0
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.setEnsureVirtualized:(Z)V
        75: .line 1112
      StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode org.graalvm.compiler.nodes.cfg.Block
      StackMap stack:
            iload 7 /* materialized */
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 2 /* states */
            iload 8 /* i */
            aaload
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            aload 10 /* predecessor */
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.blockEffects:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
            aload 10 /* predecessor */
            invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.GraphEffectList
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.COUNTER_MATERIALIZATIONS_PHI:Lorg/graalvm/compiler/debug/CounterKey;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.ensureMaterialized:(Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;ILorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/debug/CounterKey;)Z
            ior
            istore 7 /* materialized */
        end local 10 // org.graalvm.compiler.nodes.cfg.Block predecessor
        end local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        76: .line 1104
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        77: iload 8 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 70
        end local 8 // int i
        78: .line 1116
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        79: goto 84
        80: .line 1117
      StackMap locals: int
      StackMap stack:
            aload 6 /* virtualObjs */
            iload 8 /* i */
            aaload
            astore 9 /* virtual */
        start local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        81: .line 1118
            aload 9 /* virtual */
            ifnull 83
        82: .line 1119
            aload 0 /* this */
            aload 1 /* phi */
            iload 8 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;
            aload 2 /* states */
            iload 8 /* i */
            aaload
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.getAliasAndResolve:(Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.setPhiInput:(Lorg/graalvm/compiler/nodes/PhiNode;ILorg/graalvm/compiler/nodes/ValueNode;)V
        end local 9 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        83: .line 1116
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        84: iload 8 /* i */
            aload 2 /* states */
            arraylength
            if_icmplt 80
        end local 8 // int i
        85: .line 1122
            iload 7 /* materialized */
            ireturn
        end local 7 // boolean materialized
        end local 6 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode[] virtualObjs
        end local 5 // boolean ensureVirtual
        end local 4 // boolean uniqueVirtualObject
        end local 3 // int virtualInputs
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState[] states
        end local 1 // org.graalvm.compiler.nodes.ValuePhiNode phi
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   86     0                 this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0   86     1                  phi  Lorg/graalvm/compiler/nodes/ValuePhiNode;
            0   86     2               states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            1   86     3        virtualInputs  I
            2   86     4  uniqueVirtualObject  Z
            3   86     5        ensureVirtual  Z
            4   86     6          virtualObjs  [Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            5   21     7                    i  I
            7   19     8                alias  Lorg/graalvm/compiler/nodes/ValueNode;
            9   19     9              virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           11   19    10          objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           27   66     7           compatible  Z
           28   66     8         firstVirtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           29   39     9                    i  I
           31   37    10              virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           41   48     9                    i  I
           43   46    10              virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           50   66     9              virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           54   56    10                   id  I
           57   66    10     virtualObjectIds  [I
           58   62    11                    i  I
           63   66    11         materialized  Z
           67   86     7         materialized  Z
           69   78     8                    i  I
           71   76     9              virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
           73   76    10          predecessor  Lorg/graalvm/compiler/nodes/cfg/Block;
           79   85     8                    i  I
           81   83     9              virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
    Signature: (Lorg/graalvm/compiler/nodes/ValuePhiNode;[Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;)Z
    MethodParameters:
        Name  Flags
      phi     
      states  

  private boolean isSingleUsageAllocation(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.virtual.VirtualObjectNode[], org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState<?>);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
        start local 1 // org.graalvm.compiler.nodes.ValueNode value
        start local 2 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode[] virtualObjs
        start local 3 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState state
         0: .line 1132
            aload 1 /* value */
            instanceof org.graalvm.compiler.nodes.virtual.AllocatedObjectNode
            ifeq 1
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.hasExactlyOneUsage:()Z
            ifne 2
         1: .line 1133
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 1139
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* singleVirtual */
        start local 4 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode singleVirtual
         3: .line 1140
            iconst_0
            istore 5 /* v */
        start local 5 // int v
         4: goto 12
         5: .line 1141
      StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode int
      StackMap stack:
            aload 3 /* state */
            aload 2 /* virtualObjs */
            iload 5 /* v */
            aaload
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.contains:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Z
            ifeq 11
         6: .line 1142
            aload 4 /* singleVirtual */
            ifnonnull 9
         7: .line 1143
            aload 2 /* virtualObjs */
            iload 5 /* v */
            aaload
            astore 4 /* singleVirtual */
         8: .line 1144
            goto 11
      StackMap locals:
      StackMap stack:
         9: aload 4 /* singleVirtual */
            aload 2 /* virtualObjs */
            iload 5 /* v */
            aaload
            if_acmpeq 11
        10: .line 1148
            iconst_0
            ireturn
        11: .line 1140
      StackMap locals:
      StackMap stack:
            iinc 5 /* v */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* v */
            aload 2 /* virtualObjs */
            arraylength
            if_icmplt 5
        end local 5 // int v
        13: .line 1152
            iconst_1
            ireturn
        end local 4 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode singleVirtual
        end local 3 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState state
        end local 2 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode[] virtualObjs
        end local 1 // org.graalvm.compiler.nodes.ValueNode value
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0   14     1          value  Lorg/graalvm/compiler/nodes/ValueNode;
            0   14     2    virtualObjs  [Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            0   14     3          state  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;
            3   14     4  singleVirtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            4   13     5              v  I
    Signature: (Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState<*>;)Z
    MethodParameters:
             Name  Flags
      value        
      virtualObjs  
      state        

  private static int lambda$0(int[], int, int);
    descriptor: ([III)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // int index
         0: .line 855
            aload 0
            ifnonnull 1
            iload 1
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0
            iload 2 /* index */
            iaload
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // int index
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     2  index  I
}
Signature: Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure<TBlockT;>.MergeProcessor;
SourceFile: "PartialEscapeClosure.java"
NestHost: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  protected abstract MergeProcessor = org.graalvm.compiler.virtual.phases.ea.EffectsClosure$MergeProcessor of org.graalvm.compiler.virtual.phases.ea.EffectsClosure
  protected MergeProcessor = org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor of org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure