public class org.graalvm.compiler.phases.contract.VerifyNodeCosts
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.phases.contract.VerifyNodeCosts
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.phases.contract.VerifyNodeCosts this
         0: .line 41
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.phases.contract.VerifyNodeCosts this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/phases/contract/VerifyNodeCosts;

  public static void verifyNodeClass(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // java.lang.Class clazz
         0: .line 44
            ldc Lorg/graalvm/compiler/graph/Node;
            astore 1 /* nodeClass */
        start local 1 // java.lang.Class nodeClass
         1: .line 45
            aload 1 /* nodeClass */
            aload 0 /* clazz */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 11
         2: .line 46
            aload 0 /* clazz */
            ldc Lorg/graalvm/compiler/nodeinfo/NodeInfo;
            invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 4
         3: .line 47
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "%s.java extends Node.java but does not specify a NodeInfo annotation."
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
         4: .line 50
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
            ifne 11
         5: .line 51
            aload 0 /* clazz */
            invokestatic org.graalvm.compiler.phases.contract.VerifyNodeCosts.getType:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            aload 1 /* nodeClass */
            invokestatic org.graalvm.compiler.phases.contract.VerifyNodeCosts.getType:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/graalvm/compiler/phases/contract/VerifyNodeCosts.lambda$0(Lorg/graalvm/compiler/graph/NodeClass;)Z (6)
                  (Lorg/graalvm/compiler/graph/NodeClass;)Z
            invokestatic org.graalvm.compiler.phases.contract.VerifyNodeCosts.walkCHUntil:(Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/graph/NodeClass;Ljava/util/function/Predicate;)Z
            istore 2 /* cyclesSet */
        start local 2 // boolean cyclesSet
         6: .line 54
            aload 0 /* clazz */
            invokestatic org.graalvm.compiler.phases.contract.VerifyNodeCosts.getType:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            aload 1 /* nodeClass */
            invokestatic org.graalvm.compiler.phases.contract.VerifyNodeCosts.getType:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/graalvm/compiler/phases/contract/VerifyNodeCosts.lambda$1(Lorg/graalvm/compiler/graph/NodeClass;)Z (6)
                  (Lorg/graalvm/compiler/graph/NodeClass;)Z
            invokestatic org.graalvm.compiler.phases.contract.VerifyNodeCosts.walkCHUntil:(Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/graph/NodeClass;Ljava/util/function/Predicate;)Z
            istore 3 /* sizeSet */
        start local 3 // boolean sizeSet
         7: .line 57
            iload 2 /* cyclesSet */
            ifne 9
         8: .line 58
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "%s.java does not specify a NodeCycles value in its class hierarchy."
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
         9: .line 60
      StackMap locals: int int
      StackMap stack:
            iload 3 /* sizeSet */
            ifne 11
        10: .line 61
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "%s.java does not specify a NodeSize value in its class hierarchy."
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 3 // boolean sizeSet
        end local 2 // boolean cyclesSet
        11: .line 65
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class nodeClass
        end local 0 // java.lang.Class clazz
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0      clazz  Ljava/lang/Class<*>;
            1   12     1  nodeClass  Ljava/lang/Class<*>;
            6   11     2  cyclesSet  Z
            7   11     3    sizeSet  Z
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
       Name  Flags
      clazz  

  private static org.graalvm.compiler.graph.NodeClass<?> getType(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // java.lang.Class c
         0: .line 69
            aload 0 /* c */
            invokestatic org.graalvm.compiler.graph.NodeClass.get:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
         1: areturn
         2: .line 70
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         3: .line 71
            new org.graalvm.compiler.phases.VerifyPhase$VerificationError
            dup
            ldc "%s.java does not specify a TYPE field."
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            invokespecial org.graalvm.compiler.phases.VerifyPhase$VerificationError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 0 // java.lang.Class c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     c  Ljava/lang/Class<*>;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
    Signature: (Ljava/lang/Class<*>;)Lorg/graalvm/compiler/graph/NodeClass<*>;
    MethodParameters:
      Name  Flags
      c     

  private static boolean walkCHUntil(org.graalvm.compiler.graph.NodeClass<?>, org.graalvm.compiler.graph.NodeClass<?>, java.util.function.Predicate<org.graalvm.compiler.graph.NodeClass<?>>);
    descriptor: (Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/graph/NodeClass;Ljava/util/function/Predicate;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.graph.NodeClass start
        start local 1 // org.graalvm.compiler.graph.NodeClass until
        start local 2 // java.util.function.Predicate p
         0: .line 76
            aload 0 /* start */
            astore 3 /* cur */
        start local 3 // org.graalvm.compiler.graph.NodeClass cur
         1: .line 77
            goto 5
         2: .line 78
      StackMap locals: org.graalvm.compiler.graph.NodeClass
      StackMap stack:
            aload 2 /* p */
            aload 3 /* cur */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 79
            iconst_1
            ireturn
         4: .line 81
      StackMap locals:
      StackMap stack:
            aload 3 /* cur */
            invokevirtual org.graalvm.compiler.graph.NodeClass.getSuperNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
            astore 3 /* cur */
         5: .line 77
      StackMap locals:
      StackMap stack:
            aload 3 /* cur */
            aload 1 /* until */
            if_acmpeq 6
            aload 3 /* cur */
            ifnonnull 2
         6: .line 83
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // org.graalvm.compiler.graph.NodeClass cur
        end local 2 // java.util.function.Predicate p
        end local 1 // org.graalvm.compiler.graph.NodeClass until
        end local 0 // org.graalvm.compiler.graph.NodeClass start
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0  start  Lorg/graalvm/compiler/graph/NodeClass<*>;
            0    7     1  until  Lorg/graalvm/compiler/graph/NodeClass<*>;
            0    7     2      p  Ljava/util/function/Predicate<Lorg/graalvm/compiler/graph/NodeClass<*>;>;
            1    7     3    cur  Lorg/graalvm/compiler/graph/NodeClass<*>;
    Signature: (Lorg/graalvm/compiler/graph/NodeClass<*>;Lorg/graalvm/compiler/graph/NodeClass<*>;Ljava/util/function/Predicate<Lorg/graalvm/compiler/graph/NodeClass<*>;>;)Z
    MethodParameters:
       Name  Flags
      start  
      until  
      p      

  private static boolean lambda$0(org.graalvm.compiler.graph.NodeClass);
    descriptor: (Lorg/graalvm/compiler/graph/NodeClass;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.graph.NodeClass cur
         0: .line 52
            aload 0 /* cur */
            invokevirtual org.graalvm.compiler.graph.NodeClass.cycles:()Lorg/graalvm/compiler/nodeinfo/NodeCycles;
            getstatic org.graalvm.compiler.nodeinfo.NodeCycles.CYCLES_UNSET:Lorg/graalvm/compiler/nodeinfo/NodeCycles;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.graalvm.compiler.graph.NodeClass cur
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   cur  Lorg/graalvm/compiler/graph/NodeClass<*>;

  private static boolean lambda$1(org.graalvm.compiler.graph.NodeClass);
    descriptor: (Lorg/graalvm/compiler/graph/NodeClass;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.graph.NodeClass cur
         0: .line 55
            aload 0 /* cur */
            invokevirtual org.graalvm.compiler.graph.NodeClass.size:()Lorg/graalvm/compiler/nodeinfo/NodeSize;
            getstatic org.graalvm.compiler.nodeinfo.NodeSize.SIZE_UNSET:Lorg/graalvm/compiler/nodeinfo/NodeSize;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.graalvm.compiler.graph.NodeClass cur
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   cur  Lorg/graalvm/compiler/graph/NodeClass<*>;
}
SourceFile: "VerifyNodeCosts.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public VerificationError = org.graalvm.compiler.phases.VerifyPhase$VerificationError of org.graalvm.compiler.phases.VerifyPhase