public abstract class org.graalvm.compiler.nodes.calc.CompareNode extends org.graalvm.compiler.nodes.BinaryOpLogicNode implements org.graalvm.compiler.graph.spi.Canonicalizable$Binary<org.graalvm.compiler.nodes.ValueNode>
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.graalvm.compiler.nodes.calc.CompareNode
super_class: org.graalvm.compiler.nodes.BinaryOpLogicNode
{
public static final org.graalvm.compiler.graph.NodeClass<org.graalvm.compiler.nodes.calc.CompareNode> TYPE;
descriptor: Lorg/graalvm/compiler/graph/NodeClass;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/compiler/graph/NodeClass<Lorg/graalvm/compiler/nodes/calc/CompareNode;>;
protected final org.graalvm.compiler.core.common.calc.Condition condition;
descriptor: Lorg/graalvm/compiler/core/common/calc/Condition;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final boolean unorderedIsTrue;
descriptor: Z
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
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: ldc Lorg/graalvm/compiler/nodes/calc/CompareNode;
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.CompareNode.$assertionsDisabled:Z
3: ldc Lorg/graalvm/compiler/nodes/calc/CompareNode;
invokestatic org.graalvm.compiler.graph.NodeClass.create:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
putstatic org.graalvm.compiler.nodes.calc.CompareNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(org.graalvm.compiler.graph.NodeClass<? extends org.graalvm.compiler.nodes.calc.CompareNode>, org.graalvm.compiler.core.common.calc.Condition, boolean, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 4
aload 5
invokespecial org.graalvm.compiler.nodes.BinaryOpLogicNode.<init>:(Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
1: aload 0
aload 2
putfield org.graalvm.compiler.nodes.calc.CompareNode.condition:Lorg/graalvm/compiler/core/common/calc/Condition;
2: aload 0
iload 3
putfield org.graalvm.compiler.nodes.calc.CompareNode.unorderedIsTrue:Z
3: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 4 1 c Lorg/graalvm/compiler/graph/NodeClass<+Lorg/graalvm/compiler/nodes/calc/CompareNode;>;
0 4 2 condition Lorg/graalvm/compiler/core/common/calc/Condition;
0 4 3 unorderedIsTrue Z
0 4 4 x Lorg/graalvm/compiler/nodes/ValueNode;
0 4 5 y Lorg/graalvm/compiler/nodes/ValueNode;
Signature: (Lorg/graalvm/compiler/graph/NodeClass<+Lorg/graalvm/compiler/nodes/calc/CompareNode;>;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
MethodParameters:
Name Flags
c
condition
unorderedIsTrue
x
y
public final org.graalvm.compiler.core.common.calc.Condition condition();
descriptor: ()Lorg/graalvm/compiler/core/common/calc/Condition;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.calc.CompareNode.condition:Lorg/graalvm/compiler/core/common/calc/Condition;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
public final boolean unorderedIsTrue();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.calc.CompareNode.unorderedIsTrue:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
private org.graalvm.compiler.nodes.ValueNode optimizeConditional(jdk.vm.ci.meta.Constant, org.graalvm.compiler.nodes.calc.ConditionalNode, jdk.vm.ci.meta.ConstantReflectionProvider, org.graalvm.compiler.core.common.calc.Condition);
descriptor: (Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/calc/ConditionalNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual org.graalvm.compiler.nodes.calc.ConditionalNode.trueValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
astore 5
start local 5 1: aload 2
invokevirtual org.graalvm.compiler.nodes.calc.ConditionalNode.falseValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
astore 6
start local 6 2: aload 6
ifnull 12
aload 5
ifnull 12
aload 3
ifnull 12
3: aload 4
aload 5
aload 1
aload 3
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.unorderedIsTrue:()Z
invokevirtual org.graalvm.compiler.core.common.calc.Condition.foldCondition:(Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/ConstantReflectionProvider;Z)Z
istore 7
start local 7 4: aload 4
aload 6
aload 1
aload 3
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.unorderedIsTrue:()Z
invokevirtual org.graalvm.compiler.core.common.calc.Condition.foldCondition:(Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/ConstantReflectionProvider;Z)Z
istore 8
start local 8 5: iload 7
iload 8
if_icmpne 7
6: iload 7
invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(Z)Lorg/graalvm/compiler/nodes/LogicConstantNode;
areturn
7: StackMap locals: org.graalvm.compiler.nodes.calc.CompareNode jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.calc.ConditionalNode jdk.vm.ci.meta.ConstantReflectionProvider org.graalvm.compiler.core.common.calc.Condition jdk.vm.ci.meta.Constant jdk.vm.ci.meta.Constant int int
StackMap stack:
iload 7
ifeq 10
8: getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 9
iload 8
ifeq 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.ConditionalNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
areturn
10: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 11
iload 8
ifne 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.ConditionalNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
invokestatic org.graalvm.compiler.nodes.LogicNegationNode.create:(Lorg/graalvm/compiler/nodes/LogicNode;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
end local 8 end local 7 12: StackMap locals:
StackMap stack:
aload 0
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 13 1 constant Ljdk/vm/ci/meta/Constant;
0 13 2 conditionalNode Lorg/graalvm/compiler/nodes/calc/ConditionalNode;
0 13 3 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
0 13 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
1 13 5 trueConstant Ljdk/vm/ci/meta/Constant;
2 13 6 falseConstant Ljdk/vm/ci/meta/Constant;
4 12 7 trueResult Z
5 12 8 falseResult Z
MethodParameters:
Name Flags
constant
conditionalNode
constantReflection
cond
protected org.graalvm.compiler.nodes.ValueNode optimizeNormalizeCmp(jdk.vm.ci.meta.Constant, org.graalvm.compiler.nodes.calc.NormalizeCompareNode, boolean);
descriptor: (Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/calc/NormalizeCompareNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.graalvm.compiler.debug.GraalError
dup
ldc "NormalizeCompareNode connected to %s (%s %s %s)"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 1
aastore
dup
iconst_2
aload 2
aastore
dup
iconst_3
iload 3
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 1 1 constant Ljdk/vm/ci/meta/Constant;
0 1 2 normalizeNode Lorg/graalvm/compiler/nodes/calc/NormalizeCompareNode;
0 1 3 mirrored Z
MethodParameters:
Name Flags
constant
normalizeNode
mirrored
public org.graalvm.compiler.nodes.ValueNode canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
astore 4
start local 4 1: aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/Condition;
aload 2
aload 3
aload 4
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.unorderedIsTrue:()Z
invokestatic org.graalvm.compiler.nodes.calc.CompareNode.tryConstantFold:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;Z)Lorg/graalvm/compiler/nodes/LogicNode;
astore 5
start local 5 2: aload 5
ifnull 4
3: aload 5
areturn
4: StackMap locals: jdk.vm.ci.meta.ConstantReflectionProvider org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 8
5: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
aload 3
iconst_1
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.canonicalizeSymmetricConstant:(Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
dup
astore 6
start local 6 6: aload 0
if_acmpeq 28
7: aload 6
areturn
end local 6 8: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 12
9: aload 0
aload 1
aload 3
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
aload 2
iconst_0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.canonicalizeSymmetricConstant:(Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
dup
astore 6
start local 6 10: aload 0
if_acmpeq 28
11: aload 6
areturn
end local 6 12: StackMap locals:
StackMap stack:
aload 2
instanceof org.graalvm.compiler.nodes.calc.ConvertNode
ifeq 28
aload 3
instanceof org.graalvm.compiler.nodes.calc.ConvertNode
ifeq 28
13: aload 2
checkcast org.graalvm.compiler.nodes.calc.ConvertNode
astore 7
start local 7 14: aload 3
checkcast org.graalvm.compiler.nodes.calc.ConvertNode
astore 8
start local 8 15: aload 7
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.preservesOrder:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
ifeq 28
aload 8
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.preservesOrder:(Lorg/graalvm/compiler/core/common/calc/Condition;)Z
ifeq 28
aload 7
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
aload 8
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
invokevirtual org.graalvm.compiler.core.common.type.Stamp.isCompatible:(Lorg/graalvm/compiler/core/common/type/Stamp;)Z
ifeq 28
16: iconst_1
istore 9
start local 9 17: aload 7
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
instanceof org.graalvm.compiler.core.common.type.IntegerStamp
ifeq 20
18: aload 7
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
checkcast org.graalvm.compiler.core.common.type.IntegerStamp
astore 10
start local 10 19: aload 1
aload 10
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.supportSubwordCompare:(I)Z
istore 9
end local 10 20: StackMap locals: org.graalvm.compiler.nodes.calc.CompareNode org.graalvm.compiler.graph.spi.CanonicalizerTool org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.ConstantReflectionProvider org.graalvm.compiler.nodes.LogicNode top org.graalvm.compiler.nodes.calc.ConvertNode org.graalvm.compiler.nodes.calc.ConvertNode int
StackMap stack:
iload 9
ifeq 28
21: aload 7
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getUsageCount:()I
iconst_1
if_icmpgt 22
aload 8
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getUsageCount:()I
iconst_1
if_icmpgt 22
iconst_0
goto 23
StackMap locals:
StackMap stack:
22: iconst_1
StackMap locals:
StackMap stack: int
23: istore 10
start local 10 24: aload 2
instanceof org.graalvm.compiler.nodes.calc.ZeroExtendNode
ifne 25
aload 2
instanceof org.graalvm.compiler.nodes.calc.SignExtendNode
ifeq 27
StackMap locals: int
StackMap stack:
25: iload 10
ifeq 27
26: aload 0
areturn
27: StackMap locals:
StackMap stack:
aload 0
aload 7
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
aload 8
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.duplicateModified:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
end local 10 end local 9 end local 8 end local 7 28: StackMap locals: org.graalvm.compiler.nodes.calc.CompareNode org.graalvm.compiler.graph.spi.CanonicalizerTool org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.ConstantReflectionProvider org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 0
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 29 1 tool Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
0 29 2 forX Lorg/graalvm/compiler/nodes/ValueNode;
0 29 3 forY Lorg/graalvm/compiler/nodes/ValueNode;
1 29 4 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
2 29 5 constantCondition Lorg/graalvm/compiler/nodes/LogicNode;
6 8 6 result Lorg/graalvm/compiler/nodes/ValueNode;
10 12 6 result Lorg/graalvm/compiler/nodes/ValueNode;
14 28 7 convertX Lorg/graalvm/compiler/nodes/calc/ConvertNode;
15 28 8 convertY Lorg/graalvm/compiler/nodes/calc/ConvertNode;
17 28 9 supported Z
19 20 10 intStamp Lorg/graalvm/compiler/core/common/type/IntegerStamp;
24 28 10 multiUsage Z
MethodParameters:
Name Flags
tool
forX
forY
public static org.graalvm.compiler.nodes.LogicNode tryConstantFold(org.graalvm.compiler.core.common.calc.Condition, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, jdk.vm.ci.meta.ConstantReflectionProvider, boolean);
descriptor: (Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;Z)Lorg/graalvm/compiler/nodes/LogicNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 2
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 2
aload 3
ifnull 2
1: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
aload 3
iload 4
invokevirtual org.graalvm.compiler.core.common.calc.Condition.foldCondition:(Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/ConstantReflectionProvider;Z)Z
invokestatic org.graalvm.compiler.nodes.LogicConstantNode.forBoolean:(Z)Lorg/graalvm/compiler/nodes/LogicConstantNode;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 condition Lorg/graalvm/compiler/core/common/calc/Condition;
0 3 1 forX Lorg/graalvm/compiler/nodes/ValueNode;
0 3 2 forY Lorg/graalvm/compiler/nodes/ValueNode;
0 3 3 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
0 3 4 unorderedIsTrue Z
MethodParameters:
Name Flags
condition
forX
forY
constantReflection
unorderedIsTrue
public boolean isIdentityComparison();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.calc.CompareNode.condition:Lorg/graalvm/compiler/core/common/calc/Condition;
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
protected abstract org.graalvm.compiler.nodes.LogicNode duplicateModified(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
newX
newY
protected org.graalvm.compiler.nodes.ValueNode canonicalizeSymmetricConstant(org.graalvm.compiler.graph.spi.CanonicalizerTool, jdk.vm.ci.meta.Constant, org.graalvm.compiler.nodes.ValueNode, boolean);
descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
instanceof org.graalvm.compiler.nodes.calc.ConditionalNode
ifeq 4
1: aload 0
aload 2
aload 3
checkcast org.graalvm.compiler.nodes.calc.ConditionalNode
aload 1
invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
iload 4
ifeq 2
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/Condition;
invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
goto 3
StackMap locals: org.graalvm.compiler.nodes.calc.CompareNode org.graalvm.compiler.graph.spi.CanonicalizerTool jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.ValueNode int
StackMap stack: org.graalvm.compiler.nodes.calc.CompareNode jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.calc.ConditionalNode jdk.vm.ci.meta.ConstantReflectionProvider
2: aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/Condition;
StackMap locals: org.graalvm.compiler.nodes.calc.CompareNode org.graalvm.compiler.graph.spi.CanonicalizerTool jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.ValueNode int
StackMap stack: org.graalvm.compiler.nodes.calc.CompareNode jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.calc.ConditionalNode jdk.vm.ci.meta.ConstantReflectionProvider org.graalvm.compiler.core.common.calc.Condition
3: invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.optimizeConditional:(Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/calc/ConditionalNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/nodes/ValueNode;
areturn
4: StackMap locals:
StackMap stack:
aload 3
instanceof org.graalvm.compiler.nodes.calc.NormalizeCompareNode
ifeq 6
5: aload 0
aload 2
aload 3
checkcast org.graalvm.compiler.nodes.calc.NormalizeCompareNode
iload 4
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.optimizeNormalizeCmp:(Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/calc/NormalizeCompareNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
areturn
6: StackMap locals:
StackMap stack:
aload 3
instanceof org.graalvm.compiler.nodes.calc.ConvertNode
ifeq 24
7: aload 3
checkcast org.graalvm.compiler.nodes.calc.ConvertNode
astore 5
start local 5 8: aload 5
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.asNode:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getUsageCount:()I
iconst_1
if_icmple 9
aload 5
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getUsageCount:()I
iconst_1
if_icmpne 9
iconst_1
goto 10
StackMap locals: org.graalvm.compiler.nodes.calc.ConvertNode
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: istore 6
start local 6 11: aload 5
instanceof org.graalvm.compiler.nodes.calc.ZeroExtendNode
ifne 12
aload 5
instanceof org.graalvm.compiler.nodes.calc.SignExtendNode
ifeq 14
StackMap locals: int
StackMap stack:
12: iload 6
ifeq 14
13: aload 0
areturn
14: StackMap locals:
StackMap stack:
iconst_1
istore 7
start local 7 15: aload 5
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
instanceof org.graalvm.compiler.core.common.type.IntegerStamp
ifeq 18
16: aload 5
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
checkcast org.graalvm.compiler.core.common.type.IntegerStamp
astore 8
start local 8 17: aload 1
aload 8
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.supportSubwordCompare:(I)Z
istore 7
end local 8 18: StackMap locals: int
StackMap stack:
iload 7
ifeq 24
19: aload 0
aload 1
aload 5
aload 2
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.canonicalConvertConstant:(Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/nodes/calc/ConvertNode;Ljdk/vm/ci/meta/Constant;)Lorg/graalvm/compiler/nodes/ConstantNode;
astore 8
start local 8 20: aload 8
ifnull 24
21: iload 4
ifeq 23
22: aload 0
aload 8
aload 5
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.duplicateModified:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
23: StackMap locals: org.graalvm.compiler.nodes.ConstantNode
StackMap stack:
aload 0
aload 5
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
aload 8
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.duplicateModified:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
end local 8 end local 7 end local 6 end local 5 24: StackMap locals: org.graalvm.compiler.nodes.calc.CompareNode org.graalvm.compiler.graph.spi.CanonicalizerTool jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.ValueNode int
StackMap stack:
aload 0
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 25 1 tool Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
0 25 2 constant Ljdk/vm/ci/meta/Constant;
0 25 3 nonConstant Lorg/graalvm/compiler/nodes/ValueNode;
0 25 4 mirrored Z
8 24 5 convert Lorg/graalvm/compiler/nodes/calc/ConvertNode;
11 24 6 multiUsage Z
15 24 7 supported Z
17 18 8 intStamp Lorg/graalvm/compiler/core/common/type/IntegerStamp;
20 24 8 newConstant Lorg/graalvm/compiler/nodes/ConstantNode;
MethodParameters:
Name Flags
tool
constant
nonConstant
mirrored
private org.graalvm.compiler.nodes.ConstantNode canonicalConvertConstant(org.graalvm.compiler.graph.spi.CanonicalizerTool, org.graalvm.compiler.nodes.calc.ConvertNode, jdk.vm.ci.meta.Constant);
descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/nodes/calc/ConvertNode;Ljdk/vm/ci/meta/Constant;)Lorg/graalvm/compiler/nodes/ConstantNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
astore 4
start local 4 1: aload 2
aload 0
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.condition:()Lorg/graalvm/compiler/core/common/calc/Condition;
aload 3
aload 4
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.preservesOrder:(Lorg/graalvm/compiler/core/common/calc/Condition;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Z
ifeq 7
2: aload 2
aload 3
aload 4
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.reverse:(Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Ljdk/vm/ci/meta/Constant;
astore 5
start local 5 3: aload 5
ifnull 7
aload 2
aload 5
aload 4
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.convert:(Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Ljdk/vm/ci/meta/Constant;
aload 3
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 7
4: getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionValue;
invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 6
5: aconst_null
areturn
6: StackMap locals: jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.meta.Constant
StackMap stack:
aload 2
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
aload 5
aload 1
invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Lorg/graalvm/compiler/core/common/type/Stamp;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/MetaAccessProvider;)Lorg/graalvm/compiler/nodes/ConstantNode;
areturn
end local 5 7: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/nodes/calc/CompareNode;
0 8 1 tool Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
0 8 2 convert Lorg/graalvm/compiler/nodes/calc/ConvertNode;
0 8 3 constant Ljdk/vm/ci/meta/Constant;
1 8 4 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
3 7 5 reverseConverted Ljdk/vm/ci/meta/Constant;
MethodParameters:
Name Flags
tool
convert
constant
public static org.graalvm.compiler.nodes.LogicNode createCompareNode(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.core.common.calc.Condition, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, jdk.vm.ci.meta.ConstantReflectionProvider);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 2
aload 3
aload 4
invokestatic org.graalvm.compiler.nodes.calc.CompareNode.createCompareNode:(Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 5
start local 5 1: aload 5
invokevirtual org.graalvm.compiler.nodes.LogicNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
ifnonnull 2
aload 0
aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.LogicNode
goto 3
StackMap locals: org.graalvm.compiler.nodes.LogicNode
StackMap stack:
2: aload 5
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.LogicNode
3: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 4 1 condition Lorg/graalvm/compiler/core/common/calc/Condition;
0 4 2 x Lorg/graalvm/compiler/nodes/ValueNode;
0 4 3 y Lorg/graalvm/compiler/nodes/ValueNode;
0 4 4 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
1 4 5 result Lorg/graalvm/compiler/nodes/LogicNode;
MethodParameters:
Name Flags
graph
condition
x
y
constantReflection
public static org.graalvm.compiler.nodes.LogicNode createCompareNode(org.graalvm.compiler.core.common.calc.Condition, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, jdk.vm.ci.meta.ConstantReflectionProvider);
descriptor: (Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.graalvm.compiler.core.common.calc.Condition.isCanonical:()Z
ifne 2
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "condition is not canonical: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
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
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 3
aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isNumericFloat:()Z
ifeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpne 13
4: aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
instanceof org.graalvm.compiler.core.common.type.AbstractObjectStamp
ifeq 7
5: aload 1
aload 2
aload 3
invokestatic org.graalvm.compiler.nodes.calc.ObjectEqualsNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 4
start local 4 6: goto 20
end local 4 StackMap locals:
StackMap stack:
7: aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
instanceof org.graalvm.compiler.core.common.type.AbstractPointerStamp
ifeq 10
8: aload 1
aload 2
invokestatic org.graalvm.compiler.nodes.calc.PointerEqualsNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 4
start local 4 9: goto 20
end local 4 10: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 11
aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isNumericInteger:()Z
ifne 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
invokestatic org.graalvm.compiler.nodes.calc.IntegerEqualsNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 4
start local 4 12: goto 20
end local 4 StackMap locals:
StackMap stack:
13: aload 0
getstatic org.graalvm.compiler.core.common.calc.Condition.LT:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpne 17
14: getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 15
aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isNumericInteger:()Z
ifne 15
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
15: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
invokestatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 4
start local 4 16: goto 20
end local 4 17: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 18
aload 0
getstatic org.graalvm.compiler.core.common.calc.Condition.BT:Lorg/graalvm/compiler/core/common/calc/Condition;
if_acmpeq 18
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
18: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.CompareNode.$assertionsDisabled:Z
ifne 19
aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.isNumericInteger:()Z
ifne 19
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
19: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
invokestatic org.graalvm.compiler.nodes.calc.IntegerBelowNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 4
start local 4 20: StackMap locals: org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 condition Lorg/graalvm/compiler/core/common/calc/Condition;
0 21 1 x Lorg/graalvm/compiler/nodes/ValueNode;
0 21 2 y Lorg/graalvm/compiler/nodes/ValueNode;
0 21 3 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
6 7 4 comparison Lorg/graalvm/compiler/nodes/LogicNode;
9 10 4 comparison Lorg/graalvm/compiler/nodes/LogicNode;
12 13 4 comparison Lorg/graalvm/compiler/nodes/LogicNode;
16 17 4 comparison Lorg/graalvm/compiler/nodes/LogicNode;
20 21 4 comparison Lorg/graalvm/compiler/nodes/LogicNode;
MethodParameters:
Name Flags
condition
x
y
constantReflection
public org.graalvm.compiler.graph.Node canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool, org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
checkcast org.graalvm.compiler.nodes.ValueNode
aload 3
checkcast org.graalvm.compiler.nodes.ValueNode
invokevirtual org.graalvm.compiler.nodes.calc.CompareNode.canonical:(Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lorg/graalvm/compiler/nodes/BinaryOpLogicNode;Lorg/graalvm/compiler/graph/spi/Canonicalizable$Binary<Lorg/graalvm/compiler/nodes/ValueNode;>;
SourceFile: "CompareNode.java"
InnerClasses:
public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
public abstract Binary = org.graalvm.compiler.graph.spi.Canonicalizable$Binary of org.graalvm.compiler.graph.spi.Canonicalizable
RuntimeVisibleAnnotations:
org.graalvm.compiler.nodeinfo.NodeInfo(cycles = org.graalvm.compiler.nodeinfo.NodeCycles.CYCLES_1:Lorg/graalvm/compiler/nodeinfo/NodeCycles;)