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 585
            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 592
            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 593
            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 595
            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 596
            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 599
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
            ifeq 2
         1: .line 600
            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 602
      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 607
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.materializedPhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            ifnonnull 2
         1: .line 608
            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 610
      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 611
            aload 3 /* result */
            ifnonnull 6
         4: .line 612
            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 613
            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 615
      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 619
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
            ifeq 2
         1: .line 620
            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 622
      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 627
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valuePhis:Ljdk/internal/vm/compiler/collections/EconomicMap;
            ifnonnull 2
         1: .line 628
            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 630
      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 631
            aload 3 /* result */
            ifnonnull 6
         4: .line 632
            iload 2 /* entryCount */
            anewarray org.graalvm.compiler.nodes.ValuePhiNode
            astore 3 /* result */
         5: .line 633
            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 635
      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 636
      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 640
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.needsCaching:Z
            ifeq 2
         1: .line 641
            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 643
      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 644
            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 645
            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 650
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.valueObjectVirtuals:Ljdk/internal/vm/compiler/collections/EconomicMap;
            ifnonnull 2
         1: .line 651
            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 653
      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 654
            aload 3 /* result */
            ifnonnull 7
         4: .line 655
            aload 2 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.duplicate:()Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            astore 3 /* result */
         5: .line 656
            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 657
            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 659
      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 674
            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 675
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 676
      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 675
            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 680
            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 682
            iconst_0
            istore 4 /* forceMaterialization */
        start local 4 // boolean forceMaterialization
         8: .line 683
            aconst_null
            astore 5 /* forcedMaterializationValue */
        start local 5 // org.graalvm.compiler.nodes.ValueNode forcedMaterializationValue
         9: .line 684
            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 685
            aload 6 /* frameState */
            ifnull 26
            aload 6 /* frameState */
            invokevirtual org.graalvm.compiler.nodes.FrameState.isExceptionHandlingBCI:()Z
            ifeq 26
        11: .line 688
            iconst_1
            istore 4 /* forceMaterialization */
        12: .line 690
            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 691
            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 692
      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 693
            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 694
            iconst_1
            istore 8 /* nullLocals */
        start local 8 // boolean nullLocals
        17: .line 695
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        18: goto 23
        19: .line 696
      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 697
            iconst_0
            istore 8 /* nullLocals */
        21: .line 698
            goto 24
        22: .line 695
      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 701
      StackMap locals:
      StackMap stack:
            iload 8 /* nullLocals */
            ifeq 26
        25: .line 704
            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 712
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* materialized */
        start local 7 // boolean materialized
        27: .line 714
            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 715
            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 716
            goto 89
        30: .line 718
      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 719
            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 720
            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 721
            goto 87
        35: .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 int int int int[]
      StackMap stack:
            iconst_0
            istore 12 /* virtualCount */
        start local 12 // int virtualCount
        36: .line 726
            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 727
            iconst_1
            istore 14 /* locksMatch */
        start local 14 // boolean locksMatch
        38: .line 728
            iconst_1
            istore 15 /* ensureVirtual */
        start local 15 // boolean ensureVirtual
        39: .line 729
            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 730
            iconst_0
            istore 17 /* i */
        start local 17 // int i
        43: goto 65
        44: .line 731
      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 732
            iload 15 /* ensureVirtual */
            aload 18 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEnsureVirtualized:()Z
            iand
            istore 15 /* ensureVirtual */
        46: .line 733
            iload 4 /* forceMaterialization */
            ifeq 57
        47: .line 734
            aload 5 /* forcedMaterializationValue */
            ifnonnull 50
        48: .line 735
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        49: .line 736
            goto 64
        50: .line 738
      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 739
            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 740
            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 742
      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 743
            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 744
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        56: .line 745
            goto 64
        end local 20 // org.graalvm.compiler.nodes.ValueNode alias
        end local 19 // org.graalvm.compiler.nodes.ValueNode value
        57: .line 749
      StackMap locals:
      StackMap stack:
            aload 18 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 62
        58: .line 750
            iinc 12 /* virtualCount */ 1
        59: .line 751
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        60: .line 752
            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 753
            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 754
            aconst_null
            astore 16 /* uniqueMaterializedValue */
        end local 18 // org.graalvm.compiler.virtual.phases.ea.ObjectState obj
        64: .line 730
      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 758
            iload 12 /* virtualCount */
            aload 2 /* states */
            arraylength
            if_icmpne 69
            iload 14 /* locksMatch */
            ifeq 69
        67: .line 759
            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 760
            goto 87
        69: .line 761
      StackMap locals:
      StackMap stack:
            aload 16 /* uniqueMaterializedValue */
            ifnull 72
        70: .line 762
            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 763
            goto 87
        72: .line 764
      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 765
            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 766
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        75: goto 85
        76: .line 767
      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 768
            aload 19 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 83
        78: .line 769
            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 770
            iload 15 /* ensureVirtual */
            ifne 81
            aload 19 /* obj */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 81
        80: .line 773
            aload 19 /* obj */
            iconst_0
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.setEnsureVirtualized:(Z)V
        81: .line 775
      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 776
            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 778
      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 766
            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 780
            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 718
      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 786
      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 787
            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 788
            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 789
            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 786
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 90
        95: .line 792
            iload 7 /* materialized */
            ifeq 99
        96: .line 793
            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 794
            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 795
            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 797
      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 798
            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 801
            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 802
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 803
      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 802
            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 806
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         7: .line 807
            iconst_0
            istore 4 /* objectIndex */
        start local 4 // int objectIndex
         8: goto 12
         9: .line 808
      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 809
            iinc 3 /* count */ 1
        11: .line 807
      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 813
            iconst_0
            istore 4 /* index */
        start local 4 // int index
        14: .line 814
            iload 3 /* count */
            newarray 10
            astore 5 /* resultInts */
        start local 5 // int[] resultInts
        15: .line 815
            iconst_0
            istore 6 /* objectIndex */
        start local 6 // int objectIndex
        16: goto 20
        17: .line 816
      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 817
            aload 5 /* resultInts */
            iload 4 /* index */
            iinc 4 /* index */ 1
            iload 6 /* objectIndex */
            iastore
        19: .line 815
      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 820
            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 821
      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 825
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 826
      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 827
            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 828
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState state
         5: .line 825
      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 831
            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=20, 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 848
            iconst_1
            istore 4 /* compatible */
        start local 4 // boolean compatible
         1: .line 849
            iconst_1
            istore 5 /* ensureVirtual */
        start local 5 // boolean ensureVirtual
         2: .line 850
            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 852
            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 853
            aload 7 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            istore 8 /* entryCount */
        start local 8 // int entryCount
         5: .line 856
            aconst_null
            astore 9 /* twoSlotKinds */
        start local 9 // jdk.vm.ci.meta.JavaKind[] twoSlotKinds
         6: .line 859
            aconst_null
            astore 10 /* virtualByteCount */
        start local 10 // int[] virtualByteCount
         7: .line 860
            aconst_null
            astore 11 /* virtualKinds */
        start local 11 // jdk.vm.ci.meta.JavaKind[] virtualKinds
         8: .line 862
            iconst_0
            istore 12 /* i */
        start local 12 // int i
         9: goto 48
        10: .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[] jdk.vm.ci.meta.JavaKind[] int
      StackMap stack:
            aload 3 /* states */
            iload 12 /* i */
            aaload
            aload 6 /* getObject */
            iload 12 /* 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 13 /* objectState */
        start local 13 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        11: .line 864
            aload 13 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntries:()[Lorg/graalvm/compiler/nodes/ValueNode;
            astore 14 /* entries */
        start local 14 // org.graalvm.compiler.nodes.ValueNode[] entries
        12: .line 865
            iconst_0
            istore 15 /* valueIndex */
        start local 15 // int valueIndex
        13: .line 866
            iload 5 /* ensureVirtual */
            aload 13 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEnsureVirtualized:()Z
            iand
            istore 5 /* ensureVirtual */
        14: .line 867
            goto 46
        15: .line 868
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.ObjectState org.graalvm.compiler.nodes.ValueNode[] int
      StackMap stack:
            aload 14 /* entries */
            iload 15 /* valueIndex */
            aaload
            invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 16 /* otherKind */
        start local 16 // jdk.vm.ci.meta.JavaKind otherKind
        16: .line 869
            aload 7 /* virtual */
            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.getMetaAccessExtensionProvider:()Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;
            iload 15 /* valueIndex */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;I)Ljdk/vm/ci/meta/JavaKind;
            astore 17 /* entryKind */
        start local 17 // jdk.vm.ci.meta.JavaKind entryKind
        17: .line 870
            aload 17 /* entryKind */
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 26
            aload 16 /* otherKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.needsTwoSlots:()Z
            ifeq 26
        18: .line 871
            aload 9 /* twoSlotKinds */
            ifnonnull 20
        19: .line 872
            iload 8 /* entryCount */
            anewarray jdk.vm.ci.meta.JavaKind
            astore 9 /* twoSlotKinds */
        20: .line 874
      StackMap locals: jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind
      StackMap stack:
            aload 9 /* twoSlotKinds */
            iload 15 /* valueIndex */
            aaload
            ifnull 23
            aload 9 /* twoSlotKinds */
            iload 15 /* valueIndex */
            aaload
            aload 16 /* otherKind */
            if_acmpeq 23
        21: .line 875
            iconst_0
            istore 4 /* compatible */
        22: .line 876
            goto 49
        23: .line 878
      StackMap locals:
      StackMap stack:
            aload 9 /* twoSlotKinds */
            iload 15 /* valueIndex */
            aload 16 /* otherKind */
            aastore
        24: .line 880
            iinc 15 /* valueIndex */ 1
        25: .line 881
            goto 45
      StackMap locals:
      StackMap stack:
        26: aload 7 /* virtual */
            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.getMetaAccessExtensionProvider:()Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.isVirtualByteArray:(Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;)Z
            ifeq 43
        27: .line 882
            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;
            aload 14 /* entries */
            iload 15 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getVirtualByteCount:([Lorg/graalvm/compiler/nodes/ValueNode;I)I
            istore 18 /* bytecount */
        start local 18 // int bytecount
        28: .line 915
            iload 18 /* bytecount */
            iconst_1
            if_icmple 45
        29: .line 916
            aload 10 /* virtualByteCount */
            ifnonnull 31
        30: .line 917
            iload 8 /* entryCount */
            newarray 10
            astore 10 /* virtualByteCount */
        31: .line 919
      StackMap locals: int
      StackMap stack:
            aload 11 /* virtualKinds */
            ifnonnull 33
        32: .line 920
            iload 8 /* entryCount */
            anewarray jdk.vm.ci.meta.JavaKind
            astore 11 /* virtualKinds */
        33: .line 922
      StackMap locals:
      StackMap stack:
            aload 10 /* virtualByteCount */
            iload 15 /* valueIndex */
            iaload
            ifeq 36
            aload 10 /* virtualByteCount */
            iload 15 /* valueIndex */
            iaload
            iload 18 /* bytecount */
            if_icmpeq 36
        34: .line 923
            iconst_0
            istore 4 /* compatible */
        35: .line 924
            goto 49
        36: .line 928
      StackMap locals:
      StackMap stack:
            aload 11 /* virtualKinds */
            iload 15 /* valueIndex */
            aaload
            ifnull 39
            aload 11 /* virtualKinds */
            iload 15 /* valueIndex */
            aaload
            aload 16 /* otherKind */
            if_acmpeq 39
        37: .line 929
            iconst_0
            istore 4 /* compatible */
        38: .line 930
            goto 49
        39: .line 932
      StackMap locals:
      StackMap stack:
            aload 10 /* virtualByteCount */
            iload 15 /* valueIndex */
            iload 18 /* bytecount */
            iastore
        40: .line 933
            aload 11 /* virtualKinds */
            iload 15 /* valueIndex */
            aload 16 /* otherKind */
            aastore
        41: .line 935
            iload 15 /* valueIndex */
            iload 18 /* bytecount */
            iadd
            iconst_1
            isub
            istore 15 /* valueIndex */
        end local 18 // int bytecount
        42: .line 937
            goto 45
        43: .line 938
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 45
            aload 17 /* entryKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 16 /* otherKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 45
            aload 17 /* entryKind */
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 44
            aload 16 /* otherKind */
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 45
        44: .line 939
      StackMap locals:
      StackMap stack:
            aload 17 /* entryKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            aload 16 /* otherKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            if_icmpge 45
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 17 /* 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 16 /* 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
        45: .line 941
      StackMap locals:
      StackMap stack:
            iinc 15 /* valueIndex */ 1
        end local 17 // jdk.vm.ci.meta.JavaKind entryKind
        end local 16 // jdk.vm.ci.meta.JavaKind otherKind
        46: .line 867
      StackMap locals:
      StackMap stack:
            iload 15 /* valueIndex */
            iload 8 /* entryCount */
            if_icmplt 15
        end local 15 // int valueIndex
        end local 14 // org.graalvm.compiler.nodes.ValueNode[] entries
        end local 13 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        47: .line 862
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        48: iload 12 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 10
        end local 12 // int i
        49: .line 944
      StackMap locals:
      StackMap stack:
            iload 4 /* compatible */
            ifeq 75
            aload 9 /* twoSlotKinds */
            ifnull 75
        50: .line 946
            iconst_0
            istore 12 /* valueIndex */
        start local 12 // int valueIndex
        51: goto 74
        52: .line 947
      StackMap locals: int
      StackMap stack:
            aload 9 /* twoSlotKinds */
            iload 12 /* valueIndex */
            aaload
            ifnull 73
        53: .line 948
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 56
            iload 12 /* valueIndex */
            aload 7 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryCount:()I
            iconst_1
            isub
            if_icmpge 55
            aload 7 /* virtual */
            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.getMetaAccessExtensionProvider:()Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;
            iload 12 /* valueIndex */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;I)Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 55
        54: .line 949
            aload 7 /* virtual */
            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.getMetaAccessExtensionProvider:()Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;
            iload 12 /* valueIndex */
            iconst_1
            iadd
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;I)Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 56
      StackMap locals:
      StackMap stack:
        55: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        56: .line 950
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        57: goto 72
        58: .line 951
      StackMap locals: int
      StackMap stack:
            aload 6 /* getObject */
            iload 13 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            istore 14 /* object */
        start local 14 // int object
        59: .line 952
            aload 3 /* states */
            iload 13 /* i */
            aaload
            iload 14 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 15 /* objectState */
        start local 15 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        60: .line 953
            aload 15 /* objectState */
            iload 12 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 16 /* value */
        start local 16 // org.graalvm.compiler.nodes.ValueNode value
        61: .line 954
            aload 16 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 17 /* valueKind */
        start local 17 // jdk.vm.ci.meta.JavaKind valueKind
        62: .line 955
            aload 17 /* valueKind */
            aload 9 /* twoSlotKinds */
            iload 12 /* valueIndex */
            aaload
            if_acmpeq 71
        63: .line 956
            aload 15 /* objectState */
            iload 12 /* valueIndex */
            iconst_1
            iadd
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 18 /* nextValue */
        start local 18 // org.graalvm.compiler.nodes.ValueNode nextValue
        64: .line 957
            aload 16 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 69
            aload 16 /* 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 69
            aload 18 /* nextValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 69
            aload 18 /* 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 69
        65: .line 959
            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 12 /* valueIndex */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;I)V
        66: .line 960
            aload 3 /* states */
            iload 13 /* i */
            aaload
            iload 14 /* object */
            iload 12 /* valueIndex */
            aload 9 /* twoSlotKinds */
            iload 12 /* 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
        67: .line 961
            aload 3 /* states */
            iload 13 /* i */
            aaload
            iload 14 /* object */
            iload 12 /* valueIndex */
            iconst_1
            iadd
            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.getIllegalConstant:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.setEntry:(IILorg/graalvm/compiler/nodes/ValueNode;)V
        68: .line 962
            goto 71
        69: .line 963
      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[] 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 */
        70: .line 964
            goto 75
        end local 18 // org.graalvm.compiler.nodes.ValueNode nextValue
        end local 17 // jdk.vm.ci.meta.JavaKind valueKind
        end local 16 // org.graalvm.compiler.nodes.ValueNode value
        end local 15 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        end local 14 // int object
        71: .line 950
      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[] jdk.vm.ci.meta.JavaKind[] int int
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        72: iload 13 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 58
        end local 13 // int i
        73: .line 946
      StackMap locals:
      StackMap stack:
            iinc 12 /* valueIndex */ 1
      StackMap locals:
      StackMap stack:
        74: iload 12 /* valueIndex */
            iload 8 /* entryCount */
            if_icmplt 52
        end local 12 // int valueIndex
        75: .line 971
      StackMap locals:
      StackMap stack:
            iload 4 /* compatible */
            ifeq 100
            aload 10 /* virtualByteCount */
            ifnull 100
        76: .line 972
            getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.$assertionsDisabled:Z
            ifne 77
            aload 9 /* twoSlotKinds */
            ifnull 77
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        77: .line 974
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 12 /* valueIndex */
        start local 12 // int valueIndex
        78: goto 99
        79: .line 975
      StackMap locals: int
      StackMap stack:
            aload 10 /* virtualByteCount */
            iload 12 /* valueIndex */
            iaload
            ifeq 98
        80: .line 976
            aload 10 /* virtualByteCount */
            iload 12 /* valueIndex */
            iaload
            istore 13 /* byteCount */
        start local 13 // int byteCount
        81: .line 977
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        82: goto 97
        83: .line 978
      StackMap locals: int int
      StackMap stack:
            aload 6 /* getObject */
            iload 14 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            istore 15 /* object */
        start local 15 // int object
        84: .line 979
            aload 3 /* states */
            iload 14 /* i */
            aaload
            iload 15 /* object */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.getObjectState:(I)Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
            astore 16 /* objectState */
        start local 16 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        85: .line 980
            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;
            aload 16 /* objectState */
            iload 13 /* byteCount */
            iload 12 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.isEntryDefaults:(Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;II)Z
            ifeq 93
        86: .line 982
            aload 3 /* states */
            iload 14 /* i */
            aaload
            iload 15 /* object */
            iload 12 /* valueIndex */
            aload 11 /* virtualKinds */
            iload 12 /* valueIndex */
            aaload
            invokestatic org.graalvm.compiler.nodes.ConstantNode.defaultForKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/nodes/ConstantNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.setEntry:(IILorg/graalvm/compiler/nodes/ValueNode;)V
        87: .line 983
            iload 12 /* valueIndex */
            iconst_1
            iadd
            istore 17 /* illegalIndex */
        start local 17 // int illegalIndex
        88: goto 91
        89: .line 984
      StackMap locals: int org.graalvm.compiler.virtual.phases.ea.ObjectState int
      StackMap stack:
            aload 3 /* states */
            iload 14 /* i */
            aaload
            iload 15 /* object */
            iload 17 /* illegalIndex */
            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.getIllegalConstant:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.setEntry:(IILorg/graalvm/compiler/nodes/ValueNode;)V
        90: .line 983
            iinc 17 /* illegalIndex */ 1
      StackMap locals:
      StackMap stack:
        91: iload 17 /* illegalIndex */
            iload 12 /* valueIndex */
            iload 13 /* byteCount */
            iadd
            if_icmplt 89
        end local 17 // int illegalIndex
        92: .line 986
            goto 96
        93: .line 987
      StackMap locals:
      StackMap stack:
            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;
            aload 16 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntries:()[Lorg/graalvm/compiler/nodes/ValueNode;
            iload 12 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getVirtualByteCount:([Lorg/graalvm/compiler/nodes/ValueNode;I)I
            iload 13 /* byteCount */
            if_icmpeq 96
        94: .line 988
            iconst_0
            istore 4 /* compatible */
        95: .line 989
            goto 100
        end local 16 // org.graalvm.compiler.virtual.phases.ea.ObjectState objectState
        end local 15 // int object
        96: .line 977
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        97: iload 14 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 83
        end local 14 // int i
        end local 13 // int byteCount
        98: .line 974
      StackMap locals:
      StackMap stack:
            iinc 12 /* valueIndex */ 1
      StackMap locals:
      StackMap stack:
        99: iload 12 /* valueIndex */
            iload 8 /* entryCount */
            if_icmplt 79
        end local 12 // int valueIndex
       100: .line 997
      StackMap locals:
      StackMap stack:
            iload 4 /* compatible */
            ifeq 143
       101: .line 999
            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 12 /* values */
        start local 12 // org.graalvm.compiler.nodes.ValueNode[] values
       102: .line 1000
            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 13 /* phis */
        start local 13 // org.graalvm.compiler.nodes.PhiNode[] phis
       103: .line 1001
            iconst_0
            istore 14 /* valueIndex */
        start local 14 // int valueIndex
       104: .line 1002
            goto 120
       105: .line 1003
      StackMap locals: org.graalvm.compiler.nodes.ValueNode[] org.graalvm.compiler.nodes.PhiNode[] int
      StackMap stack:
            iconst_1
            istore 15 /* i */
        start local 15 // int i
       106: goto 112
       107: .line 1004
      StackMap locals: int
      StackMap stack:
            aload 13 /* phis */
            iload 14 /* valueIndex */
            aaload
            ifnonnull 111
       108: .line 1005
            aload 3 /* states */
            iload 15 /* i */
            aaload
            aload 6 /* getObject */
            iload 15 /* 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 14 /* valueIndex */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.getEntry:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 16 /* field */
        start local 16 // org.graalvm.compiler.nodes.ValueNode field
       109: .line 1006
            aload 12 /* values */
            iload 14 /* valueIndex */
            aaload
            aload 16 /* field */
            if_acmpeq 111
       110: .line 1007
            aload 13 /* phis */
            iload 14 /* valueIndex */
            aload 0 /* this */
            aload 12 /* values */
            iload 14 /* 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 16 // org.graalvm.compiler.nodes.ValueNode field
       111: .line 1003
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
       112: iload 15 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 107
        end local 15 // int i
       113: .line 1011
            aload 13 /* phis */
            iload 14 /* valueIndex */
            aaload
            ifnull 115
            aload 13 /* phis */
            iload 14 /* 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 12 /* values */
            iload 14 /* 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 115
       114: .line 1012
            aload 13 /* phis */
            iload 14 /* valueIndex */
            aload 0 /* this */
            aload 12 /* values */
            iload 14 /* 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
       115: .line 1014
      StackMap locals:
      StackMap stack:
            aload 9 /* twoSlotKinds */
            ifnull 119
            aload 9 /* twoSlotKinds */
            iload 14 /* valueIndex */
            aaload
            ifnull 119
       116: .line 1016
            iinc 14 /* valueIndex */ 1
       117: .line 1017
            aload 13 /* phis */
            iload 14 /* valueIndex */
            aconst_null
            aastore
       118: .line 1018
            aload 12 /* values */
            iload 14 /* valueIndex */
            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.getIllegalConstant:()Lorg/graalvm/compiler/nodes/ValueNode;
            aastore
       119: .line 1020
      StackMap locals:
      StackMap stack:
            iinc 14 /* valueIndex */ 1
       120: .line 1002
      StackMap locals:
      StackMap stack:
            iload 14 /* valueIndex */
            aload 12 /* values */
            arraylength
            if_icmplt 105
       121: .line 1023
            iconst_0
            istore 15 /* materialized */
        start local 15 // boolean materialized
       122: .line 1024
            iconst_0
            istore 16 /* i */
        start local 16 // int i
       123: goto 140
       124: .line 1025
      StackMap locals: int int
      StackMap stack:
            aload 13 /* phis */
            iload 16 /* i */
            aaload
            astore 17 /* phi */
        start local 17 // org.graalvm.compiler.nodes.PhiNode phi
       125: .line 1026
            aload 17 /* phi */
            ifnull 139
       126: .line 1027
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.mergeEffects:Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            aload 17 /* phi */
            ldc "virtualMergePhi"
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.addFloatingNode:(Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)V
       127: .line 1028
            aload 7 /* virtual */
            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.getMetaAccessExtensionProvider:()Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;
            iload 16 /* i */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.entryKind:(Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;I)Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 130
       128: .line 1029
            iload 15 /* materialized */
            aload 0 /* this */
            aload 6 /* getObject */
            aload 3 /* states */
            aload 17 /* phi */
            iload 16 /* 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 15 /* materialized */
       129: .line 1030
            goto 138
       130: .line 1031
      StackMap locals: org.graalvm.compiler.nodes.PhiNode
      StackMap stack:
            iconst_0
            istore 18 /* i2 */
        start local 18 // int i2
       131: goto 137
       132: .line 1032
      StackMap locals: int
      StackMap stack:
            aload 3 /* states */
            iload 18 /* i2 */
            aaload
            aload 6 /* getObject */
            iload 18 /* 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 19 /* state */
        start local 19 // org.graalvm.compiler.virtual.phases.ea.ObjectState state
       133: .line 1033
            aload 19 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifne 135
       134: .line 1034
            goto 138
       135: .line 1036
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.ObjectState
      StackMap stack:
            aload 0 /* this */
            aload 17 /* phi */
            iload 18 /* i2 */
            aload 19 /* state */
            iload 16 /* 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 19 // org.graalvm.compiler.virtual.phases.ea.ObjectState state
       136: .line 1031
            iinc 18 /* i2 */ 1
      StackMap locals:
      StackMap stack:
       137: iload 18 /* i2 */
            aload 3 /* states */
            arraylength
            if_icmplt 132
        end local 18 // int i2
       138: .line 1039
      StackMap locals:
      StackMap stack:
            aload 12 /* values */
            iload 16 /* i */
            aload 17 /* phi */
            aastore
        end local 17 // org.graalvm.compiler.nodes.PhiNode phi
       139: .line 1024
      StackMap locals:
      StackMap stack:
            iinc 16 /* i */ 1
      StackMap locals:
      StackMap stack:
       140: iload 16 /* i */
            aload 12 /* values */
            arraylength
            if_icmplt 124
        end local 16 // int i
       141: .line 1042
            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 12 /* 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
       142: .line 1043
            iload 15 /* materialized */
            ireturn
        end local 15 // boolean materialized
        end local 14 // int valueIndex
        end local 13 // org.graalvm.compiler.nodes.PhiNode[] phis
        end local 12 // org.graalvm.compiler.nodes.ValueNode[] values
       143: .line 1046
      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[] 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 12 /* materializedValuePhi */
        start local 12 // org.graalvm.compiler.nodes.PhiNode materializedValuePhi
       144: .line 1047
            iconst_0
            istore 13 /* i */
        start local 13 // int i
       145: goto 152
       146: .line 1048
      StackMap locals: org.graalvm.compiler.nodes.PhiNode int
      StackMap stack:
            aload 0 /* this */
            iload 13 /* i */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor.getPredecessor:(I)Lorg/graalvm/compiler/nodes/cfg/Block;
            astore 14 /* predecessor */
        start local 14 // org.graalvm.compiler.nodes.cfg.Block predecessor
       147: .line 1049
            iload 5 /* ensureVirtual */
            ifne 149
            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;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 149
       148: .line 1051
            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;
            iconst_0
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.setEnsureVirtualized:(Z)V
       149: .line 1053
      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 13 /* i */
            aaload
            aload 6 /* getObject */
            iload 13 /* i */
            invokeinterface java.util.function.IntUnaryOperator.applyAsInt:(I)I
            aload 14 /* 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 14 /* 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
       150: .line 1054
            aload 0 /* this */
            aload 12 /* materializedValuePhi */
            iload 13 /* i */
            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;
            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 14 // org.graalvm.compiler.nodes.cfg.Block predecessor
       151: .line 1047
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
       152: iload 13 /* i */
            aload 3 /* states */
            arraylength
            if_icmplt 146
        end local 13 // int i
       153: .line 1056
            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 12 /* 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
       154: .line 1057
            iconst_1
            ireturn
        end local 12 // org.graalvm.compiler.nodes.PhiNode materializedValuePhi
        end local 11 // jdk.vm.ci.meta.JavaKind[] virtualKinds
        end local 10 // int[] virtualByteCount
        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  155     0                  this  Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            0  155     1          resultObject  I
            0  155     2         sourceObjects  [I
            0  155     3                states  [Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            1  155     4            compatible  Z
            2  155     5         ensureVirtual  Z
            3  155     6             getObject  Ljava/util/function/IntUnaryOperator;
            4  155     7               virtual  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            5  155     8            entryCount  I
            6  155     9          twoSlotKinds  [Ljdk/vm/ci/meta/JavaKind;
            7  155    10      virtualByteCount  [I
            8  155    11          virtualKinds  [Ljdk/vm/ci/meta/JavaKind;
            9   49    12                     i  I
           11   47    13           objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           12   47    14               entries  [Lorg/graalvm/compiler/nodes/ValueNode;
           13   47    15            valueIndex  I
           16   46    16             otherKind  Ljdk/vm/ci/meta/JavaKind;
           17   46    17             entryKind  Ljdk/vm/ci/meta/JavaKind;
           28   42    18             bytecount  I
           51   75    12            valueIndex  I
           57   73    13                     i  I
           59   71    14                object  I
           60   71    15           objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           61   71    16                 value  Lorg/graalvm/compiler/nodes/ValueNode;
           62   71    17             valueKind  Ljdk/vm/ci/meta/JavaKind;
           64   71    18             nextValue  Lorg/graalvm/compiler/nodes/ValueNode;
           78  100    12            valueIndex  I
           81   98    13             byteCount  I
           82   98    14                     i  I
           84   96    15                object  I
           85   96    16           objectState  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
           88   92    17          illegalIndex  I
          102  143    12                values  [Lorg/graalvm/compiler/nodes/ValueNode;
          103  143    13                  phis  [Lorg/graalvm/compiler/nodes/PhiNode;
          104  143    14            valueIndex  I
          106  113    15                     i  I
          109  111    16                 field  Lorg/graalvm/compiler/nodes/ValueNode;
          122  143    15          materialized  Z
          123  141    16                     i  I
          125  139    17                   phi  Lorg/graalvm/compiler/nodes/PhiNode;
          131  138    18                    i2  I
          133  136    19                 state  Lorg/graalvm/compiler/virtual/phases/ea/ObjectState;
          144  155    12  materializedValuePhi  Lorg/graalvm/compiler/nodes/PhiNode;
          145  153    13                     i  I
          147  151    14           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 1068
            iconst_0
            istore 5 /* materialized */
        start local 5 // boolean materialized
         1: .line 1069
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         2: goto 17
         3: .line 1070
      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 1071
            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 1072
            aload 8 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifne 7
         6: .line 1073
            goto 18
         7: .line 1075
      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 1076
            aload 9 /* entry */
            instanceof org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            ifeq 15
         9: .line 1077
            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 1078
            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 1079
            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 1080
            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 1081
            aload 8 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 15
        14: .line 1082
            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 1085
      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 1069
            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 1087
      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 1103
            iconst_0
            istore 3 /* virtualInputs */
        start local 3 // int virtualInputs
         1: .line 1104
            iconst_1
            istore 4 /* uniqueVirtualObject */
        start local 4 // boolean uniqueVirtualObject
         2: .line 1105
            iconst_1
            istore 5 /* ensureVirtual */
        start local 5 // boolean ensureVirtual
         3: .line 1106
            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 1107
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 20
         6: .line 1108
      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 1109
            aload 8 /* alias */
            instanceof org.graalvm.compiler.nodes.virtual.VirtualObjectNode
            ifeq 19
         8: .line 1110
            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 1111
            aload 6 /* virtualObjs */
            iload 7 /* i */
            aload 9 /* virtual */
            aastore
        10: .line 1112
            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 1113
            aload 10 /* objectState */
            ifnonnull 14
        12: .line 1114
            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 1115
      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 1117
      StackMap locals:
      StackMap stack:
            aload 10 /* objectState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.ObjectState.isVirtual:()Z
            ifeq 19
        15: .line 1118
            aload 6 /* virtualObjs */
            iconst_0
            aaload
            aload 8 /* alias */
            if_acmpeq 17
        16: .line 1119
            iconst_0
            istore 4 /* uniqueVirtualObject */
        17: .line 1121
      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 1122
            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 1107
      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 1126
            iload 3 /* virtualInputs */
            aload 2 /* states */
            arraylength
            if_icmpne 66
        22: .line 1127
            iload 4 /* uniqueVirtualObject */
            ifeq 26
        23: .line 1129
            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 1130
            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 1131
            iconst_0
            ireturn
        26: .line 1134
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 7 /* compatible */
        start local 7 // boolean compatible
        27: .line 1135
            aload 6 /* virtualObjs */
            iconst_0
            aaload
            astore 8 /* firstVirtual */
        start local 8 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode firstVirtual
        28: .line 1136
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        29: goto 38
        30: .line 1137
      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 1139
            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 1140
      StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode
      StackMap stack:
            iconst_0
            istore 7 /* compatible */
        33: .line 1141
            goto 39
        34: .line 1143
      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 1144
            iconst_0
            istore 7 /* compatible */
        36: .line 1145
            goto 39
        end local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        37: .line 1136
      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 1148
      StackMap locals:
      StackMap stack:
            iload 7 /* compatible */
            ifeq 48
        40: .line 1149
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        41: goto 47
        42: .line 1150
      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 1155
            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 1156
            iconst_0
            istore 7 /* compatible */
        45: .line 1157
            goto 48
        end local 10 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtual
        46: .line 1149
      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 1161
      StackMap locals:
      StackMap stack:
            iload 7 /* compatible */
            ifeq 66
        49: .line 1162
            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 1163
            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 1164
            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 1165
            aload 9 /* virtual */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.getObjectId:()I
            iconst_m1
            if_icmpne 56
        53: .line 1166
            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 1167
            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 1168
            aload 9 /* virtual */
            iload 10 /* id */
            invokevirtual org.graalvm.compiler.nodes.virtual.VirtualObjectNode.setObjectId:(I)V
        end local 10 // int id
        56: .line 1171
      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 1172
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        58: goto 61
        59: .line 1173
      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 1172
            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 1175
            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 1176
            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 1177
            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 1178
            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 1184
      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 1185
            iload 3 /* virtualInputs */
            ifle 78
        68: .line 1186
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        69: goto 77
        70: .line 1187
      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 1188
            aload 9 /* virtual */
            ifnull 76
        72: .line 1189
            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 1190
            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 1192
            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 1194
      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 1186
      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 1198
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        79: goto 84
        80: .line 1199
      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 1200
            aload 9 /* virtual */
            ifnull 83
        82: .line 1201
            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 1198
      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 1204
            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 1214
            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 1215
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 1221
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* singleVirtual */
        start local 4 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode singleVirtual
         3: .line 1222
            iconst_0
            istore 5 /* v */
        start local 5 // int v
         4: goto 12
         5: .line 1223
      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 1224
            aload 4 /* singleVirtual */
            ifnonnull 9
         7: .line 1225
            aload 2 /* virtualObjs */
            iload 5 /* v */
            aaload
            astore 4 /* singleVirtual */
         8: .line 1226
            goto 11
      StackMap locals:
      StackMap stack:
         9: aload 4 /* singleVirtual */
            aload 2 /* virtualObjs */
            iload 5 /* v */
            aaload
            if_acmpeq 11
        10: .line 1230
            iconst_0
            ireturn
        11: .line 1222
      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 1234
            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 850
            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