public class org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp extends org.graalvm.compiler.nodes.calc.IntegerLowerThanNode$LowerOp
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp
super_class: org.graalvm.compiler.nodes.calc.IntegerLowerThanNode$LowerOp
{
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/IntegerLessThanNode;
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.IntegerLessThanNode$LessThanOp.$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 0: aload 0
invokespecial org.graalvm.compiler.nodes.calc.IntegerLowerThanNode$LowerOp.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
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=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 4
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.FloatStamp
ifeq 2
aload 2
aload 4
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.FloatStamp
ifeq 2
1: new org.graalvm.compiler.nodes.calc.FloatLessThanNode
dup
aload 1
aload 2
iload 3
invokespecial org.graalvm.compiler.nodes.calc.FloatLessThanNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Z)V
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 4
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.IntegerStamp
ifeq 4
aload 2
aload 4
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.IntegerStamp
ifeq 4
3: new org.graalvm.compiler.nodes.calc.IntegerLessThanNode
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.nodes.calc.IntegerLessThanNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
areturn
4: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
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 optimizeNormalizeCompare(jdk.vm.ci.meta.ConstantReflectionProvider, jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.options.OptionValues, java.lang.Integer, jdk.vm.ci.meta.Constant, org.graalvm.compiler.nodes.calc.NormalizeCompareNode, 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;Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/nodes/calc/NormalizeCompareNode;ZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=15, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 5
checkcast jdk.vm.ci.meta.PrimitiveConstant
astore 9
start local 9 1: iload 7
ifeq 2
aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
goto 3
StackMap locals: jdk.vm.ci.meta.PrimitiveConstant
StackMap stack:
2: aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.ValueNode
3: astore 10
start local 10 4: iload 7
ifeq 5
aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
goto 6
StackMap locals: org.graalvm.compiler.nodes.ValueNode
StackMap stack:
5: aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.ValueNode
6: astore 11
start local 11 7: iload 7
ifeq 8
aload 9
invokevirtual jdk.vm.ci.meta.PrimitiveConstant.asLong:()J
lneg
goto 9
StackMap locals: org.graalvm.compiler.nodes.ValueNode
StackMap stack:
8: aload 9
invokevirtual jdk.vm.ci.meta.PrimitiveConstant.asLong:()J
StackMap locals:
StackMap stack: long
9: lstore 12
start local 12 10: lload 12
lconst_0
lcmp
ifne 14
11: aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
if_acmpeq 12
aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 13
12: StackMap locals: long
StackMap stack:
aload 1
aload 2
aload 3
aload 4
aload 10
aload 11
iload 7
aload 6
getfield org.graalvm.compiler.nodes.calc.NormalizeCompareNode.isUnorderedLess:Z
ixor
aload 8
invokestatic org.graalvm.compiler.nodes.calc.FloatLessThanNode.create:(Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Integer;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;ZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
13: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
aload 4
aload 10
aload 11
aload 8
invokestatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode.create:(Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Integer;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
14: StackMap locals:
StackMap stack:
lload 12
lconst_1
lcmp
ifne 22
15: aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
if_acmpeq 16
aload 6
invokevirtual org.graalvm.compiler.nodes.calc.NormalizeCompareNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 20
16: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
aload 4
aload 11
aload 10
iload 7
aload 6
getfield org.graalvm.compiler.nodes.calc.NormalizeCompareNode.isUnorderedLess:Z
if_icmpne 17
iconst_1
goto 18
StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.options.OptionValues java.lang.Integer jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.calc.NormalizeCompareNode int org.graalvm.compiler.nodes.NodeView jdk.vm.ci.meta.PrimitiveConstant org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode long
StackMap stack: jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.options.OptionValues java.lang.Integer org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
17: iconst_0
StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.options.OptionValues java.lang.Integer jdk.vm.ci.meta.Constant org.graalvm.compiler.nodes.calc.NormalizeCompareNode int org.graalvm.compiler.nodes.NodeView jdk.vm.ci.meta.PrimitiveConstant org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode long
StackMap stack: jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.options.OptionValues java.lang.Integer org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode int
18: aload 8
invokestatic org.graalvm.compiler.nodes.calc.FloatLessThanNode.create:(Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Integer;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;ZLorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 14
start local 14 19: goto 21
end local 14 20: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
aload 4
aload 11
aload 10
aload 8
invokestatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode.create:(Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Integer;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 14
start local 14 21: StackMap locals: org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 14
invokestatic org.graalvm.compiler.nodes.LogicNegationNode.create:(Lorg/graalvm/compiler/nodes/LogicNode;)Lorg/graalvm/compiler/nodes/LogicNode;
areturn
end local 14 22: StackMap locals:
StackMap stack:
lload 12
ldc -1
lcmp
ifgt 24
23: invokestatic org.graalvm.compiler.nodes.LogicConstantNode.contradiction:()Lorg/graalvm/compiler/nodes/LogicConstantNode;
areturn
24: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.$assertionsDisabled:Z
ifne 25
lload 12
ldc 2
lcmp
ifge 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
25: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.nodes.LogicConstantNode.tautology:()Lorg/graalvm/compiler/nodes/LogicConstantNode;
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 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 26 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 26 1 constantReflection Ljdk/vm/ci/meta/ConstantReflectionProvider;
0 26 2 metaAccess Ljdk/vm/ci/meta/MetaAccessProvider;
0 26 3 options Lorg/graalvm/compiler/options/OptionValues;
0 26 4 smallestCompareWidth Ljava/lang/Integer;
0 26 5 constant Ljdk/vm/ci/meta/Constant;
0 26 6 normalizeNode Lorg/graalvm/compiler/nodes/calc/NormalizeCompareNode;
0 26 7 mirrored Z
0 26 8 view Lorg/graalvm/compiler/nodes/NodeView;
1 26 9 primitive Ljdk/vm/ci/meta/PrimitiveConstant;
4 26 10 a Lorg/graalvm/compiler/nodes/ValueNode;
7 26 11 b Lorg/graalvm/compiler/nodes/ValueNode;
10 26 12 cst J
19 20 14 compare Lorg/graalvm/compiler/nodes/LogicNode;
21 22 14 compare Lorg/graalvm/compiler/nodes/LogicNode;
MethodParameters:
Name Flags
constantReflection
metaAccess
options
smallestCompareWidth
constant
normalizeNode
mirrored
view
protected org.graalvm.compiler.nodes.LogicNode findSynonym(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.NodeView);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=19, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokespecial org.graalvm.compiler.nodes.calc.IntegerLowerThanNode$LowerOp.findSynonym:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 4
start local 4 1: aload 4
ifnull 3
2: aload 4
areturn
3: StackMap locals: org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 1
aload 3
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.IntegerStamp
ifeq 6
aload 2
aload 3
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.IntegerStamp
ifeq 6
4: aload 1
aload 3
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.IntegerStamp
aload 2
aload 3
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.IntegerStamp
invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.sameSign:(Lorg/graalvm/compiler/core/common/type/IntegerStamp;Lorg/graalvm/compiler/core/common/type/IntegerStamp;)Z
ifeq 6
5: new org.graalvm.compiler.nodes.calc.IntegerBelowNode
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.nodes.calc.IntegerBelowNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
areturn
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 30
aload 1
instanceof org.graalvm.compiler.nodes.calc.SubNode
ifeq 30
7: aload 1
checkcast org.graalvm.compiler.nodes.calc.SubNode
astore 5
start local 5 8: aconst_null
astore 6
start local 6 9: aconst_null
astore 7
start local 7 10: iconst_0
istore 8
start local 8 11: aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
invokeinterface jdk.vm.ci.meta.Constant.isDefaultForKind:()Z
ifeq 15
12: aload 5
invokevirtual org.graalvm.compiler.nodes.calc.SubNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 6
13: aload 5
invokevirtual org.graalvm.compiler.nodes.calc.SubNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 7
14: goto 19
StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.NodeView org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.nodes.calc.SubNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode int
StackMap stack:
15: aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifeq 19
aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lconst_1
lcmp
ifne 19
16: aload 5
invokevirtual org.graalvm.compiler.nodes.calc.SubNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 6
17: aload 5
invokevirtual org.graalvm.compiler.nodes.calc.SubNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 7
18: iconst_1
istore 8
19: StackMap locals:
StackMap stack:
aload 6
ifnull 30
20: getstatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.$assertionsDisabled:Z
ifne 21
aload 7
ifnonnull 21
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
21: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.graalvm.compiler.nodes.calc.SubNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
aload 3
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.IntegerStamp
astore 9
start local 9 22: aload 5
invokevirtual org.graalvm.compiler.nodes.calc.SubNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
aload 3
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.IntegerStamp
astore 10
start local 10 23: aload 9
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
invokestatic jdk.vm.ci.code.CodeUtil.minValue:(I)J
lstore 11
start local 11 24: aload 9
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
invokestatic jdk.vm.ci.code.CodeUtil.maxValue:(I)J
lstore 13
start local 13 25: aload 9
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
aload 10
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
lload 11
invokestatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode.subtractMayUnderflow:(JJJ)Z
ifne 30
aload 9
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
aload 10
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
lload 13
invokestatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode.subtractMayOverflow:(JJJ)Z
ifne 30
26: new org.graalvm.compiler.nodes.calc.IntegerLessThanNode
dup
aload 6
aload 7
invokespecial org.graalvm.compiler.nodes.calc.IntegerLessThanNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
astore 15
start local 15 27: iload 8
ifeq 29
28: aload 15
invokestatic org.graalvm.compiler.nodes.LogicNegationNode.create:(Lorg/graalvm/compiler/nodes/LogicNode;)Lorg/graalvm/compiler/nodes/LogicNode;
astore 15
29: StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.NodeView org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.nodes.calc.SubNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode int org.graalvm.compiler.core.common.type.IntegerStamp org.graalvm.compiler.core.common.type.IntegerStamp long long org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 15
areturn
end local 15 end local 13 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 30: StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.NodeView org.graalvm.compiler.nodes.LogicNode
StackMap stack:
aload 1
aload 3
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.IntegerStamp
ifeq 74
31: getstatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.$assertionsDisabled:Z
ifne 32
aload 2
aload 3
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.IntegerStamp
ifne 32
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
32: StackMap locals:
StackMap stack:
aload 1
aload 3
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.IntegerStamp
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
istore 5
start local 5 33: getstatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.$assertionsDisabled:Z
ifne 34
aload 2
aload 3
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.IntegerStamp
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
iload 5
if_icmpeq 34
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
34: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.nodes.calc.IntegerLessThanNode.OP:Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
iload 5
invokevirtual org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.minValue:(I)J
lstore 6
start local 6 35: lconst_0
lstore 8
start local 8 36: aconst_null
astore 10
start local 10 37: aconst_null
astore 11
start local 11 38: aload 1
instanceof org.graalvm.compiler.nodes.calc.AddNode
ifeq 45
39: aload 1
checkcast org.graalvm.compiler.nodes.calc.AddNode
astore 12
start local 12 40: aload 12
invokevirtual org.graalvm.compiler.nodes.calc.AddNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifeq 47
41: aload 12
invokevirtual org.graalvm.compiler.nodes.calc.AddNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 13
start local 13 42: lload 13
lload 6
lsub
lstore 8
43: aload 12
invokevirtual org.graalvm.compiler.nodes.calc.AddNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 10
end local 13 end local 12 44: goto 47
StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.NodeView org.graalvm.compiler.nodes.LogicNode int long long org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.JavaConstant
StackMap stack:
45: aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifeq 47
46: aload 1
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 11
47: StackMap locals:
StackMap stack:
aload 10
ifnonnull 48
aload 11
ifnull 74
48: StackMap locals:
StackMap stack:
lconst_0
lstore 12
start local 12 49: aconst_null
astore 14
start local 14 50: aconst_null
astore 15
start local 15 51: aload 2
instanceof org.graalvm.compiler.nodes.calc.AddNode
ifeq 58
52: aload 2
checkcast org.graalvm.compiler.nodes.calc.AddNode
astore 16
start local 16 53: aload 16
invokevirtual org.graalvm.compiler.nodes.calc.AddNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifeq 60
54: aload 16
invokevirtual org.graalvm.compiler.nodes.calc.AddNode.getY:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lstore 17
start local 17 55: lload 17
lload 6
lsub
lstore 12
56: aload 16
invokevirtual org.graalvm.compiler.nodes.calc.AddNode.getX:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 14
end local 17 end local 16 57: goto 60
StackMap locals: long org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.JavaConstant
StackMap stack:
58: aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
ifeq 60
59: aload 2
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
astore 15
60: StackMap locals:
StackMap stack:
aload 14
ifnonnull 61
aload 15
ifnull 74
61: StackMap locals:
StackMap stack:
lload 8
lconst_0
lcmp
ifne 62
aload 10
ifnonnull 63
StackMap locals:
StackMap stack:
62: lload 12
lconst_0
lcmp
ifne 74
aload 14
ifnull 74
63: StackMap locals:
StackMap stack:
aload 10
ifnonnull 66
64: iload 5
aload 11
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lload 6
lsub
invokestatic org.graalvm.compiler.nodes.ConstantNode.forIntegerBits:(IJ)Lorg/graalvm/compiler/nodes/ConstantNode;
astore 10
65: goto 68
StackMap locals:
StackMap stack:
66: lload 8
lconst_0
lcmp
ifeq 68
67: aload 10
iload 5
lload 8
invokestatic org.graalvm.compiler.nodes.ConstantNode.forIntegerBits:(IJ)Lorg/graalvm/compiler/nodes/ConstantNode;
aload 3
invokestatic org.graalvm.compiler.nodes.calc.AddNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 10
68: StackMap locals:
StackMap stack:
aload 14
ifnonnull 71
69: iload 5
aload 15
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
lload 6
lsub
invokestatic org.graalvm.compiler.nodes.ConstantNode.forIntegerBits:(IJ)Lorg/graalvm/compiler/nodes/ConstantNode;
astore 14
70: goto 73
StackMap locals:
StackMap stack:
71: lload 12
lconst_0
lcmp
ifeq 73
72: aload 14
iload 5
lload 12
invokestatic org.graalvm.compiler.nodes.ConstantNode.forIntegerBits:(IJ)Lorg/graalvm/compiler/nodes/ConstantNode;
aload 3
invokestatic org.graalvm.compiler.nodes.calc.AddNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 14
73: StackMap locals:
StackMap stack:
new org.graalvm.compiler.nodes.calc.IntegerBelowNode
dup
aload 10
aload 14
invokespecial org.graalvm.compiler.nodes.calc.IntegerBelowNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
areturn
end local 15 end local 14 end local 12 end local 11 end local 10 end local 8 end local 6 end local 5 74: StackMap locals: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.NodeView org.graalvm.compiler.nodes.LogicNode
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 75 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 75 1 forX Lorg/graalvm/compiler/nodes/ValueNode;
0 75 2 forY Lorg/graalvm/compiler/nodes/ValueNode;
0 75 3 view Lorg/graalvm/compiler/nodes/NodeView;
1 75 4 result Lorg/graalvm/compiler/nodes/LogicNode;
8 30 5 sub Lorg/graalvm/compiler/nodes/calc/SubNode;
9 30 6 xx Lorg/graalvm/compiler/nodes/ValueNode;
10 30 7 yy Lorg/graalvm/compiler/nodes/ValueNode;
11 30 8 negate Z
22 30 9 xStamp Lorg/graalvm/compiler/core/common/type/IntegerStamp;
23 30 10 yStamp Lorg/graalvm/compiler/core/common/type/IntegerStamp;
24 30 11 minValue J
25 30 13 maxValue J
27 30 15 logic Lorg/graalvm/compiler/nodes/LogicNode;
33 74 5 bits I
35 74 6 min J
36 74 8 xResidue J
37 74 10 left Lorg/graalvm/compiler/nodes/ValueNode;
38 74 11 leftCst Ljdk/vm/ci/meta/JavaConstant;
40 44 12 xAdd Lorg/graalvm/compiler/nodes/calc/AddNode;
42 44 13 xCst J
49 74 12 yResidue J
50 74 14 right Lorg/graalvm/compiler/nodes/ValueNode;
51 74 15 rightCst Ljdk/vm/ci/meta/JavaConstant;
53 57 16 yAdd Lorg/graalvm/compiler/nodes/calc/AddNode;
55 57 17 yCst J
MethodParameters:
Name Flags
forX
forY
view
protected org.graalvm.compiler.core.common.calc.CanonicalCondition getCondition();
descriptor: ()Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.core.common.calc.CanonicalCondition.LT:Lorg/graalvm/compiler/core/common/calc/CanonicalCondition;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
protected org.graalvm.compiler.nodes.calc.IntegerLowerThanNode createNode(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/calc/IntegerLowerThanNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.nodes.calc.IntegerLessThanNode
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.nodes.calc.IntegerLessThanNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 x Lorg/graalvm/compiler/nodes/ValueNode;
0 1 2 y Lorg/graalvm/compiler/nodes/ValueNode;
MethodParameters:
Name Flags
x
y
protected long upperBound(org.graalvm.compiler.core.common.type.IntegerStamp);
descriptor: (Lorg/graalvm/compiler/core/common/type/IntegerStamp;)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 stamp Lorg/graalvm/compiler/core/common/type/IntegerStamp;
MethodParameters:
Name Flags
stamp
protected long lowerBound(org.graalvm.compiler.core.common.type.IntegerStamp);
descriptor: (Lorg/graalvm/compiler/core/common/type/IntegerStamp;)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 stamp Lorg/graalvm/compiler/core/common/type/IntegerStamp;
MethodParameters:
Name Flags
stamp
protected int compare(long, long);
descriptor: (JJ)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 3 0: lload 1
lload 3
invokestatic java.lang.Long.compare:(JJ)I
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 a J
0 1 3 b J
MethodParameters:
Name Flags
a
b
protected long min(long, long);
descriptor: (JJ)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 3 0: lload 1
lload 3
invokestatic java.lang.Math.min:(JJ)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 a J
0 1 3 b J
MethodParameters:
Name Flags
a
b
protected long max(long, long);
descriptor: (JJ)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 3 0: lload 1
lload 3
invokestatic java.lang.Math.max:(JJ)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 a J
0 1 3 b J
MethodParameters:
Name Flags
a
b
protected long cast(long, int);
descriptor: (JI)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 3 0: lload 1
iload 3
invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 a J
0 1 3 bits I
MethodParameters:
Name Flags
a
bits
protected long minValue(int);
descriptor: (I)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
invokestatic org.graalvm.compiler.core.common.NumUtil.minValue:(I)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 bits I
MethodParameters:
Name Flags
bits
protected long maxValue(int);
descriptor: (I)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
invokestatic org.graalvm.compiler.core.common.NumUtil.maxValue:(I)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 bits I
MethodParameters:
Name Flags
bits
protected org.graalvm.compiler.core.common.type.IntegerStamp forInteger(int, long, long);
descriptor: (IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 4 0: iload 1
aload 0
lload 2
iload 1
invokevirtual org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.cast:(JI)J
aload 0
lload 4
iload 1
invokevirtual org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.cast:(JI)J
invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/calc/IntegerLessThanNode$LessThanOp;
0 1 1 bits I
0 1 2 min J
0 1 4 max J
MethodParameters:
Name Flags
bits
min
max
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: aload 0
aload 1
aload 2
iload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp.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: "IntegerLessThanNode.java"
NestHost: org.graalvm.compiler.nodes.calc.IntegerLessThanNode
InnerClasses:
public LessThanOp = org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp of org.graalvm.compiler.nodes.calc.IntegerLessThanNode
public abstract LowerOp = org.graalvm.compiler.nodes.calc.IntegerLowerThanNode$LowerOp of org.graalvm.compiler.nodes.calc.IntegerLowerThanNode