public final class org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure extends org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure<org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState>
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure
  super_class: org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure
{
  private static final java.util.EnumMap<jdk.vm.ci.meta.JavaKind, org.graalvm.word.LocationIdentity> UNBOX_LOCATIONS;
    descriptor: Ljava/util/EnumMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/EnumMap<Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/word/LocationIdentity;>;

  private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, 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=5, locals=4, args_size=0
         0: .line 77
            ldc Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            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.PEReadEliminationClosure.$assertionsDisabled:Z
         3: .line 82
            new java.util.EnumMap
            dup
            ldc Ljdk/vm/ci/meta/JavaKind;
            invokespecial java.util.EnumMap.<init>:(Ljava/lang/Class;)V
            putstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.UNBOX_LOCATIONS:Ljava/util/EnumMap;
         4: .line 83
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            dup
            astore 3
            arraylength
            istore 2
            iconst_0
            istore 1
            goto 8
      StackMap locals: top int int jdk.vm.ci.meta.JavaKind[]
      StackMap stack:
         5: aload 3
            iload 1
            aaload
            astore 0 /* kind */
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         6: .line 84
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.UNBOX_LOCATIONS:Ljava/util/EnumMap;
            aload 0 /* kind */
            new java.lang.StringBuilder
            dup
            ldc "PEA unbox "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getJavaName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.nodes.NamedLocationIdentity.immutable:(Ljava/lang/String;)Lorg/graalvm/compiler/nodes/NamedLocationIdentity;
            invokevirtual java.util.EnumMap.put:(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 0 // jdk.vm.ci.meta.JavaKind kind
         7: .line 83
            iinc 1 1
      StackMap locals:
      StackMap stack:
         8: iload 1
            iload 2
            if_icmplt 5
         9: .line 86
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            6    7     0  kind  Ljdk/vm/ci/meta/JavaKind;

  public void <init>(org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult, org.graalvm.compiler.nodes.spi.CoreProviders);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;Lorg/graalvm/compiler/nodes/spi/CoreProviders;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult schedule
        start local 2 // org.graalvm.compiler.nodes.spi.CoreProviders providers
         0: .line 89
            aload 0 /* this */
            aload 1 /* schedule */
            aload 2 /* providers */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.<init>:(Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;Lorg/graalvm/compiler/nodes/spi/CoreProviders;)V
         1: .line 90
            return
        end local 2 // org.graalvm.compiler.nodes.spi.CoreProviders providers
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult schedule
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    2     1   schedule  Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
            0    2     2  providers  Lorg/graalvm/compiler/nodes/spi/CoreProviders;
    MethodParameters:
           Name  Flags
      schedule   
      providers  

  protected org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState getInitialState();
    descriptor: ()Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
         0: .line 94
            new org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.tool:Lorg/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.tool:Lorg/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            invokespecial org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.<init>:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;)V
            areturn
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;

  protected boolean processNode(org.graalvm.compiler.graph.Node, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList, org.graalvm.compiler.nodes.FixedWithNextNode);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.graph.Node node
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        start local 4 // org.graalvm.compiler.nodes.FixedWithNextNode lastFixedNode
         0: .line 99
            aload 0 /* this */
            aload 1 /* node */
            aload 2 /* state */
            aload 3 /* effects */
            aload 4 /* lastFixedNode */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.processNode:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)Z
            ifeq 2
         1: .line 100
            iconst_1
            ireturn
         2: .line 103
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.currentMode:Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure$EffectsClosureMode;
            getstatic org.graalvm.compiler.virtual.phases.ea.EffectsClosure$EffectsClosureMode.REGULAR_VIRTUALIZATION:Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure$EffectsClosureMode;
            if_acmpeq 4
         3: .line 108
            iconst_0
            ireturn
         4: .line 111
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.java.LoadFieldNode
            ifeq 6
         5: .line 112
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.java.LoadFieldNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoadField:(Lorg/graalvm/compiler/nodes/java/LoadFieldNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
         6: .line 113
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.java.StoreFieldNode
            ifeq 8
         7: .line 114
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.java.StoreFieldNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processStoreField:(Lorg/graalvm/compiler/nodes/java/StoreFieldNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
         8: .line 115
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.java.LoadIndexedNode
            ifeq 10
         9: .line 116
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.java.LoadIndexedNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoadIndexed:(Lorg/graalvm/compiler/nodes/java/LoadIndexedNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        10: .line 117
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.java.StoreIndexedNode
            ifeq 12
        11: .line 118
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.java.StoreIndexedNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processStoreIndexed:(Lorg/graalvm/compiler/nodes/java/StoreIndexedNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        12: .line 119
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.java.ArrayLengthNode
            ifeq 14
        13: .line 120
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.java.ArrayLengthNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processArrayLength:(Lorg/graalvm/compiler/nodes/java/ArrayLengthNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        14: .line 121
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.extended.UnboxNode
            ifeq 16
        15: .line 122
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.extended.UnboxNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processUnbox:(Lorg/graalvm/compiler/nodes/extended/UnboxNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        16: .line 123
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.extended.RawLoadNode
            ifeq 18
        17: .line 124
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.extended.RawLoadNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processUnsafeLoad:(Lorg/graalvm/compiler/nodes/extended/RawLoadNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        18: .line 125
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.extended.RawStoreNode
            ifeq 20
        19: .line 126
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.extended.RawStoreNode
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processUnsafeStore:(Lorg/graalvm/compiler/nodes/extended/RawStoreNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        20: .line 127
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.memory.SingleMemoryKill
            ifeq 25
        21: .line 128
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.COUNTER_MEMORYCHECKPOINT:Lorg/graalvm/compiler/debug/CounterKey;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        22: .line 129
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.memory.SingleMemoryKill
            invokeinterface org.graalvm.compiler.nodes.memory.SingleMemoryKill.getKilledLocationIdentity:()Lorg/graalvm/word/LocationIdentity;
            astore 5 /* identity */
        start local 5 // org.graalvm.word.LocationIdentity identity
        23: .line 130
            aload 2 /* state */
            aload 5 /* identity */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processIdentity:(Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/word/LocationIdentity;)V
        end local 5 // org.graalvm.word.LocationIdentity identity
        24: .line 131
            goto 32
      StackMap locals:
      StackMap stack:
        25: aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.memory.MultiMemoryKill
            ifeq 32
        26: .line 132
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.COUNTER_MEMORYCHECKPOINT:Lorg/graalvm/compiler/debug/CounterKey;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.graph.Node.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        27: .line 133
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.memory.MultiMemoryKill
            invokeinterface org.graalvm.compiler.nodes.memory.MultiMemoryKill.getKilledLocationIdentities:()[Lorg/graalvm/word/LocationIdentity;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 31
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.graph.Node org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.GraphEffectList org.graalvm.compiler.nodes.FixedWithNextNode top int int org.graalvm.word.LocationIdentity[]
      StackMap stack:
        28: aload 8
            iload 6
            aaload
            astore 5 /* identity */
        start local 5 // org.graalvm.word.LocationIdentity identity
        29: .line 134
            aload 2 /* state */
            aload 5 /* identity */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processIdentity:(Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/word/LocationIdentity;)V
        end local 5 // org.graalvm.word.LocationIdentity identity
        30: .line 133
            iinc 6 1
      StackMap locals:
      StackMap stack:
        31: iload 6
            iload 7
            if_icmplt 28
        32: .line 138
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.graph.Node org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.GraphEffectList org.graalvm.compiler.nodes.FixedWithNextNode
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // org.graalvm.compiler.nodes.FixedWithNextNode lastFixedNode
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.graph.Node node
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   33     0           this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   33     1           node  Lorg/graalvm/compiler/graph/Node;
            0   33     2          state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   33     3        effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            0   33     4  lastFixedNode  Lorg/graalvm/compiler/nodes/FixedWithNextNode;
           23   24     5       identity  Lorg/graalvm/word/LocationIdentity;
           29   30     5       identity  Lorg/graalvm/word/LocationIdentity;
    MethodParameters:
               Name  Flags
      node           
      state          
      effects        
      lastFixedNode  

  private boolean processStore(org.graalvm.compiler.nodes.FixedNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.word.LocationIdentity, int, jdk.vm.ci.meta.JavaKind, boolean, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=14, args_size=10
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.FixedNode store
        start local 2 // org.graalvm.compiler.nodes.ValueNode object
        start local 3 // org.graalvm.word.LocationIdentity identity
        start local 4 // int index
        start local 5 // jdk.vm.ci.meta.JavaKind accessKind
        start local 6 // boolean overflowAccess
        start local 7 // org.graalvm.compiler.nodes.ValueNode value
        start local 8 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 9 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 143
            aload 2 /* object */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* unproxiedObject */
        start local 10 // org.graalvm.compiler.nodes.ValueNode unproxiedObject
         1: .line 144
            aload 8 /* state */
            aload 2 /* object */
            aload 3 /* identity */
            iload 4 /* index */
            aload 5 /* accessKind */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 11 /* cachedValue */
        start local 11 // org.graalvm.compiler.nodes.ValueNode cachedValue
         2: .line 146
            aload 0 /* this */
            aload 7 /* value */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.getScalarAlias:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 12 /* finalValue */
        start local 12 // org.graalvm.compiler.nodes.ValueNode finalValue
         3: .line 147
            iconst_0
            istore 13 /* result */
        start local 13 // boolean result
         4: .line 148
            aload 12 /* finalValue */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            aload 11 /* cachedValue */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpne 7
         5: .line 149
            aload 9 /* effects */
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.deleteNode:(Lorg/graalvm/compiler/graph/Node;)V
         6: .line 150
            iconst_1
            istore 13 /* result */
         7: .line 152
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.ValueNode org.graalvm.word.LocationIdentity int jdk.vm.ci.meta.JavaKind int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.GraphEffectList org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode int
      StackMap stack:
            aload 8 /* state */
            aload 3 /* identity */
            iload 4 /* index */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:(Lorg/graalvm/word/LocationIdentity;I)V
         8: .line 153
            aload 8 /* state */
            aload 10 /* unproxiedObject */
            aload 3 /* identity */
            iload 4 /* index */
            aload 5 /* accessKind */
            iload 6 /* overflowAccess */
            aload 12 /* finalValue */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.addReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)V
         9: .line 154
            iload 13 /* result */
            ireturn
        end local 13 // boolean result
        end local 12 // org.graalvm.compiler.nodes.ValueNode finalValue
        end local 11 // org.graalvm.compiler.nodes.ValueNode cachedValue
        end local 10 // org.graalvm.compiler.nodes.ValueNode unproxiedObject
        end local 9 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 8 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 7 // org.graalvm.compiler.nodes.ValueNode value
        end local 6 // boolean overflowAccess
        end local 5 // jdk.vm.ci.meta.JavaKind accessKind
        end local 4 // int index
        end local 3 // org.graalvm.word.LocationIdentity identity
        end local 2 // org.graalvm.compiler.nodes.ValueNode object
        end local 1 // org.graalvm.compiler.nodes.FixedNode store
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   10     1            store  Lorg/graalvm/compiler/nodes/FixedNode;
            0   10     2           object  Lorg/graalvm/compiler/nodes/ValueNode;
            0   10     3         identity  Lorg/graalvm/word/LocationIdentity;
            0   10     4            index  I
            0   10     5       accessKind  Ljdk/vm/ci/meta/JavaKind;
            0   10     6   overflowAccess  Z
            0   10     7            value  Lorg/graalvm/compiler/nodes/ValueNode;
            0   10     8            state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   10     9          effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            1   10    10  unproxiedObject  Lorg/graalvm/compiler/nodes/ValueNode;
            2   10    11      cachedValue  Lorg/graalvm/compiler/nodes/ValueNode;
            3   10    12       finalValue  Lorg/graalvm/compiler/nodes/ValueNode;
            4   10    13           result  Z
    MethodParameters:
                Name  Flags
      store           
      object          
      identity        
      index           
      accessKind      
      overflowAccess  
      value           
      state           
      effects         

  private boolean processLoad(org.graalvm.compiler.nodes.FixedNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.word.LocationIdentity, int, jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=10, args_size=8
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.FixedNode load
        start local 2 // org.graalvm.compiler.nodes.ValueNode object
        start local 3 // org.graalvm.word.LocationIdentity identity
        start local 4 // int index
        start local 5 // jdk.vm.ci.meta.JavaKind kind
        start local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 7 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 158
            aload 2 /* object */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 8 /* unproxiedObject */
        start local 8 // org.graalvm.compiler.nodes.ValueNode unproxiedObject
         1: .line 159
            aload 6 /* state */
            aload 8 /* unproxiedObject */
            aload 3 /* identity */
            iload 4 /* index */
            aload 5 /* kind */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 9 /* cachedValue */
        start local 9 // org.graalvm.compiler.nodes.ValueNode cachedValue
         2: .line 160
            aload 9 /* cachedValue */
            ifnull 6
         3: .line 162
            aload 7 /* effects */
            aload 1 /* load */
            aload 9 /* cachedValue */
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.replaceAtUsages:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/FixedNode;)V
         4: .line 163
            aload 0 /* this */
            aload 1 /* load */
            aload 9 /* cachedValue */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.addScalarAlias:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
         5: .line 164
            iconst_1
            ireturn
         6: .line 166
      StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 6 /* state */
            aload 8 /* unproxiedObject */
            aload 3 /* identity */
            iload 4 /* index */
            aload 5 /* kind */
            iconst_0
            aload 1 /* load */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.addReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)V
         7: .line 167
            iconst_0
            ireturn
        end local 9 // org.graalvm.compiler.nodes.ValueNode cachedValue
        end local 8 // org.graalvm.compiler.nodes.ValueNode unproxiedObject
        end local 7 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 5 // jdk.vm.ci.meta.JavaKind kind
        end local 4 // int index
        end local 3 // org.graalvm.word.LocationIdentity identity
        end local 2 // org.graalvm.compiler.nodes.ValueNode object
        end local 1 // org.graalvm.compiler.nodes.FixedNode load
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    8     1             load  Lorg/graalvm/compiler/nodes/FixedNode;
            0    8     2           object  Lorg/graalvm/compiler/nodes/ValueNode;
            0    8     3         identity  Lorg/graalvm/word/LocationIdentity;
            0    8     4            index  I
            0    8     5             kind  Ljdk/vm/ci/meta/JavaKind;
            0    8     6            state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    8     7          effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            1    8     8  unproxiedObject  Lorg/graalvm/compiler/nodes/ValueNode;
            2    8     9      cachedValue  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
          Name  Flags
      load      
      object    
      identity  
      index     
      kind      
      state     
      effects   

  private static boolean isOverflowAccess(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.meta.JavaKind accessKind
        start local 1 // jdk.vm.ci.meta.JavaKind declaredKind
         0: .line 172
            aload 0 /* accessKind */
            aload 1 /* declaredKind */
            if_acmpne 2
         1: .line 173
            iconst_0
            ireturn
         2: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* accessKind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 6
         3: .line 176
            invokestatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 1 /* declaredKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 7 - 9
                    7: 4
                    8: 4
                    9: 4
              default: 5
          }
         4: .line 180
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         5: .line 182
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         6: .line 185
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$assertionsDisabled:Z
            ifne 7
            aload 0 /* accessKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.isPrimitive:()Z
            ifne 7
            new java.lang.AssertionError
            dup
            ldc "Illegal access kind"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         7: .line 186
      StackMap locals:
      StackMap stack:
            aload 1 /* declaredKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.isPrimitive:()Z
            ifeq 9
            aload 0 /* accessKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            aload 1 /* declaredKind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            if_icmple 8
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         8: iconst_0
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_1
      StackMap locals:
      StackMap stack: int
        10: ireturn
        end local 1 // jdk.vm.ci.meta.JavaKind declaredKind
        end local 0 // jdk.vm.ci.meta.JavaKind accessKind
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0    accessKind  Ljdk/vm/ci/meta/JavaKind;
            0   11     1  declaredKind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
              Name  Flags
      accessKind    
      declaredKind  

  private boolean processUnsafeLoad(org.graalvm.compiler.nodes.extended.RawLoadNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/RawLoadNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=13, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.extended.RawLoadNode load
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 190
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.isVolatile:()Z
            ifeq 3
         1: .line 191
            aload 2 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:()V
         2: .line 192
            iconst_0
            ireturn
         3: .line 194
      StackMap locals:
      StackMap stack:
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.offset:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 20
         4: .line 195
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.type.StampTool.typeOrNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 4 /* type */
        start local 4 // jdk.vm.ci.meta.ResolvedJavaType type
         5: .line 196
            aload 4 /* type */
            ifnull 20
            aload 4 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isArray:()Z
            ifeq 20
         6: .line 197
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.accessKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 5 /* accessKind */
        start local 5 // jdk.vm.ci.meta.JavaKind accessKind
         7: .line 198
            aload 4 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getComponentType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 6 /* componentKind */
        start local 6 // jdk.vm.ci.meta.JavaKind componentKind
         8: .line 199
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.offset:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lstore 7 /* offset */
        start local 7 // long offset
         9: .line 200
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.tool:Lorg/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            lload 7 /* offset */
            aload 5 /* accessKind */
            aload 4 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getComponentType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            ldc 2147483647
            invokestatic org.graalvm.compiler.nodes.virtual.VirtualArrayNode.entryIndexForOffset:(Ljdk/vm/ci/meta/MetaAccessProvider;JLjdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/ResolvedJavaType;I)I
            istore 9 /* index */
        start local 9 // int index
        10: .line 201
            iload 9 /* index */
            iflt 20
        11: .line 202
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* object */
        start local 10 // org.graalvm.compiler.nodes.ValueNode object
        12: .line 203
            aload 6 /* componentKind */
            invokestatic org.graalvm.compiler.nodes.NamedLocationIdentity.getArrayLocation:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/word/LocationIdentity;
            astore 11 /* location */
        start local 11 // org.graalvm.word.LocationIdentity location
        13: .line 204
            aload 2 /* state */
            aload 10 /* object */
            aload 11 /* location */
            iload 9 /* index */
            aload 5 /* accessKind */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 12 /* cachedValue */
        start local 12 // org.graalvm.compiler.nodes.ValueNode cachedValue
        14: .line 205
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$assertionsDisabled:Z
            ifne 15
            aload 12 /* cachedValue */
            ifnull 15
            aload 1 /* load */
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.extended.RawLoadNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 12 /* cachedValue */
            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 15
            new java.lang.AssertionError
            dup
            ldc "The RawLoadNode's stamp is not compatible with the cached value."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        15: .line 206
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.nodes.extended.RawLoadNode org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.GraphEffectList jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind long int org.graalvm.compiler.nodes.ValueNode org.graalvm.word.LocationIdentity org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 12 /* cachedValue */
            ifnull 19
        16: .line 207
            aload 3 /* effects */
            aload 1 /* load */
            aload 12 /* cachedValue */
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.replaceAtUsages:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/FixedNode;)V
        17: .line 208
            aload 0 /* this */
            aload 1 /* load */
            aload 12 /* cachedValue */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.addScalarAlias:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
        18: .line 209
            iconst_1
            ireturn
        19: .line 211
      StackMap locals:
      StackMap stack:
            aload 2 /* state */
            aload 10 /* object */
            aload 11 /* location */
            iload 9 /* index */
            aload 5 /* accessKind */
            aload 5 /* accessKind */
            aload 6 /* componentKind */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.isOverflowAccess:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;)Z
            aload 1 /* load */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.addReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)V
        end local 12 // org.graalvm.compiler.nodes.ValueNode cachedValue
        end local 11 // org.graalvm.word.LocationIdentity location
        end local 10 // org.graalvm.compiler.nodes.ValueNode object
        end local 9 // int index
        end local 7 // long offset
        end local 6 // jdk.vm.ci.meta.JavaKind componentKind
        end local 5 // jdk.vm.ci.meta.JavaKind accessKind
        end local 4 // jdk.vm.ci.meta.ResolvedJavaType type
        20: .line 216
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.nodes.extended.RawLoadNode org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.GraphEffectList
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.extended.RawLoadNode load
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   21     0           this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   21     1           load  Lorg/graalvm/compiler/nodes/extended/RawLoadNode;
            0   21     2          state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   21     3        effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            5   20     4           type  Ljdk/vm/ci/meta/ResolvedJavaType;
            7   20     5     accessKind  Ljdk/vm/ci/meta/JavaKind;
            8   20     6  componentKind  Ljdk/vm/ci/meta/JavaKind;
            9   20     7         offset  J
           10   20     9          index  I
           12   20    10         object  Lorg/graalvm/compiler/nodes/ValueNode;
           13   20    11       location  Lorg/graalvm/word/LocationIdentity;
           14   20    12    cachedValue  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
         Name  Flags
      load     
      state    
      effects  

  private boolean processUnsafeStore(org.graalvm.compiler.nodes.extended.RawStoreNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/RawStoreNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=12, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.extended.RawStoreNode store
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 220
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.isVolatile:()Z
            ifeq 3
         1: .line 221
            aload 2 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:()V
         2: .line 222
            iconst_0
            ireturn
         3: .line 224
      StackMap locals:
      StackMap stack:
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.type.StampTool.typeOrNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 4 /* type */
        start local 4 // jdk.vm.ci.meta.ResolvedJavaType type
         4: .line 225
            aload 4 /* type */
            ifnull 20
            aload 4 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isArray:()Z
            ifeq 20
         5: .line 226
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.accessKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 5 /* accessKind */
        start local 5 // jdk.vm.ci.meta.JavaKind accessKind
         6: .line 227
            aload 4 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getComponentType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 6 /* componentKind */
        start local 6 // jdk.vm.ci.meta.JavaKind componentKind
         7: .line 228
            aload 6 /* componentKind */
            invokestatic org.graalvm.compiler.nodes.NamedLocationIdentity.getArrayLocation:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/word/LocationIdentity;
            astore 7 /* location */
        start local 7 // org.graalvm.word.LocationIdentity location
         8: .line 229
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.offset:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 18
         9: .line 230
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.offset:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lstore 8 /* offset */
        start local 8 // long offset
        10: .line 231
            aload 5 /* accessKind */
            aload 6 /* componentKind */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.isOverflowAccess:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;)Z
            istore 10 /* overflowAccess */
        start local 10 // boolean overflowAccess
        11: .line 232
            iload 10 /* overflowAccess */
            ifeq 12
            iconst_m1
            goto 13
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.nodes.extended.RawStoreNode org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.GraphEffectList jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind org.graalvm.word.LocationIdentity long int
      StackMap stack:
        12: aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.tool:Lorg/graalvm/compiler/virtual/phases/ea/VirtualizerToolImpl;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.VirtualizerToolImpl.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            lload 8 /* offset */
            aload 5 /* accessKind */
            aload 4 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getComponentType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            ldc 2147483647
            invokestatic org.graalvm.compiler.nodes.virtual.VirtualArrayNode.entryIndexForOffset:(Ljdk/vm/ci/meta/MetaAccessProvider;JLjdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/ResolvedJavaType;I)I
      StackMap locals:
      StackMap stack: int
        13: istore 11 /* index */
        start local 11 // int index
        14: .line 233
            iload 11 /* index */
            iconst_m1
            if_icmpeq 16
        15: .line 234
            aload 0 /* this */
            aload 1 /* store */
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 7 /* location */
            iload 11 /* index */
            aload 5 /* accessKind */
            iload 10 /* overflowAccess */
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.extended.RawStoreNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processStore:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        16: .line 236
      StackMap locals: int
      StackMap stack:
            aload 2 /* state */
            aload 7 /* location */
            iload 11 /* index */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:(Lorg/graalvm/word/LocationIdentity;I)V
        end local 11 // int index
        end local 10 // boolean overflowAccess
        end local 8 // long offset
        17: .line 238
            goto 21
        18: .line 239
      StackMap locals:
      StackMap stack:
            aload 2 /* state */
            aload 7 /* location */
            invokestatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processIdentity:(Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/word/LocationIdentity;)V
        end local 7 // org.graalvm.word.LocationIdentity location
        end local 6 // jdk.vm.ci.meta.JavaKind componentKind
        end local 5 // jdk.vm.ci.meta.JavaKind accessKind
        19: .line 241
            goto 21
        20: .line 242
      StackMap locals:
      StackMap stack:
            aload 2 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:()V
        21: .line 244
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.extended.RawStoreNode store
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   22     0            this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   22     1           store  Lorg/graalvm/compiler/nodes/extended/RawStoreNode;
            0   22     2           state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   22     3         effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            4   22     4            type  Ljdk/vm/ci/meta/ResolvedJavaType;
            6   19     5      accessKind  Ljdk/vm/ci/meta/JavaKind;
            7   19     6   componentKind  Ljdk/vm/ci/meta/JavaKind;
            8   19     7        location  Lorg/graalvm/word/LocationIdentity;
           10   17     8          offset  J
           11   17    10  overflowAccess  Z
           14   17    11           index  I
    MethodParameters:
         Name  Flags
      store    
      state    
      effects  

  private boolean processArrayLength(org.graalvm.compiler.nodes.java.ArrayLengthNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/java/ArrayLengthNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.java.ArrayLengthNode length
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 248
            aload 0 /* this */
            aload 1 /* length */
            aload 1 /* length */
            invokevirtual org.graalvm.compiler.nodes.java.ArrayLengthNode.array:()Lorg/graalvm/compiler/nodes/ValueNode;
            getstatic org.graalvm.compiler.nodes.NamedLocationIdentity.ARRAY_LENGTH_LOCATION:Lorg/graalvm/word/LocationIdentity;
            iconst_m1
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoad:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.java.ArrayLengthNode length
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    1     1   length  Lorg/graalvm/compiler/nodes/java/ArrayLengthNode;
            0    1     2    state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    1     3  effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
    MethodParameters:
         Name  Flags
      length   
      state    
      effects  

  private boolean processStoreField(org.graalvm.compiler.nodes.java.StoreFieldNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/java/StoreFieldNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.java.StoreFieldNode store
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 252
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.isVolatile:()Z
            ifeq 3
         1: .line 253
            aload 2 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:()V
         2: .line 254
            iconst_0
            ireturn
         3: .line 256
      StackMap locals:
      StackMap stack:
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 4 /* kind */
        start local 4 // jdk.vm.ci.meta.JavaKind kind
         4: .line 257
            aload 0 /* this */
            aload 1 /* store */
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            new org.graalvm.compiler.nodes.FieldLocationIdentity
            dup
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokespecial org.graalvm.compiler.nodes.FieldLocationIdentity.<init>:(Ljdk/vm/ci/meta/ResolvedJavaField;)V
            iconst_m1
            aload 4 /* kind */
            iconst_0
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processStore:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        end local 4 // jdk.vm.ci.meta.JavaKind kind
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.java.StoreFieldNode store
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    5     1    store  Lorg/graalvm/compiler/nodes/java/StoreFieldNode;
            0    5     2    state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    5     3  effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            4    5     4     kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
         Name  Flags
      store    
      state    
      effects  

  private boolean processLoadField(org.graalvm.compiler.nodes.java.LoadFieldNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/java/LoadFieldNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.java.LoadFieldNode load
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 261
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.isVolatile:()Z
            ifeq 3
         1: .line 262
            aload 2 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:()V
         2: .line 263
            iconst_0
            ireturn
         3: .line 265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* load */
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            new org.graalvm.compiler.nodes.FieldLocationIdentity
            dup
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokespecial org.graalvm.compiler.nodes.FieldLocationIdentity.<init>:(Ljdk/vm/ci/meta/ResolvedJavaField;)V
            iconst_m1
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoad:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.java.LoadFieldNode load
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    4     1     load  Lorg/graalvm/compiler/nodes/java/LoadFieldNode;
            0    4     2    state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    4     3  effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
    MethodParameters:
         Name  Flags
      load     
      state    
      effects  

  private boolean processStoreIndexed(org.graalvm.compiler.nodes.java.StoreIndexedNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/java/StoreIndexedNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.java.StoreIndexedNode store
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 269
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.index:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 1
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.index:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            checkcast jdk.vm.ci.meta.JavaConstant
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_m1
      StackMap locals:
      StackMap stack: int
         2: istore 4 /* index */
        start local 4 // int index
         3: .line 270
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.elementKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 5 /* elementKind */
        start local 5 // jdk.vm.ci.meta.JavaKind elementKind
         4: .line 271
            aload 5 /* elementKind */
            invokestatic org.graalvm.compiler.nodes.NamedLocationIdentity.getArrayLocation:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/word/LocationIdentity;
            astore 6 /* arrayLocation */
        start local 6 // org.graalvm.word.LocationIdentity arrayLocation
         5: .line 272
            iload 4 /* index */
            iconst_m1
            if_icmpeq 7
         6: .line 273
            aload 0 /* this */
            aload 1 /* store */
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.array:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* arrayLocation */
            iload 4 /* index */
            aload 5 /* elementKind */
            iconst_0
            aload 1 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processStore:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
         7: .line 275
      StackMap locals: int jdk.vm.ci.meta.JavaKind org.graalvm.word.LocationIdentity
      StackMap stack:
            aload 2 /* state */
            aload 6 /* arrayLocation */
            iconst_m1
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:(Lorg/graalvm/word/LocationIdentity;I)V
         8: .line 277
            iconst_0
            ireturn
        end local 6 // org.graalvm.word.LocationIdentity arrayLocation
        end local 5 // jdk.vm.ci.meta.JavaKind elementKind
        end local 4 // int index
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.java.StoreIndexedNode store
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    9     1          store  Lorg/graalvm/compiler/nodes/java/StoreIndexedNode;
            0    9     2          state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    9     3        effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            3    9     4          index  I
            4    9     5    elementKind  Ljdk/vm/ci/meta/JavaKind;
            5    9     6  arrayLocation  Lorg/graalvm/word/LocationIdentity;
    MethodParameters:
         Name  Flags
      store    
      state    
      effects  

  private boolean processLoadIndexed(org.graalvm.compiler.nodes.java.LoadIndexedNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/java/LoadIndexedNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.java.LoadIndexedNode load
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 281
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadIndexedNode.index:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 5
         1: .line 282
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadIndexedNode.index:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            checkcast jdk.vm.ci.meta.JavaConstant
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 4 /* index */
        start local 4 // int index
         2: .line 283
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadIndexedNode.elementKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 5 /* elementKind */
        start local 5 // jdk.vm.ci.meta.JavaKind elementKind
         3: .line 284
            aload 5 /* elementKind */
            invokestatic org.graalvm.compiler.nodes.NamedLocationIdentity.getArrayLocation:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/word/LocationIdentity;
            astore 6 /* arrayLocation */
        start local 6 // org.graalvm.word.LocationIdentity arrayLocation
         4: .line 285
            aload 0 /* this */
            aload 1 /* load */
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.java.LoadIndexedNode.array:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* arrayLocation */
            iload 4 /* index */
            aload 5 /* elementKind */
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoad:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        end local 6 // org.graalvm.word.LocationIdentity arrayLocation
        end local 5 // jdk.vm.ci.meta.JavaKind elementKind
        end local 4 // int index
         5: .line 287
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.java.LoadIndexedNode load
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    6     1           load  Lorg/graalvm/compiler/nodes/java/LoadIndexedNode;
            0    6     2          state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    6     3        effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            2    5     4          index  I
            3    5     5    elementKind  Ljdk/vm/ci/meta/JavaKind;
            4    5     6  arrayLocation  Lorg/graalvm/word/LocationIdentity;
    MethodParameters:
         Name  Flags
      load     
      state    
      effects  

  private boolean processUnbox(org.graalvm.compiler.nodes.extended.UnboxNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/UnboxNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.extended.UnboxNode unbox
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 291
            aload 0 /* this */
            aload 1 /* unbox */
            aload 1 /* unbox */
            invokevirtual org.graalvm.compiler.nodes.extended.UnboxNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.UNBOX_LOCATIONS:Ljava/util/EnumMap;
            aload 1 /* unbox */
            invokevirtual org.graalvm.compiler.nodes.extended.UnboxNode.getBoxingKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual java.util.EnumMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.word.LocationIdentity
            iconst_m1
            aload 1 /* unbox */
            invokevirtual org.graalvm.compiler.nodes.extended.UnboxNode.getBoxingKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 2 /* state */
            aload 3 /* effects */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoad:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)Z
            ireturn
        end local 3 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        end local 1 // org.graalvm.compiler.nodes.extended.UnboxNode unbox
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    1     1    unbox  Lorg/graalvm/compiler/nodes/extended/UnboxNode;
            0    1     2    state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    1     3  effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
    MethodParameters:
         Name  Flags
      unbox    
      state    
      effects  

  private static void processIdentity(org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.word.LocationIdentity);
    descriptor: (Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/word/LocationIdentity;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
        start local 1 // org.graalvm.word.LocationIdentity identity
         0: .line 295
            aload 1 /* identity */
            invokevirtual org.graalvm.word.LocationIdentity.isAny:()Z
            ifeq 3
         1: .line 296
            aload 0 /* state */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:()V
         2: .line 297
            goto 4
         3: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* state */
            aload 1 /* identity */
            iconst_m1
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.killReadCache:(Lorg/graalvm/word/LocationIdentity;I)V
         4: .line 300
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.word.LocationIdentity identity
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState state
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0     state  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0    5     1  identity  Lorg/graalvm/word/LocationIdentity;
    MethodParameters:
          Name  Flags
      state     
      identity  

  protected void processInitialLoopState(org.graalvm.compiler.core.common.cfg.Loop<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=12, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.core.common.cfg.Loop loop
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
         0: .line 305
            aload 0 /* this */
            aload 1 /* loop */
            aload 2 /* initialState */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.processInitialLoopState:(Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)V
         1: .line 307
            aload 2 /* initialState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.isEmpty:()Z
            ifne 31
         2: .line 308
            aconst_null
            astore 3 /* firstValueSet */
        start local 3 // org.graalvm.collections.EconomicMap firstValueSet
         3: .line 309
            aload 1 /* loop */
            invokevirtual org.graalvm.compiler.core.common.cfg.Loop.getHeader:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            checkcast org.graalvm.compiler.nodes.LoopBeginNode
            invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.phis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 5
            goto 12
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.PhiNode
            astore 4 /* phi */
        start local 4 // org.graalvm.compiler.nodes.PhiNode phi
         5: .line 310
            aload 4 /* phi */
            iconst_0
            invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* firstValue */
        start local 6 // org.graalvm.compiler.nodes.ValueNode firstValue
         6: .line 311
            aload 6 /* firstValue */
            ifnull 12
            aload 4 /* phi */
            invokevirtual org.graalvm.compiler.nodes.PhiNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.isObject:()Z
            ifeq 12
         7: .line 312
            aload 6 /* firstValue */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unproxify:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 7 /* unproxified */
        start local 7 // org.graalvm.compiler.nodes.ValueNode unproxified
         8: .line 313
            aload 3 /* firstValueSet */
            ifnonnull 10
         9: .line 314
            getstatic org.graalvm.collections.Equivalence.IDENTITY_WITH_SYSTEM_HASHCODE:Lorg/graalvm/collections/Equivalence;
            invokestatic org.graalvm.collections.EconomicMap.create:(Lorg/graalvm/collections/Equivalence;)Lorg/graalvm/collections/EconomicMap;
            astore 3 /* firstValueSet */
        10: .line 316
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap org.graalvm.compiler.nodes.PhiNode java.util.Iterator org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 7 /* unproxified */
            aload 3 /* firstValueSet */
            aload 7 /* unproxified */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic org.graalvm.collections.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/collections/Pair;
            astore 8 /* pair */
        start local 8 // org.graalvm.collections.Pair pair
        11: .line 317
            aload 3 /* firstValueSet */
            aload 7 /* unproxified */
            aload 8 /* pair */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // org.graalvm.collections.Pair pair
        end local 7 // org.graalvm.compiler.nodes.ValueNode unproxified
        end local 6 // org.graalvm.compiler.nodes.ValueNode firstValue
        end local 4 // org.graalvm.compiler.nodes.PhiNode phi
        12: .line 309
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        13: .line 321
            aload 3 /* firstValueSet */
            ifnull 31
        14: .line 322
            aload 2 /* initialState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.size:()I
            anewarray org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            astore 4 /* entries */
        start local 4 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] entries
        15: .line 323
            iconst_0
            istore 5 /* z */
        start local 5 // int z
        16: .line 324
            aload 2 /* initialState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.getKeys:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 7
            goto 19
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] int top java.util.Iterator
      StackMap stack:
        17: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            astore 6 /* entry */
        start local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        18: .line 325
            aload 4 /* entries */
            iload 5 /* z */
            iinc 5 /* z */ 1
            aload 6 /* entry */
            aastore
        end local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        19: .line 324
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        20: .line 328
            aload 4 /* entries */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 30
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] int top int int org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[]
      StackMap stack:
        21: aload 9
            iload 7
            aaload
            astore 6 /* entry */
        start local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        22: .line 329
            aload 6 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.object:Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* object */
        start local 10 // org.graalvm.compiler.nodes.ValueNode object
        23: .line 330
            aload 10 /* object */
            ifnull 29
        24: .line 331
            aload 3 /* firstValueSet */
            aload 10 /* object */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.collections.Pair
            astore 11 /* pair */
        start local 11 // org.graalvm.collections.Pair pair
        25: .line 332
            goto 28
        26: .line 333
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] int org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry int int org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] org.graalvm.compiler.nodes.ValueNode org.graalvm.collections.Pair
      StackMap stack:
            aload 2 /* initialState */
            aload 11 /* pair */
            invokevirtual org.graalvm.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValueNode
            aload 6 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.identity:Lorg/graalvm/word/LocationIdentity;
            aload 6 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.index:I
            aload 6 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.kind:Ljdk/vm/ci/meta/JavaKind;
            aload 6 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.overflowAccess:Z
            aload 2 /* initialState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            aload 6 /* entry */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValueNode
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.addReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)V
        27: .line 334
            aload 11 /* pair */
            invokevirtual org.graalvm.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast org.graalvm.collections.Pair
            astore 11 /* pair */
        28: .line 332
      StackMap locals:
      StackMap stack:
            aload 11 /* pair */
            ifnonnull 26
        end local 11 // org.graalvm.collections.Pair pair
        end local 10 // org.graalvm.compiler.nodes.ValueNode object
        end local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        29: .line 328
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.collections.EconomicMap org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] int top int int org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[]
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        30: iload 7
            iload 8
            if_icmplt 21
        end local 5 // int z
        end local 4 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry[] entries
        end local 3 // org.graalvm.collections.EconomicMap firstValueSet
        31: .line 340
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
        end local 1 // org.graalvm.compiler.core.common.cfg.Loop loop
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   32     0           this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   32     1           loop  Lorg/graalvm/compiler/core/common/cfg/Loop<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   32     2   initialState  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            3   31     3  firstValueSet  Lorg/graalvm/collections/EconomicMap<Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/collections/Pair<Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/Object;>;>;
            5   12     4            phi  Lorg/graalvm/compiler/nodes/PhiNode;
            6   12     6     firstValue  Lorg/graalvm/compiler/nodes/ValueNode;
            8   12     7    unproxified  Lorg/graalvm/compiler/nodes/ValueNode;
           11   12     8           pair  Lorg/graalvm/collections/Pair<Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/Object;>;
           15   31     4        entries  [Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;
           16   31     5              z  I
           18   19     6          entry  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;
           22   29     6          entry  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;
           23   29    10         object  Lorg/graalvm/compiler/nodes/ValueNode;
           25   29    11           pair  Lorg/graalvm/collections/Pair<Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/Object;>;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/Loop<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
    MethodParameters:
              Name  Flags
      loop          
      initialState  

  protected void processLoopExit(org.graalvm.compiler.nodes.LoopExitNode, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/LoopExitNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.LoopExitNode exitNode
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
        start local 3 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState exitState
        start local 4 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
         0: .line 344
            aload 0 /* this */
            aload 1 /* exitNode */
            aload 2 /* initialState */
            aload 3 /* exitState */
            aload 4 /* effects */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.processLoopExit:(Lorg/graalvm/compiler/nodes/LoopExitNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)V
         1: .line 345
            aload 1 /* exitNode */
            invokevirtual org.graalvm.compiler.nodes.LoopExitNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasValueProxies:()Z
            ifeq 12
         2: .line 346
            aload 3 /* exitState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.getEntries:()Lorg/graalvm/collections/MapCursor;
            astore 5 /* entry */
        start local 5 // org.graalvm.collections.MapCursor entry
         3: .line 347
            goto 11
         4: .line 348
      StackMap locals: org.graalvm.collections.MapCursor
      StackMap stack:
            aload 2 /* initialState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getValue:()Ljava/lang/Object;
            if_acmpeq 11
         5: .line 349
            aload 3 /* exitState */
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.object:Lorg/graalvm/compiler/nodes/ValueNode;
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.identity:Lorg/graalvm/word/LocationIdentity;
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.index:I
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.kind:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/word/LocationIdentity;ILjdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* value */
        start local 6 // org.graalvm.compiler.nodes.ValueNode value
         6: .line 350
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$assertionsDisabled:Z
            ifne 7
            aload 6 /* value */
            ifnonnull 7
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Got null from read cache, entry's value:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getValue:()Ljava/lang/Object;
            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
         7: .line 351
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 6 /* value */
            instanceof org.graalvm.compiler.nodes.ProxyNode
            ifeq 8
            aload 6 /* value */
            checkcast org.graalvm.compiler.nodes.ProxyNode
            invokevirtual org.graalvm.compiler.nodes.ProxyNode.proxyPoint:()Lorg/graalvm/compiler/nodes/LoopExitNode;
            aload 1 /* exitNode */
            if_acmpeq 11
         8: .line 352
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.nodes.ValueProxyNode
            dup
            aload 6 /* value */
            aload 1 /* exitNode */
            invokespecial org.graalvm.compiler.nodes.ValueProxyNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/LoopExitNode;)V
            astore 7 /* proxy */
        start local 7 // org.graalvm.compiler.nodes.ProxyNode proxy
         9: .line 353
            aload 4 /* effects */
            aload 7 /* proxy */
            ldc "readCacheProxy"
            invokevirtual org.graalvm.compiler.virtual.phases.ea.GraphEffectList.addFloatingNode:(Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)V
        10: .line 354
            aload 3 /* exitState */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.getReadCache:()Lorg/graalvm/collections/EconomicMap;
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.getKey:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            aload 7 /* proxy */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // org.graalvm.compiler.nodes.ProxyNode proxy
        end local 6 // org.graalvm.compiler.nodes.ValueNode value
        11: .line 347
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            invokeinterface org.graalvm.collections.MapCursor.advance:()Z
            ifne 4
        end local 5 // org.graalvm.collections.MapCursor entry
        12: .line 359
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.graalvm.compiler.virtual.phases.ea.GraphEffectList effects
        end local 3 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState exitState
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
        end local 1 // org.graalvm.compiler.nodes.LoopExitNode exitNode
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   13     1      exitNode  Lorg/graalvm/compiler/nodes/LoopExitNode;
            0   13     2  initialState  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   13     3     exitState  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   13     4       effects  Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;
            3   12     5         entry  Lorg/graalvm/collections/MapCursor<Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;Lorg/graalvm/compiler/nodes/ValueNode;>;
            6   11     6         value  Lorg/graalvm/compiler/nodes/ValueNode;
            9   11     7         proxy  Lorg/graalvm/compiler/nodes/ProxyNode;
    MethodParameters:
              Name  Flags
      exitNode      
      initialState  
      exitState     
      effects       

  protected org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState cloneState(org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState);
    descriptor: (Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState other
         0: .line 363
            new org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            dup
            aload 1 /* other */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.<init>:(Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
            areturn
        end local 1 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState other
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    1     1  other  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
    MethodParameters:
       Name  Flags
      other  

  protected org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure<org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState>.MergeProcessor createMergeProcessor(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.nodes.cfg.Block merge
         0: .line 368
            new org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure$ReadEliminationMergeProcessor
            dup
            aload 0 /* this */
            aload 1 /* merge */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure$ReadEliminationMergeProcessor.<init>:(Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;Lorg/graalvm/compiler/nodes/cfg/Block;)V
            areturn
        end local 1 // org.graalvm.compiler.nodes.cfg.Block merge
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0    1     1  merge  Lorg/graalvm/compiler/nodes/cfg/Block;
    Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure<Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;>.MergeProcessor;
    MethodParameters:
       Name  Flags
      merge  

  protected void processKilledLoopLocations(org.graalvm.compiler.core.common.cfg.Loop<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=10, args_size=4
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.core.common.cfg.Loop loop
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
        start local 3 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState mergedStates
         0: .line 458
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$assertionsDisabled:Z
            ifne 1
            aload 2 /* initialState */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 459
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$assertionsDisabled:Z
            ifne 2
            aload 3 /* mergedStates */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 460
      StackMap locals:
      StackMap stack:
            aload 2 /* initialState */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.readCache:Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.size:()I
            ifle 31
         3: .line 461
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.loopLocationKillCache:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* loop */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache
            astore 4 /* loopKilledLocations */
        start local 4 // org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache loopKilledLocations
         4: .line 464
            aload 4 /* loopKilledLocations */
            ifnonnull 8
         5: .line 465
            new org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache
            dup
            iconst_1
            invokespecial org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.<init>:(I)V
            astore 4 /* loopKilledLocations */
         6: .line 466
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.loopLocationKillCache:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* loop */
            aload 4 /* loopKilledLocations */
            invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 467
            goto 31
         8: .line 468
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache
      StackMap stack:
            aload 1 /* loop */
            invokevirtual org.graalvm.compiler.core.common.cfg.Loop.getHeader:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            checkcast org.graalvm.compiler.nodes.cfg.Block
            invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            astore 5 /* beginNode */
        start local 5 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
         9: .line 469
            aload 5 /* beginNode */
            invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            astore 6 /* options */
        start local 6 // org.graalvm.compiler.options.OptionValues options
        10: .line 470
            aload 4 /* loopKilledLocations */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.visits:()I
            getstatic org.graalvm.compiler.core.common.GraalOptions.ReadEliminationMaxLoopVisits:Lorg/graalvm/compiler/options/OptionKey;
            aload 6 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            if_icmple 13
        11: .line 473
            aload 4 /* loopKilledLocations */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.setKillsAll:()V
        12: .line 474
            goto 30
        13: .line 476
      StackMap locals: org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.options.OptionValues
      StackMap stack:
            getstatic org.graalvm.collections.Equivalence.DEFAULT:Lorg/graalvm/collections/Equivalence;
            invokestatic org.graalvm.collections.EconomicSet.create:(Lorg/graalvm/collections/Equivalence;)Lorg/graalvm/collections/EconomicSet;
            astore 7 /* forwardEndLiveLocations */
        start local 7 // org.graalvm.collections.EconomicSet forwardEndLiveLocations
        14: .line 477
            aload 2 /* initialState */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.readCache:Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.getKeys:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 9
            goto 17
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.options.OptionValues org.graalvm.collections.EconomicSet top java.util.Iterator
      StackMap stack:
        15: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            astore 8 /* entry */
        start local 8 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        16: .line 478
            aload 7 /* forwardEndLiveLocations */
            aload 8 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.identity:Lorg/graalvm/word/LocationIdentity;
            invokeinterface org.graalvm.collections.EconomicSet.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        17: .line 477
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 480
            aload 3 /* mergedStates */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.readCache:Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.getKeys:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 9
            goto 21
      StackMap locals:
      StackMap stack:
        19: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            astore 8 /* entry */
        start local 8 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        20: .line 481
            aload 7 /* forwardEndLiveLocations */
            aload 8 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.identity:Lorg/graalvm/word/LocationIdentity;
            invokeinterface org.graalvm.collections.EconomicSet.remove:(Ljava/lang/Object;)V
        end local 8 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
        21: .line 480
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        22: .line 485
            aload 7 /* forwardEndLiveLocations */
            invokeinterface org.graalvm.collections.EconomicSet.iterator:()Ljava/util/Iterator;
            astore 9
            goto 25
      StackMap locals:
      StackMap stack:
        23: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.word.LocationIdentity
            astore 8 /* location */
        start local 8 // org.graalvm.word.LocationIdentity location
        24: .line 486
            aload 4 /* loopKilledLocations */
            aload 8 /* location */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.rememberLoopKilledLocation:(Lorg/graalvm/word/LocationIdentity;)V
        end local 8 // org.graalvm.word.LocationIdentity location
        25: .line 485
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        26: .line 488
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
            ifeq 30
            aload 4 /* loopKilledLocations */
            ifnull 30
        27: .line 489
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "[Early Read Elimination] Setting loop killed locations of loop at node %s with %s"
        28: .line 490
            aload 5 /* beginNode */
            aload 7 /* forwardEndLiveLocations */
        29: .line 489
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 7 // org.graalvm.collections.EconomicSet forwardEndLiveLocations
        30: .line 494
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure org.graalvm.compiler.core.common.cfg.Loop org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.options.OptionValues
      StackMap stack:
            aload 4 /* loopKilledLocations */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.visited:()V
        end local 6 // org.graalvm.compiler.options.OptionValues options
        end local 5 // org.graalvm.compiler.nodes.AbstractBeginNode beginNode
        end local 4 // org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache loopKilledLocations
        31: .line 497
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState mergedStates
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
        end local 1 // org.graalvm.compiler.core.common.cfg.Loop loop
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   32     0                     this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   32     1                     loop  Lorg/graalvm/compiler/core/common/cfg/Loop<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   32     2             initialState  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            0   32     3             mergedStates  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            4   31     4      loopKilledLocations  Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure$LoopKillCache;
            9   31     5                beginNode  Lorg/graalvm/compiler/nodes/AbstractBeginNode;
           10   31     6                  options  Lorg/graalvm/compiler/options/OptionValues;
           14   30     7  forwardEndLiveLocations  Lorg/graalvm/collections/EconomicSet<Lorg/graalvm/word/LocationIdentity;>;
           16   17     8                    entry  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;
           20   21     8                    entry  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;
           24   25     8                 location  Lorg/graalvm/word/LocationIdentity;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/Loop<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
    MethodParameters:
              Name  Flags
      loop          
      initialState  
      mergedStates  

  protected org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState stripKilledLoopLocations(org.graalvm.compiler.core.common.cfg.Loop<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
        start local 1 // org.graalvm.compiler.core.common.cfg.Loop loop
        start local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState originalInitialState
         0: .line 501
            aload 0 /* this */
            aload 1 /* loop */
            aload 2 /* originalInitialState */
            invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure.stripKilledLoopLocations:(Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            astore 3 /* initialState */
        start local 3 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
         1: .line 502
            aload 0 /* this */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.loopLocationKillCache:Lorg/graalvm/collections/EconomicMap;
            aload 1 /* loop */
            invokeinterface org.graalvm.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache
            astore 4 /* loopKilledLocations */
        start local 4 // org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache loopKilledLocations
         2: .line 503
            aload 4 /* loopKilledLocations */
            ifnull 9
            aload 4 /* loopKilledLocations */
            invokevirtual org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.loopKillsLocations:()Z
            ifeq 9
         3: .line 504
            aload 3 /* initialState */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState.readCache:Lorg/graalvm/collections/EconomicMap;
            invokeinterface org.graalvm.collections.EconomicMap.getKeys:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 5 /* it */
        start local 5 // java.util.Iterator it
         4: .line 505
            goto 8
         5: .line 506
      StackMap locals: org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache java.util.Iterator
      StackMap stack:
            aload 5 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry
            astore 6 /* entry */
        start local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
         6: .line 507
            aload 4 /* loopKilledLocations */
            aload 6 /* entry */
            getfield org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry.identity:Lorg/graalvm/word/LocationIdentity;
            invokevirtual org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache.containsLocation:(Lorg/graalvm/word/LocationIdentity;)Z
            ifeq 8
         7: .line 508
            aload 5 /* it */
            invokeinterface java.util.Iterator.remove:()V
        end local 6 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry entry
         8: .line 505
      StackMap locals:
      StackMap stack:
            aload 5 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 5 // java.util.Iterator it
         9: .line 512
      StackMap locals:
      StackMap stack:
            aload 3 /* initialState */
            areturn
        end local 4 // org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache loopKilledLocations
        end local 3 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState initialState
        end local 2 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState originalInitialState
        end local 1 // org.graalvm.compiler.core.common.cfg.Loop loop
        end local 0 // org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   10     0                  this  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationClosure;
            0   10     1                  loop  Lorg/graalvm/compiler/core/common/cfg/Loop<Lorg/graalvm/compiler/nodes/cfg/Block;>;
            0   10     2  originalInitialState  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            1   10     3          initialState  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            2   10     4   loopKilledLocations  Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure$LoopKillCache;
            4    9     5                    it  Ljava/util/Iterator<Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;>;
            6    8     6                 entry  Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState$ReadCacheEntry;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/Loop<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
    MethodParameters:
                      Name  Flags
      loop                  
      originalInitialState  

  protected void processLoopExit(org.graalvm.compiler.nodes.LoopExitNode, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList);
    descriptor: (Lorg/graalvm/compiler/nodes/LoopExitNode;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)V
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            aload 3
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            aload 4
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processLoopExit:(Lorg/graalvm/compiler/nodes/LoopExitNode;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected boolean processNode(org.graalvm.compiler.graph.Node, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState, org.graalvm.compiler.virtual.phases.ea.GraphEffectList, org.graalvm.compiler.nodes.FixedWithNextNode);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)Z
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            aload 3
            aload 4
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processNode:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState stripKilledLoopLocations(org.graalvm.compiler.core.common.cfg.Loop, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.stripKilledLoopLocations:(Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected java.lang.Object getInitialState();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.getInitialState:()Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void processKilledLoopLocations(org.graalvm.compiler.core.common.cfg.Loop, org.graalvm.compiler.virtual.phases.ea.EffectsBlockState, org.graalvm.compiler.virtual.phases.ea.EffectsBlockState);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;Lorg/graalvm/compiler/virtual/phases/ea/EffectsBlockState;)V
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            aload 3
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processKilledLoopLocations:(Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected org.graalvm.compiler.virtual.phases.ea.EffectsClosure$MergeProcessor createMergeProcessor(org.graalvm.compiler.nodes.cfg.Block);
    descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/virtual/phases/ea/EffectsClosure$MergeProcessor;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.createMergeProcessor:(Lorg/graalvm/compiler/nodes/cfg/Block;)Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure$MergeProcessor;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void processInitialLoopState(org.graalvm.compiler.core.common.cfg.Loop, org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;)V
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.processInitialLoopState:(Lorg/graalvm/compiler/core/common/cfg/Loop;Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected java.lang.Object cloneState(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
            invokevirtual org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.cloneState:(Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;)Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 77
            getstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 8
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 11
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_3
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 10
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            dup
            putstatic org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
}
Signature: Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeClosure<Lorg/graalvm/compiler/virtual/phases/ea/PEReadEliminationBlockState;>;
SourceFile: "PEReadEliminationClosure.java"
NestMembers:
  org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure$ReadEliminationMergeProcessor
InnerClasses:
  public ScheduleResult = org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult of org.graalvm.compiler.nodes.StructuredGraph
  final EffectsClosureMode = org.graalvm.compiler.virtual.phases.ea.EffectsClosure$EffectsClosureMode of org.graalvm.compiler.virtual.phases.ea.EffectsClosure
  protected final LoopKillCache = org.graalvm.compiler.virtual.phases.ea.EffectsClosure$LoopKillCache of org.graalvm.compiler.virtual.phases.ea.EffectsClosure
  protected abstract MergeProcessor = org.graalvm.compiler.virtual.phases.ea.EffectsClosure$MergeProcessor of org.graalvm.compiler.virtual.phases.ea.EffectsClosure
  final ReadCacheEntry = org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState$ReadCacheEntry of org.graalvm.compiler.virtual.phases.ea.PEReadEliminationBlockState
  private ReadEliminationMergeProcessor = org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure$ReadEliminationMergeProcessor of org.graalvm.compiler.virtual.phases.ea.PEReadEliminationClosure
  protected MergeProcessor = org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure$MergeProcessor of org.graalvm.compiler.virtual.phases.ea.PartialEscapeClosure