public class org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp extends org.graalvm.compiler.nodes.calc.PointerEqualsNode$PointerEqualsOp
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp
  super_class: org.graalvm.compiler.nodes.calc.PointerEqualsNode$PointerEqualsOp
{
  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 103
            ldc Lorg/graalvm/compiler/nodes/calc/ObjectEqualsNode;
            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.nodes.calc.ObjectEqualsNode$ObjectEqualsOp.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp this
         0: .line 103
            aload 0 /* this */
            invokespecial org.graalvm.compiler.nodes.calc.PointerEqualsNode$PointerEqualsOp.<init>:()V
            return
        end local 0 // org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/calc/ObjectEqualsNode$ObjectEqualsOp;

  protected org.graalvm.compiler.nodes.LogicNode canonicalizeSymmetricConstant(jdk.vm.ci.meta.ConstantReflectionProvider, jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.options.OptionValues, java.lang.Integer, org.graalvm.compiler.core.common.calc.CanonicalCondition, jdk.vm.ci.meta.Constant, org.graalvm.compiler.nodes.ValueNode, boolean, boolean, org.graalvm.compiler.nodes.NodeView);
    descriptor: (Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Integer;Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/ValueNode;ZZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=11, locals=14, args_size=11
        start local 0 // org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp this
        start local 1 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        start local 2 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 3 // org.graalvm.compiler.options.OptionValues options
        start local 4 // java.lang.Integer smallestCompareWidth
        start local 5 // org.graalvm.compiler.core.common.calc.CanonicalCondition condition
        start local 6 // jdk.vm.ci.meta.Constant constant
        start local 7 // org.graalvm.compiler.nodes.ValueNode nonConstant
        start local 8 // boolean mirrored
        start local 9 // boolean unorderedIsTrue
        start local 10 // org.graalvm.compiler.nodes.NodeView view
         0: .line 108
            aload 1 /* constantReflection */
            aload 6 /* constant */
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.asJavaType:(Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 11 /* type */
        start local 11 // jdk.vm.ci.meta.ResolvedJavaType type
         1: .line 109
            aload 11 /* type */
            ifnull 8
            aload 7 /* nonConstant */
            instanceof org.graalvm.compiler.nodes.extended.GetClassNode
            ifeq 8
         2: .line 110
            aload 7 /* nonConstant */
            checkcast org.graalvm.compiler.nodes.extended.GetClassNode
            astore 12 /* getClassNode */
        start local 12 // org.graalvm.compiler.nodes.extended.GetClassNode getClassNode
         3: .line 111
            aload 12 /* getClassNode */
            invokevirtual org.graalvm.compiler.nodes.extended.GetClassNode.getObject:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 13 /* object */
        start local 13 // org.graalvm.compiler.nodes.ValueNode object
         4: .line 112
            getstatic org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp.$assertionsDisabled:Z
            ifne 5
            aload 13 /* object */
            aload 10 /* view */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            checkcast org.graalvm.compiler.core.common.type.ObjectStamp
            invokevirtual org.graalvm.compiler.core.common.type.ObjectStamp.nonNull:()Z
            ifne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 113
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.nodes.extended.GetClassNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 11 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isPrimitive:()Z
            ifne 7
            aload 11 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isConcrete:()Z
            ifne 6
            aload 11 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isArray:()Z
            ifeq 7
         6: .line 114
      StackMap locals:
      StackMap stack:
            aload 11 /* type */
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.createExactTrusted:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            aload 13 /* object */
            invokestatic org.graalvm.compiler.nodes.java.InstanceOfNode.create:(Lorg/graalvm/compiler/core/common/type/TypeReference;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
            areturn
         7: .line 116
      StackMap locals:
      StackMap stack:
            iconst_0
            invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(Z)Lorg/graalvm/compiler/nodes/LogicConstantNode;
            areturn
        end local 13 // org.graalvm.compiler.nodes.ValueNode object
        end local 12 // org.graalvm.compiler.nodes.extended.GetClassNode getClassNode
         8: .line 118
      StackMap locals:
      StackMap stack:
            aload 7 /* nonConstant */
            instanceof org.graalvm.compiler.nodes.java.AbstractNewObjectNode
            ifne 9
            aload 7 /* nonConstant */
            instanceof org.graalvm.compiler.nodes.virtual.AllocatedObjectNode
            ifeq 11
         9: .line 119
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp.$assertionsDisabled:Z
            ifne 10
            aload 7 /* nonConstant */
            instanceof org.graalvm.compiler.nodes.extended.BoxNode
            ifeq 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 121
      StackMap locals:
      StackMap stack:
            iconst_0
            invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(Z)Lorg/graalvm/compiler/nodes/LogicConstantNode;
            areturn
        11: .line 123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* constantReflection */
            aload 2 /* metaAccess */
            aload 3 /* options */
            aload 4 /* smallestCompareWidth */
            aload 5 /* condition */
            aload 6 /* constant */
            aload 7 /* nonConstant */
            iload 8 /* mirrored */
            iload 9 /* unorderedIsTrue */
            aload 10 /* view */
            invokespecial org.graalvm.compiler.nodes.calc.PointerEqualsNode$PointerEqualsOp.canonicalizeSymmetricConstant:(Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Integer;Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/ValueNode;ZZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
            areturn
        end local 11 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 10 // org.graalvm.compiler.nodes.NodeView view
        end local 9 // boolean unorderedIsTrue
        end local 8 // boolean mirrored
        end local 7 // org.graalvm.compiler.nodes.ValueNode nonConstant
        end local 6 // jdk.vm.ci.meta.Constant constant
        end local 5 // org.graalvm.compiler.core.common.calc.CanonicalCondition condition
        end local 4 // java.lang.Integer smallestCompareWidth
        end local 3 // org.graalvm.compiler.options.OptionValues options
        end local 2 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        end local 1 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        end local 0 // org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   12     0                  this  Lorg/graalvm/compiler/nodes/calc/ObjectEqualsNode$ObjectEqualsOp;
            0   12     1    constantReflection  Ljdk/vm/ci/meta/ConstantReflectionProvider;
            0   12     2            metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0   12     3               options  Lorg/graalvm/compiler/options/OptionValues;
            0   12     4  smallestCompareWidth  Ljava/lang/Integer;
            0   12     5             condition  Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
            0   12     6              constant  Ljdk/vm/ci/meta/Constant;
            0   12     7           nonConstant  Lorg/graalvm/compiler/nodes/ValueNode;
            0   12     8              mirrored  Z
            0   12     9       unorderedIsTrue  Z
            0   12    10                  view  Lorg/graalvm/compiler/nodes/NodeView;
            1   12    11                  type  Ljdk/vm/ci/meta/ResolvedJavaType;
            3    8    12          getClassNode  Lorg/graalvm/compiler/nodes/extended/GetClassNode;
            4    8    13                object  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
                      Name  Flags
      constantReflection    
      metaAccess            
      options               
      smallestCompareWidth  
      condition             
      constant              
      nonConstant           
      mirrored              
      unorderedIsTrue       
      view                  

  protected org.graalvm.compiler.nodes.calc.CompareNode duplicateModified(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, boolean, org.graalvm.compiler.nodes.NodeView);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;ZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/calc/CompareNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp this
        start local 1 // org.graalvm.compiler.nodes.ValueNode newX
        start local 2 // org.graalvm.compiler.nodes.ValueNode newY
        start local 3 // boolean unorderedIsTrue
        start local 4 // org.graalvm.compiler.nodes.NodeView view
         0: .line 128
            aload 1 /* newX */
            aload 4 /* view */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            instanceof org.graalvm.compiler.core.common.type.ObjectStamp
            ifeq 2
            aload 2 /* newY */
            aload 4 /* view */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            instanceof org.graalvm.compiler.core.common.type.ObjectStamp
            ifeq 2
         1: .line 129
            new org.graalvm.compiler.nodes.calc.ObjectEqualsNode
            dup
            aload 1 /* newX */
            aload 2 /* newY */
            invokespecial org.graalvm.compiler.nodes.calc.ObjectEqualsNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
            areturn
         2: .line 130
      StackMap locals:
      StackMap stack:
            aload 1 /* newX */
            aload 4 /* view */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            instanceof org.graalvm.compiler.core.common.type.AbstractPointerStamp
            ifeq 4
            aload 2 /* newY */
            aload 4 /* view */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            instanceof org.graalvm.compiler.core.common.type.AbstractPointerStamp
            ifeq 4
         3: .line 131
            new org.graalvm.compiler.nodes.calc.PointerEqualsNode
            dup
            aload 1 /* newX */
            aload 2 /* newY */
            invokespecial org.graalvm.compiler.nodes.calc.PointerEqualsNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
            areturn
         4: .line 133
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 4 // org.graalvm.compiler.nodes.NodeView view
        end local 3 // boolean unorderedIsTrue
        end local 2 // org.graalvm.compiler.nodes.ValueNode newY
        end local 1 // org.graalvm.compiler.nodes.ValueNode newX
        end local 0 // org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0             this  Lorg/graalvm/compiler/nodes/calc/ObjectEqualsNode$ObjectEqualsOp;
            0    5     1             newX  Lorg/graalvm/compiler/nodes/ValueNode;
            0    5     2             newY  Lorg/graalvm/compiler/nodes/ValueNode;
            0    5     3  unorderedIsTrue  Z
            0    5     4             view  Lorg/graalvm/compiler/nodes/NodeView;
    MethodParameters:
                 Name  Flags
      newX             
      newY             
      unorderedIsTrue  
      view             

  protected org.graalvm.compiler.nodes.LogicNode duplicateModified(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, boolean, org.graalvm.compiler.nodes.NodeView);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;ZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
    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
            iload 3
            aload 4
            invokevirtual org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp.duplicateModified:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;ZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/calc/CompareNode;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "ObjectEqualsNode.java"
NestHost: org.graalvm.compiler.nodes.calc.ObjectEqualsNode
InnerClasses:
  public ObjectEqualsOp = org.graalvm.compiler.nodes.calc.ObjectEqualsNode$ObjectEqualsOp of org.graalvm.compiler.nodes.calc.ObjectEqualsNode
  public PointerEqualsOp = org.graalvm.compiler.nodes.calc.PointerEqualsNode$PointerEqualsOp of org.graalvm.compiler.nodes.calc.PointerEqualsNode