public class org.graalvm.compiler.core.test.VerifyUpdateUsages extends org.graalvm.compiler.phases.VerifyPhase<org.graalvm.compiler.phases.tiers.PhaseContext>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.core.test.VerifyUpdateUsages
  super_class: org.graalvm.compiler.phases.VerifyPhase
{
  public boolean checkContract();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
         0: .line 52
            iconst_0
            ireturn
        end local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/test/VerifyUpdateUsages;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
         0: .line 55
            aload 0 /* this */
            invokespecial org.graalvm.compiler.phases.VerifyPhase.<init>:()V
         1: .line 56
            return
        end local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/test/VerifyUpdateUsages;

  protected void verify(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.phases.tiers.PhaseContext);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/phases/tiers/PhaseContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=12, args_size=3
        start local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.phases.tiers.PhaseContext context
         0: .line 60
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.isConstructor:()Z
            ifeq 2
         1: .line 61
            return
         2: .line 69
      StackMap locals:
      StackMap stack:
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            ldc Lorg/graalvm/compiler/nodes/java/StoreFieldNode;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
            astore 3 /* stores */
        start local 3 // java.util.List stores
         3: .line 70
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 4 /* declaringClass */
        start local 4 // jdk.vm.ci.meta.ResolvedJavaType declaringClass
         4: .line 71
            aload 2 /* context */
            invokevirtual org.graalvm.compiler.phases.tiers.PhaseContext.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            ldc Lorg/graalvm/compiler/graph/NodeInputList;
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 5 /* nodeInputList */
        start local 5 // jdk.vm.ci.meta.ResolvedJavaType nodeInputList
         5: .line 72
            aconst_null
            astore 6 /* storeField1 */
        start local 6 // org.graalvm.compiler.nodes.java.StoreFieldNode storeField1
         6: .line 73
            aconst_null
            astore 7 /* storeField2 */
        start local 7 // org.graalvm.compiler.nodes.java.StoreFieldNode storeField2
         7: .line 74
            aload 3 /* stores */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 21
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode top java.util.Iterator
      StackMap stack:
         8: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.java.StoreFieldNode
            astore 8 /* store */
        start local 8 // org.graalvm.compiler.nodes.java.StoreFieldNode store
         9: .line 75
            aload 0 /* this */
            aload 8 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            aload 4 /* declaringClass */
            aload 5 /* nodeInputList */
            invokevirtual org.graalvm.compiler.core.test.VerifyUpdateUsages.isNodeInput:(Ljdk/vm/ci/meta/ResolvedJavaField;Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 21
        10: .line 76
            aload 6 /* storeField1 */
            ifnonnull 13
        11: .line 77
            aload 8 /* store */
            astore 6 /* storeField1 */
        12: .line 78
            goto 21
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode java.util.Iterator
      StackMap stack:
        13: aload 7 /* storeField2 */
            ifnonnull 16
        14: .line 79
            aload 8 /* store */
            astore 7 /* storeField2 */
        15: .line 80
            goto 21
        16: .line 81
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "More than 2 stores to %s or %s fields found in %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        17: .line 82
            ldc Lorg/graalvm/compiler/graph/Node$Input;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        18: .line 83
            ldc Lorg/graalvm/compiler/graph/Node$OptionalInput;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
        19: .line 84
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
        20: .line 81
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 8 // org.graalvm.compiler.nodes.java.StoreFieldNode store
        21: .line 74
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        22: .line 88
            aload 6 /* storeField1 */
            ifnonnull 24
        23: .line 89
            return
        24: .line 91
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode
      StackMap stack:
            aload 7 /* storeField2 */
            ifnonnull 38
        25: .line 94
            aload 2 /* context */
            invokevirtual org.graalvm.compiler.phases.tiers.PhaseContext.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            ldc Lorg/graalvm/compiler/graph/Node;
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 8 /* nodeType */
        start local 8 // jdk.vm.ci.meta.ResolvedJavaType nodeType
        26: .line 95
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            ldc Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 10
            goto 31
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode jdk.vm.ci.meta.ResolvedJavaType top java.util.Iterator
      StackMap stack:
        27: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
            astore 9 /* call */
        start local 9 // org.graalvm.compiler.nodes.java.MethodCallTargetNode call
        28: .line 96
            aload 9 /* call */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 11 /* callee */
        start local 11 // jdk.vm.ci.meta.ResolvedJavaMethod callee
        29: .line 97
            aload 11 /* callee */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            aload 8 /* nodeType */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 31
            aload 11 /* callee */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
            ldc "updateUsages"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            aload 11 /* callee */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
            ldc "updateUsagesInterface"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
        30: .line 98
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.MethodCallTargetNode java.util.Iterator jdk.vm.ci.meta.ResolvedJavaMethod
      StackMap stack:
            return
        end local 11 // jdk.vm.ci.meta.ResolvedJavaMethod callee
        end local 9 // org.graalvm.compiler.nodes.java.MethodCallTargetNode call
        31: .line 95
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode jdk.vm.ci.meta.ResolvedJavaType top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 27
        32: .line 101
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "%s updates field '%s' without calling %s.updateUsages() or %s.updateUsagesInterface()"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        33: .line 102
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
        34: .line 103
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
        35: .line 104
            ldc Lorg/graalvm/compiler/graph/Node;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
        36: .line 105
            ldc Lorg/graalvm/compiler/graph/Node;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        37: .line 101
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 8 // jdk.vm.ci.meta.ResolvedJavaType nodeType
        38: .line 107
      StackMap locals: org.graalvm.compiler.core.test.VerifyUpdateUsages org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.tiers.PhaseContext java.util.List jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.java.StoreFieldNode org.graalvm.compiler.nodes.java.StoreFieldNode
      StackMap stack:
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            instanceof org.graalvm.compiler.nodes.java.LoadFieldNode
            ifeq 47
            aload 7 /* storeField2 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            instanceof org.graalvm.compiler.nodes.java.LoadFieldNode
            ifeq 47
        39: .line 108
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            checkcast org.graalvm.compiler.nodes.java.LoadFieldNode
            astore 8 /* load1 */
        start local 8 // org.graalvm.compiler.nodes.java.LoadFieldNode load1
        40: .line 109
            aload 7 /* storeField2 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            checkcast org.graalvm.compiler.nodes.java.LoadFieldNode
            astore 9 /* load2 */
        start local 9 // org.graalvm.compiler.nodes.java.LoadFieldNode load2
        41: .line 111
            aload 8 /* load1 */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpne 47
        42: .line 112
            aload 9 /* load2 */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 7 /* storeField2 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpne 47
        43: .line 113
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 7 /* storeField2 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            if_acmpne 47
        44: .line 114
            aload 8 /* load1 */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            aload 7 /* storeField2 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 47
        45: .line 115
            aload 9 /* load2 */
            invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 47
        46: .line 116
            return
        end local 9 // org.graalvm.compiler.nodes.java.LoadFieldNode load2
        end local 8 // org.graalvm.compiler.nodes.java.LoadFieldNode load1
        47: .line 119
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "%s performs non-swap update to fields '%s' and '%s' without calling %s.updateUsages() or %s.updateUsagesInterface()"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        48: .line 120
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
        49: .line 121
            aload 6 /* storeField1 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
        50: .line 122
            aload 7 /* storeField2 */
            invokevirtual org.graalvm.compiler.nodes.java.StoreFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
        51: .line 123
            ldc Lorg/graalvm/compiler/graph/Node;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_4
        52: .line 124
            ldc Lorg/graalvm/compiler/graph/Node;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        53: .line 119
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 7 // org.graalvm.compiler.nodes.java.StoreFieldNode storeField2
        end local 6 // org.graalvm.compiler.nodes.java.StoreFieldNode storeField1
        end local 5 // jdk.vm.ci.meta.ResolvedJavaType nodeInputList
        end local 4 // jdk.vm.ci.meta.ResolvedJavaType declaringClass
        end local 3 // java.util.List stores
        end local 2 // org.graalvm.compiler.phases.tiers.PhaseContext context
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   54     0            this  Lorg/graalvm/compiler/core/test/VerifyUpdateUsages;
            0   54     1           graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0   54     2         context  Lorg/graalvm/compiler/phases/tiers/PhaseContext;
            3   54     3          stores  Ljava/util/List<Lorg/graalvm/compiler/nodes/java/StoreFieldNode;>;
            4   54     4  declaringClass  Ljdk/vm/ci/meta/ResolvedJavaType;
            5   54     5   nodeInputList  Ljdk/vm/ci/meta/ResolvedJavaType;
            6   54     6     storeField1  Lorg/graalvm/compiler/nodes/java/StoreFieldNode;
            7   54     7     storeField2  Lorg/graalvm/compiler/nodes/java/StoreFieldNode;
            9   21     8           store  Lorg/graalvm/compiler/nodes/java/StoreFieldNode;
           26   38     8        nodeType  Ljdk/vm/ci/meta/ResolvedJavaType;
           28   31     9            call  Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
           29   31    11          callee  Ljdk/vm/ci/meta/ResolvedJavaMethod;
           40   47     8           load1  Lorg/graalvm/compiler/nodes/java/LoadFieldNode;
           41   47     9           load2  Lorg/graalvm/compiler/nodes/java/LoadFieldNode;
    MethodParameters:
         Name  Flags
      graph    
      context  

  boolean isNodeInput(jdk.vm.ci.meta.ResolvedJavaField, jdk.vm.ci.meta.ResolvedJavaType, jdk.vm.ci.meta.ResolvedJavaType);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaField;Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/ResolvedJavaType;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaField field
        start local 2 // jdk.vm.ci.meta.ResolvedJavaType declaringClass
        start local 3 // jdk.vm.ci.meta.ResolvedJavaType nodeInputList
         0: .line 129
            aload 2 /* declaringClass */
            aload 1 /* field */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isAssignableFrom:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 3
            aload 1 /* field */
            ldc Lorg/graalvm/compiler/graph/Node$Input;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            ifnonnull 1
            aload 1 /* field */
            ldc Lorg/graalvm/compiler/graph/Node$OptionalInput;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            ifnull 3
         1: .line 130
      StackMap locals:
      StackMap stack:
            aload 1 /* field */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getType:()Ljdk/vm/ci/meta/JavaType;
            aload 3 /* nodeInputList */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 129
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // jdk.vm.ci.meta.ResolvedJavaType nodeInputList
        end local 2 // jdk.vm.ci.meta.ResolvedJavaType declaringClass
        end local 1 // jdk.vm.ci.meta.ResolvedJavaField field
        end local 0 // org.graalvm.compiler.core.test.VerifyUpdateUsages this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/graalvm/compiler/core/test/VerifyUpdateUsages;
            0    4     1           field  Ljdk/vm/ci/meta/ResolvedJavaField;
            0    4     2  declaringClass  Ljdk/vm/ci/meta/ResolvedJavaType;
            0    4     3   nodeInputList  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
                Name  Flags
      field           
      declaringClass  
      nodeInputList   

  protected void verify(org.graalvm.compiler.nodes.StructuredGraph, java.lang.Object);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)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.phases.tiers.PhaseContext
            invokevirtual org.graalvm.compiler.core.test.VerifyUpdateUsages.verify:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/phases/tiers/PhaseContext;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lorg/graalvm/compiler/phases/VerifyPhase<Lorg/graalvm/compiler/phases/tiers/PhaseContext;>;
SourceFile: "VerifyUpdateUsages.java"
InnerClasses:
  public abstract Input = org.graalvm.compiler.graph.Node$Input of org.graalvm.compiler.graph.Node
  public abstract OptionalInput = org.graalvm.compiler.graph.Node$OptionalInput of org.graalvm.compiler.graph.Node
  public VerificationError = org.graalvm.compiler.phases.VerifyPhase$VerificationError of org.graalvm.compiler.phases.VerifyPhase