class org.graalvm.compiler.core.common.type.FloatStamp$16 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$16
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$16 this
start local 1 // org.graalvm.compiler.core.common.calc.FloatConvert $anonymous0
0: .line 991
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$16 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/common/type/FloatStamp$16;
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=2, locals=3, args_size=2
start local 0 // org.graalvm.compiler.core.common.type.FloatStamp$16 this
start local 1 // jdk.vm.ci.meta.Constant c
0: .line 995
aload 1 /* c */
checkcast jdk.vm.ci.meta.PrimitiveConstant
astore 2 /* value */
start local 2 // jdk.vm.ci.meta.PrimitiveConstant value
1: .line 996
aload 2 /* value */
invokevirtual jdk.vm.ci.meta.PrimitiveConstant.asDouble:()D
d2l
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)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$16 this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/type/FloatStamp$16;
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=8, args_size=2
start local 0 // org.graalvm.compiler.core.common.type.FloatStamp$16 this
start local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
0: .line 1001
aload 1 /* stamp */
invokevirtual org.graalvm.compiler.core.common.type.Stamp.isEmpty:()Z
ifeq 2
1: .line 1002
getstatic jdk.vm.ci.meta.JavaKind.Long: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 1004
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 1005
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 64
if_icmpeq 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 1006
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 1007
aload 2 /* floatStamp */
invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.lowerBound:()D
d2l
lstore 4 /* lowerBound */
start local 4 // long lowerBound
8: .line 1008
aload 2 /* floatStamp */
invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
d2l
lstore 6 /* upperBound */
start local 6 // long upperBound
9: .line 1009
iload 3 /* mustHaveZero */
ifeq 15
10: .line 1010
lload 4 /* lowerBound */
lconst_0
lcmp
ifle 13
11: .line 1011
lconst_0
lstore 4 /* lowerBound */
12: .line 1012
goto 15
StackMap locals: int long long
StackMap stack:
13: lload 6 /* upperBound */
lconst_0
lcmp
ifge 15
14: .line 1013
lconst_0
lstore 6 /* upperBound */
15: .line 1016
StackMap locals:
StackMap stack:
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
lload 4 /* lowerBound */
lload 6 /* upperBound */
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 6 // long upperBound
end local 4 // long 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$16 this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/graalvm/compiler/core/common/type/FloatStamp$16;
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 J
9 16 6 upperBound J
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$16