class org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1 implements org.graalvm.compiler.core.match.ComplexMatchResult
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1
  super_class: java.lang.Object
{
  final org.graalvm.compiler.core.amd64.AMD64NodeMatchRules this$0;
    descriptor: Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.nodes.IfNode val$ifNode;
    descriptor: Lorg/graalvm/compiler/nodes/IfNode;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.nodes.calc.CompareNode val$compare;
    descriptor: Lorg/graalvm/compiler/nodes/calc/CompareNode;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.nodes.ValueNode val$value;
    descriptor: Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.nodes.memory.Access val$access;
    descriptor: Lorg/graalvm/compiler/nodes/memory/Access;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final jdk.vm.ci.amd64.AMD64Kind val$kind;
    descriptor: Ljdk/vm/ci/amd64/AMD64Kind;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.core.common.calc.Condition val$finalCondition;
    descriptor: Lorg/graalvm/compiler/core/common/calc/Condition;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.graalvm.compiler.core.amd64.AMD64NodeMatchRules, org.graalvm.compiler.nodes.IfNode, org.graalvm.compiler.nodes.calc.CompareNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.memory.Access, jdk.vm.ci.amd64.AMD64Kind, org.graalvm.compiler.core.common.calc.Condition);
    descriptor: (Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/Access;Ljdk/vm/ci/amd64/AMD64Kind;Lorg/graalvm/compiler/core/common/calc/Condition;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1 this
         0: .line 141
            aload 0 /* this */
            aload 1
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            aload 0 /* this */
            aload 2
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$ifNode:Lorg/graalvm/compiler/nodes/IfNode;
            aload 0 /* this */
            aload 3
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$compare:Lorg/graalvm/compiler/nodes/calc/CompareNode;
            aload 0 /* this */
            aload 4
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$value:Lorg/graalvm/compiler/nodes/ValueNode;
            aload 0 /* this */
            aload 5
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$access:Lorg/graalvm/compiler/nodes/memory/Access;
            aload 0 /* this */
            aload 6
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$kind:Ljdk/vm/ci/amd64/AMD64Kind;
            aload 0 /* this */
            aload 7
            putfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$finalCondition:Lorg/graalvm/compiler/core/common/calc/Condition;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules$1;
    MethodParameters:
                    Name  Flags
      this$0              final
      val$ifNode          final
      val$compare         final
      val$value           final
      val$access          final
      val$kind            final
      val$finalCondition  final

  public jdk.vm.ci.meta.Value evaluate(org.graalvm.compiler.core.gen.NodeLIRBuilder);
    descriptor: (Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=9, args_size=2
        start local 0 // org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1 this
        start local 1 // org.graalvm.compiler.core.gen.NodeLIRBuilder builder
         0: .line 144
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$ifNode:Lorg/graalvm/compiler/nodes/IfNode;
            invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokestatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.access$2:(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
            astore 2 /* trueLabel */
        start local 2 // org.graalvm.compiler.lir.LabelRef trueLabel
         1: .line 145
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$ifNode:Lorg/graalvm/compiler/nodes/IfNode;
            invokevirtual org.graalvm.compiler.nodes.IfNode.falseSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokestatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.access$2:(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/lir/LabelRef;
            astore 3 /* falseLabel */
        start local 3 // org.graalvm.compiler.lir.LabelRef falseLabel
         2: .line 146
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$compare:Lorg/graalvm/compiler/nodes/calc/CompareNode;
            invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.unorderedIsTrue:()Z
            istore 4 /* unorderedIsTrue */
        start local 4 // boolean unorderedIsTrue
         3: .line 147
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$ifNode:Lorg/graalvm/compiler/nodes/IfNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$ifNode:Lorg/graalvm/compiler/nodes/IfNode;
            invokevirtual org.graalvm.compiler.nodes.IfNode.trueSuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokevirtual org.graalvm.compiler.nodes.IfNode.probability:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;)D
            dstore 5 /* trueLabelProbability */
        start local 5 // double trueLabelProbability
         4: .line 148
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$value:Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.access$3:(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
            astore 7 /* other */
        start local 7 // jdk.vm.ci.meta.Value other
         5: .line 149
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$access:Lorg/graalvm/compiler/nodes/memory/Access;
            invokeinterface org.graalvm.compiler.nodes.memory.Access.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            invokestatic org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.access$3:(Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
            checkcast org.graalvm.compiler.lir.amd64.AMD64AddressValue
            astore 8 /* address */
        start local 8 // org.graalvm.compiler.lir.amd64.AMD64AddressValue address
         6: .line 150
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getLIRGeneratorTool:()Lorg/graalvm/compiler/core/amd64/AMD64LIRGenerator;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$kind:Ljdk/vm/ci/amd64/AMD64Kind;
            aload 7 /* other */
            aload 8 /* address */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.this$0:Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$access:Lorg/graalvm/compiler/nodes/memory/Access;
            invokevirtual org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.getState:(Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/lir/LIRFrameState;
            aload 0 /* this */
            getfield org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1.val$finalCondition:Lorg/graalvm/compiler/core/common/calc/Condition;
            iload 4 /* unorderedIsTrue */
            aload 2 /* trueLabel */
            aload 3 /* falseLabel */
            dload 5 /* trueLabelProbability */
            invokevirtual org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitCompareBranchMemory:(Ljdk/vm/ci/amd64/AMD64Kind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
         7: .line 151
            aconst_null
            areturn
        end local 8 // org.graalvm.compiler.lir.amd64.AMD64AddressValue address
        end local 7 // jdk.vm.ci.meta.Value other
        end local 5 // double trueLabelProbability
        end local 4 // boolean unorderedIsTrue
        end local 3 // org.graalvm.compiler.lir.LabelRef falseLabel
        end local 2 // org.graalvm.compiler.lir.LabelRef trueLabel
        end local 1 // org.graalvm.compiler.core.gen.NodeLIRBuilder builder
        end local 0 // org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1 this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    8     0                  this  Lorg/graalvm/compiler/core/amd64/AMD64NodeMatchRules$1;
            0    8     1               builder  Lorg/graalvm/compiler/core/gen/NodeLIRBuilder;
            1    8     2             trueLabel  Lorg/graalvm/compiler/lir/LabelRef;
            2    8     3            falseLabel  Lorg/graalvm/compiler/lir/LabelRef;
            3    8     4       unorderedIsTrue  Z
            4    8     5  trueLabelProbability  D
            5    8     7                 other  Ljdk/vm/ci/meta/Value;
            6    8     8               address  Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
    MethodParameters:
         Name  Flags
      builder  
}
SourceFile: "AMD64NodeMatchRules.java"
EnclosingMethod: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules.emitCompareBranchMemory:(Lorg/graalvm/compiler/nodes/IfNode;Lorg/graalvm/compiler/nodes/calc/CompareNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/Access;)Lorg/graalvm/compiler/core/match/ComplexMatchResult;
NestHost: org.graalvm.compiler.core.amd64.AMD64NodeMatchRules
InnerClasses:
  org.graalvm.compiler.core.amd64.AMD64NodeMatchRules$1