class org.graalvm.compiler.core.common.type.FloatStamp$13 extends org.graalvm.compiler.core.common.type.ArithmeticOpTable$FloatConvertOp
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.core.common.type.FloatStamp$13
super_class: org.graalvm.compiler.core.common.type.ArithmeticOpTable$FloatConvertOp
{
void <init>(org.graalvm.compiler.core.common.calc.FloatConvert);
descriptor: (Lorg/graalvm/compiler/core/common/calc/FloatConvert;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.graalvm.compiler.core.common.type.FloatStamp$13 this
start local 1 // org.graalvm.compiler.core.common.calc.FloatConvert $anonymous0
0: .line 904
aload 0 /* this */
aload 1 /* $anonymous0 */
invokespecial org.graalvm.compiler.core.common.type.ArithmeticOpTable$FloatConvertOp.<init>:(Lorg/graalvm/compiler/core/common/calc/FloatConvert;)V
return
end local 1 // org.graalvm.compiler.core.common.calc.FloatConvert $anonymous0
end local 0 // org.graalvm.compiler.core.common.type.FloatStamp$13 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/common/type/FloatStamp$13;
0 1 1 $anonymous0 Lorg/graalvm/compiler/core/common/calc/FloatConvert;
MethodParameters:
Name Flags
$anonymous0
public jdk.vm.ci.meta.Constant foldConstant(jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/Constant;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 // org.graalvm.compiler.core.common.type.FloatStamp$13 this
start local 1 // jdk.vm.ci.meta.Constant c
0: .line 908
aload 1 /* c */
checkcast jdk.vm.ci.meta.PrimitiveConstant
astore 2 /* value */
start local 2 // jdk.vm.ci.meta.PrimitiveConstant value
1: .line 909
aload 2 /* value */
invokevirtual jdk.vm.ci.meta.PrimitiveConstant.asFloat:()F
f2i
invokestatic jdk.vm.ci.meta.JavaConstant.forInt:(I)Ljdk/vm/ci/meta/PrimitiveConstant;
areturn
end local 2 // jdk.vm.ci.meta.PrimitiveConstant value
end local 1 // jdk.vm.ci.meta.Constant c
end local 0 // org.graalvm.compiler.core.common.type.FloatStamp$13 this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/type/FloatStamp$13;
0 2 1 c Ljdk/vm/ci/meta/Constant;
1 2 2 value Ljdk/vm/ci/meta/PrimitiveConstant;
MethodParameters:
Name Flags
c
public org.graalvm.compiler.core.common.type.Stamp foldStamp(org.graalvm.compiler.core.common.type.Stamp);
descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=2
start local 0 // org.graalvm.compiler.core.common.type.FloatStamp$13 this
start local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
0: .line 914
aload 1 /* stamp */
invokevirtual org.graalvm.compiler.core.common.type.Stamp.isEmpty:()Z
ifeq 2
1: .line 915
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
invokestatic org.graalvm.compiler.core.common.type.StampFactory.empty:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
areturn
2: .line 917
StackMap locals:
StackMap stack:
aload 1 /* stamp */
checkcast org.graalvm.compiler.core.common.type.FloatStamp
astore 2 /* floatStamp */
start local 2 // org.graalvm.compiler.core.common.type.FloatStamp floatStamp
3: .line 918
getstatic org.graalvm.compiler.core.common.type.FloatStamp.$assertionsDisabled:Z
ifne 4
aload 2 /* floatStamp */
invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.getBits:()I
bipush 32
if_icmpeq 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 919
StackMap locals: org.graalvm.compiler.core.common.type.FloatStamp
StackMap stack:
aload 2 /* floatStamp */
invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.isNonNaN:()Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 3 /* mustHaveZero */
start local 3 // boolean mustHaveZero
7: .line 920
aload 2 /* floatStamp */
invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.lowerBound:()D
d2i
istore 4 /* lowerBound */
start local 4 // int lowerBound
8: .line 921
aload 2 /* floatStamp */
invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
d2i
istore 5 /* upperBound */
start local 5 // int upperBound
9: .line 922
iload 3 /* mustHaveZero */
ifeq 15
10: .line 923
iload 4 /* lowerBound */
ifle 13
11: .line 924
iconst_0
istore 4 /* lowerBound */
12: .line 925
goto 15
StackMap locals: int int int
StackMap stack:
13: iload 5 /* upperBound */
ifge 15
14: .line 926
iconst_0
istore 5 /* upperBound */
15: .line 929
StackMap locals:
StackMap stack:
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
iload 4 /* lowerBound */
i2l
iload 5 /* upperBound */
i2l
invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(Ljdk/vm/ci/meta/JavaKind;JJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
areturn
end local 5 // int upperBound
end local 4 // int lowerBound
end local 3 // boolean mustHaveZero
end local 2 // org.graalvm.compiler.core.common.type.FloatStamp floatStamp
end local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
end local 0 // org.graalvm.compiler.core.common.type.FloatStamp$13 this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/graalvm/compiler/core/common/type/FloatStamp$13;
0 16 1 stamp Lorg/graalvm/compiler/core/common/type/Stamp;
3 16 2 floatStamp Lorg/graalvm/compiler/core/common/type/FloatStamp;
7 16 3 mustHaveZero Z
8 16 4 lowerBound I
9 16 5 upperBound I
MethodParameters:
Name Flags
stamp
}
SourceFile: "FloatStamp.java"
EnclosingMethod: org.graalvm.compiler.core.common.type.FloatStamp
NestHost: org.graalvm.compiler.core.common.type.FloatStamp
InnerClasses:
public abstract FloatConvertOp = org.graalvm.compiler.core.common.type.ArithmeticOpTable$FloatConvertOp of org.graalvm.compiler.core.common.type.ArithmeticOpTable
org.graalvm.compiler.core.common.type.FloatStamp$13