tests/tcg: add float_convd test
This is a simple transliteration of the float_convs test but this time working with doubles. I'm used it to test the handling of vector registers in gdbstub but wasn't able to find a non-ugly way to automate it. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220419091020.3008144-23-alex.bennee@linaro.org>
This commit is contained in:
parent
9730a27ef4
commit
2931014c3d
988
tests/tcg/aarch64/float_convd.ref
Normal file
988
tests/tcg/aarch64/float_convd.ref
Normal file
@ -0,0 +1,988 @@
|
||||
### Rounding to nearest
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-inf:0xff800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb600000000000000p+1:0x40490fdb) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.00000000000000000000p+31:0x4f000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(inf:0x7f800000) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
### Rounding upwards
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000200000000000000p-25:0x33000001) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe800000000000000p-25:0x337ffff4) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801c00000000000000p-15:0x387fc00e) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000e00000000000000p-14:0x38800007) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0aa00000000000000p+1:0x402df855) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb600000000000000p+1:0x40490fdb) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.00000000000000000000p+31:0x4f000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(inf:0x7f800000) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
### Rounding downwards
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-inf:0xff800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-149:0x80000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb400000000000000p+1:0x40490fda) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.fffffe00000000000000p+30:0x4effffff) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
### Rounding to zero
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb400000000000000p+1:0x40490fda) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.fffffe00000000000000p+30:0x4effffff) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: 9223372036854775807 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
988
tests/tcg/arm/float_convd.ref
Normal file
988
tests/tcg/arm/float_convd.ref
Normal file
@ -0,0 +1,988 @@
|
||||
### Rounding to nearest
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-inf:0xff800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb600000000000000p+1:0x40490fdb) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (INEXACT )
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (INEXACT )
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (INEXACT )
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (INEXACT )
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (INEXACT )
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (INEXACT )
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (INEXACT )
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (INEXACT )
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (INEXACT )
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (INEXACT )
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.00000000000000000000p+31:0x4f000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (INEXACT )
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (INEXACT )
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(inf:0x7f800000) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
### Rounding upwards
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000200000000000000p-25:0x33000001) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe800000000000000p-25:0x337ffff4) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801c00000000000000p-15:0x387fc00e) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000e00000000000000p-14:0x38800007) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0aa00000000000000p+1:0x402df855) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb600000000000000p+1:0x40490fdb) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (INEXACT )
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (INEXACT )
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (INEXACT )
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (INEXACT )
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (INEXACT )
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (INEXACT )
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (INEXACT )
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (INEXACT )
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (INEXACT )
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (INEXACT )
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.00000000000000000000p+31:0x4f000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (INEXACT )
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (INEXACT )
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(inf:0x7f800000) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
### Rounding downwards
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-inf:0xff800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-149:0x80000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb400000000000000p+1:0x40490fda) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (INEXACT )
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (INEXACT )
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (INEXACT )
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (INEXACT )
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (INEXACT )
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (INEXACT )
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (INEXACT )
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (INEXACT )
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (INEXACT )
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (INEXACT )
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.fffffe00000000000000p+30:0x4effffff) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (INEXACT )
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (INEXACT )
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
### Rounding to zero
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: 1 (INEXACT INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (INEXACT )
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (UNDERFLOW INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (UNDERFLOW INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb400000000000000p+1:0x40490fda) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (INEXACT )
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (INEXACT )
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (INEXACT )
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (INEXACT )
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (INEXACT )
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (INEXACT )
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (INEXACT )
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (INEXACT )
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (INEXACT )
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (INEXACT )
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (INEXACT )
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.fffffe00000000000000p+30:0x4effffff) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (INEXACT )
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (INEXACT )
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OVERFLOW INEXACT )
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INEXACT INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: 2147483647 (INVALID)
|
||||
to int64: -1 (INVALID)
|
||||
to uint32: -1 (INVALID)
|
||||
to uint64: -1 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: 0 (INVALID)
|
||||
to int64: 0 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
988
tests/tcg/i386/float_convd.conf
Normal file
988
tests/tcg/i386/float_convd.conf
Normal file
@ -0,0 +1,988 @@
|
||||
### Rounding to nearest
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-nan:0xffc00000)
|
||||
to single: f64(-nan:0x00fff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-inf:0xff800000)
|
||||
to single: f64(-inf:0x00fff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-inf:0xff800000)
|
||||
to single: f64(-inf:0x00fff0000000000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59)
|
||||
to single: f64(-0x1.1874b200000000000000p+103:0x00c661874b20000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b)
|
||||
to single: f64(-0x1.c0bab600000000000000p+99:0x00c62c0bab60000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.00000000000000000000p+1:0xc0000000)
|
||||
to single: f64(-0x1.00000000000000000000p+1:0x00c000000000000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from single: f32(-0x1.00000000000000000000p+0:0xbf800000)
|
||||
to single: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from single: f32(-0x0.00000000000000000000p+0:0x80000000)
|
||||
to single: f64(-0x0.00000000000000000000p+0:0x008000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(-0x1.00000000000000000000p-126:0x80800000)
|
||||
to single: f64(-0x1.00000000000000000000p-126:0x00b810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from single: f32(0x1.00000000000000000000p-126:0x00800000)
|
||||
to single: f64(0x1.00000000000000000000p-126:0x003810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p-25:0x33000000)
|
||||
to single: f64(0x1.00000000000000000000p-25:0x003e60000000000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ffffe600000000000000p-25:0x337ffff3)
|
||||
to single: f64(0x1.ffffe600000000000000p-25:0x003e6ffffe60000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ff801a00000000000000p-15:0x387fc00d)
|
||||
to single: f64(0x1.ff801a00000000000000p-15:0x003f0ff801a0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000c00000000000000p-14:0x38800006)
|
||||
to single: f64(0x1.00000c00000000000000p-14:0x003f100000c0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00400000000000000000p+0:0x3f802000)
|
||||
to single: f64(0x1.00400000000000000000p+0:0x003ff0040000000000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00000000000000000000p+1:0x40000000)
|
||||
to single: f64(0x1.00000000000000000000p+1:0x004000000000000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from single: f32(0x1.5bf0a800000000000000p+1:0x402df854)
|
||||
to single: f64(0x1.5bf0a800000000000000p+1:0x004005bf0a80000000) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from single: f32(0x1.921fb600000000000000p+1:0x40490fdb)
|
||||
to single: f64(0x1.921fb600000000000000p+1:0x00400921fb60000000) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00)
|
||||
to single: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+15:0x477fe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from single: f32(0x1.ffc20000000000000000p+15:0x477fe100)
|
||||
to single: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80)
|
||||
to single: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+16:0x47ffe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from single: f32(0x1.ffc10000000000000000p+16:0x47ffe080)
|
||||
to single: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from single: f32(0x1.00000000000000000000p+31:0x4f000000)
|
||||
to single: f64(0x1.00000000000000000000p+31:0x0041e0000000000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(inf:0x7f800000)
|
||||
to single: f64(inf:0x007ff0000000000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(inf:0x7f800000)
|
||||
to single: f64(inf:0x007ff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
### Rounding upwards
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-nan:0xffc00000)
|
||||
to single: f64(-nan:0x00fff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-inf:0xff800000)
|
||||
to single: f64(-inf:0x00fff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58)
|
||||
to single: f64(-0x1.1874b000000000000000p+103:0x00c661874b00000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a)
|
||||
to single: f64(-0x1.c0bab400000000000000p+99:0x00c62c0bab40000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.00000000000000000000p+1:0xc0000000)
|
||||
to single: f64(-0x1.00000000000000000000p+1:0x00c000000000000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from single: f32(-0x1.00000000000000000000p+0:0xbf800000)
|
||||
to single: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from single: f32(-0x0.00000000000000000000p+0:0x80000000)
|
||||
to single: f64(-0x0.00000000000000000000p+0:0x008000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(-0x1.00000000000000000000p-126:0x80800000)
|
||||
to single: f64(-0x1.00000000000000000000p-126:0x00b810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from single: f32(0x1.00000000000000000000p-126:0x00800000)
|
||||
to single: f64(0x1.00000000000000000000p-126:0x003810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000200000000000000p-25:0x33000001)
|
||||
to single: f64(0x1.00000200000000000000p-25:0x003e60000020000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ffffe800000000000000p-25:0x337ffff4)
|
||||
to single: f64(0x1.ffffe800000000000000p-25:0x003e6ffffe80000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ff801c00000000000000p-15:0x387fc00e)
|
||||
to single: f64(0x1.ff801c00000000000000p-15:0x003f0ff801c0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000e00000000000000p-14:0x38800007)
|
||||
to single: f64(0x1.00000e00000000000000p-14:0x003f100000e0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00400000000000000000p+0:0x3f802000)
|
||||
to single: f64(0x1.00400000000000000000p+0:0x003ff0040000000000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p-149:0x00000001)
|
||||
to single: f64(0x1.00000000000000000000p-149:0x0036a0000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p-149:0x00000001)
|
||||
to single: f64(0x1.00000000000000000000p-149:0x0036a0000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p-149:0x00000001)
|
||||
to single: f64(0x1.00000000000000000000p-149:0x0036a0000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00000000000000000000p+1:0x40000000)
|
||||
to single: f64(0x1.00000000000000000000p+1:0x004000000000000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from single: f32(0x1.5bf0aa00000000000000p+1:0x402df855)
|
||||
to single: f64(0x1.5bf0aa00000000000000p+1:0x004005bf0aa0000000) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from single: f32(0x1.921fb600000000000000p+1:0x40490fdb)
|
||||
to single: f64(0x1.921fb600000000000000p+1:0x00400921fb60000000) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00)
|
||||
to single: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+15:0x477fe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from single: f32(0x1.ffc20000000000000000p+15:0x477fe100)
|
||||
to single: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80)
|
||||
to single: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+16:0x47ffe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from single: f32(0x1.ffc10000000000000000p+16:0x47ffe080)
|
||||
to single: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from single: f32(0x1.00000000000000000000p+31:0x4f000000)
|
||||
to single: f64(0x1.00000000000000000000p+31:0x0041e0000000000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(inf:0x7f800000)
|
||||
to single: f64(inf:0x007ff0000000000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(inf:0x7f800000)
|
||||
to single: f64(inf:0x007ff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
### Rounding downwards
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-nan:0xffc00000)
|
||||
to single: f64(-nan:0x00fff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-inf:0xff800000)
|
||||
to single: f64(-inf:0x00fff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-inf:0xff800000)
|
||||
to single: f64(-inf:0x00fff0000000000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59)
|
||||
to single: f64(-0x1.1874b200000000000000p+103:0x00c661874b20000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b)
|
||||
to single: f64(-0x1.c0bab600000000000000p+99:0x00c62c0bab60000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.00000000000000000000p+1:0xc0000000)
|
||||
to single: f64(-0x1.00000000000000000000p+1:0x00c000000000000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from single: f32(-0x1.00000000000000000000p+0:0xbf800000)
|
||||
to single: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from single: f32(-0x1.00000000000000000000p-149:0x80000001)
|
||||
to single: f64(-0x1.00000000000000000000p-149:0x00b6a0000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(-0x1.00000000000000000000p-126:0x80800000)
|
||||
to single: f64(-0x1.00000000000000000000p-126:0x00b810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from single: f32(0x1.00000000000000000000p-126:0x00800000)
|
||||
to single: f64(0x1.00000000000000000000p-126:0x003810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p-25:0x33000000)
|
||||
to single: f64(0x1.00000000000000000000p-25:0x003e60000000000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ffffe600000000000000p-25:0x337ffff3)
|
||||
to single: f64(0x1.ffffe600000000000000p-25:0x003e6ffffe60000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ff801a00000000000000p-15:0x387fc00d)
|
||||
to single: f64(0x1.ff801a00000000000000p-15:0x003f0ff801a0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000c00000000000000p-14:0x38800006)
|
||||
to single: f64(0x1.00000c00000000000000p-14:0x003f100000c0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00400000000000000000p+0:0x3f802000)
|
||||
to single: f64(0x1.00400000000000000000p+0:0x003ff0040000000000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00000000000000000000p+1:0x40000000)
|
||||
to single: f64(0x1.00000000000000000000p+1:0x004000000000000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from single: f32(0x1.5bf0a800000000000000p+1:0x402df854)
|
||||
to single: f64(0x1.5bf0a800000000000000p+1:0x004005bf0a80000000) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from single: f32(0x1.921fb400000000000000p+1:0x40490fda)
|
||||
to single: f64(0x1.921fb400000000000000p+1:0x00400921fb40000000) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00)
|
||||
to single: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+15:0x477fe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from single: f32(0x1.ffc20000000000000000p+15:0x477fe100)
|
||||
to single: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80)
|
||||
to single: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+16:0x47ffe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from single: f32(0x1.ffc10000000000000000p+16:0x47ffe080)
|
||||
to single: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from single: f32(0x1.fffffe00000000000000p+30:0x4effffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+30:0x0041dfffffe0000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(inf:0x7f800000)
|
||||
to single: f64(inf:0x007ff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
### Rounding to zero
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-nan:0xffc00000)
|
||||
to single: f64(-nan:0x00fff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-inf:0xff800000)
|
||||
to single: f64(-inf:0x00fff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff)
|
||||
to single: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58)
|
||||
to single: f64(-0x1.1874b000000000000000p+103:0x00c661874b00000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a)
|
||||
to single: f64(-0x1.c0bab400000000000000p+99:0x00c62c0bab40000000) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(-0x1.00000000000000000000p+1:0xc0000000)
|
||||
to single: f64(-0x1.00000000000000000000p+1:0x00c000000000000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from single: f32(-0x1.00000000000000000000p+0:0xbf800000)
|
||||
to single: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from single: f32(-0x0.00000000000000000000p+0:0x80000000)
|
||||
to single: f64(-0x0.00000000000000000000p+0:0x008000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(-0x1.00000000000000000000p-126:0x80800000)
|
||||
to single: f64(-0x1.00000000000000000000p-126:0x00b810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from single: f32(0x1.00000000000000000000p-126:0x00800000)
|
||||
to single: f64(0x1.00000000000000000000p-126:0x003810000000000000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p-25:0x33000000)
|
||||
to single: f64(0x1.00000000000000000000p-25:0x003e60000000000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ffffe600000000000000p-25:0x337ffff3)
|
||||
to single: f64(0x1.ffffe600000000000000p-25:0x003e6ffffe60000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.ff801a00000000000000p-15:0x387fc00d)
|
||||
to single: f64(0x1.ff801a00000000000000p-15:0x003f0ff801a0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000c00000000000000p-14:0x38800006)
|
||||
to single: f64(0x1.00000c00000000000000p-14:0x003f100000c0000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00400000000000000000p+0:0x3f802000)
|
||||
to single: f64(0x1.00400000000000000000p+0:0x003ff0040000000000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x0.00000000000000000000p+0:0000000000)
|
||||
to single: f64(0x0.00000000000000000000p+0:00000000000000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from single: f32(0x1.00000000000000000000p+0:0x3f800000)
|
||||
to single: f64(0x1.00000000000000000000p+0:0x003ff0000000000000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from single: f32(0x1.00000000000000000000p+1:0x40000000)
|
||||
to single: f64(0x1.00000000000000000000p+1:0x004000000000000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from single: f32(0x1.5bf0a800000000000000p+1:0x402df854)
|
||||
to single: f64(0x1.5bf0a800000000000000p+1:0x004005bf0a80000000) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from single: f32(0x1.921fb400000000000000p+1:0x40490fda)
|
||||
to single: f64(0x1.921fb400000000000000p+1:0x00400921fb40000000) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00)
|
||||
to single: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+15:0x477fe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from single: f32(0x1.ffc20000000000000000p+15:0x477fe100)
|
||||
to single: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80)
|
||||
to single: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from single: f32(0x1.ffc00000000000000000p+16:0x47ffe000)
|
||||
to single: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from single: f32(0x1.ffc10000000000000000p+16:0x47ffe080)
|
||||
to single: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from single: f32(0x1.fffffe00000000000000p+30:0x4effffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+30:0x0041dfffffe0000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff)
|
||||
to single: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from single: f32(inf:0x7f800000)
|
||||
to single: f64(inf:0x007ff0000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fc00000)
|
||||
to single: f64(nan:0x007ff8000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from single: f32(nan:0x7fe00000)
|
||||
to single: f64(nan:0x007ffc000000000000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
106
tests/tcg/multiarch/float_convd.c
Normal file
106
tests/tcg/multiarch/float_convd.c
Normal file
@ -0,0 +1,106 @@
|
||||
/*
|
||||
* Floating Point Convert Doubles to Various
|
||||
*
|
||||
* Copyright (c) 2019 Linaro
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
#include <float.h>
|
||||
#include <fenv.h>
|
||||
|
||||
|
||||
#include "float_helpers.h"
|
||||
|
||||
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
|
||||
typedef struct {
|
||||
int flag;
|
||||
char *desc;
|
||||
} float_mapping;
|
||||
|
||||
float_mapping round_flags[] = {
|
||||
{ FE_TONEAREST, "to nearest" },
|
||||
#ifdef FE_UPWARD
|
||||
{ FE_UPWARD, "upwards" },
|
||||
#endif
|
||||
#ifdef FE_DOWNWARD
|
||||
{ FE_DOWNWARD, "downwards" },
|
||||
#endif
|
||||
#ifdef FE_TOWARDZERO
|
||||
{ FE_TOWARDZERO, "to zero" }
|
||||
#endif
|
||||
};
|
||||
|
||||
static void print_input(double input)
|
||||
{
|
||||
char *in_fmt = fmt_f64(input);
|
||||
printf("from double: %s\n", in_fmt);
|
||||
free(in_fmt);
|
||||
}
|
||||
|
||||
static void convert_double_to_single(double input)
|
||||
{
|
||||
float output;
|
||||
char *out_fmt, *flag_fmt;
|
||||
|
||||
feclearexcept(FE_ALL_EXCEPT);
|
||||
|
||||
output = input;
|
||||
|
||||
flag_fmt = fmt_flags();
|
||||
out_fmt = fmt_f32(output);
|
||||
printf(" to single: %s (%s)\n", out_fmt, flag_fmt);
|
||||
free(out_fmt);
|
||||
free(flag_fmt);
|
||||
}
|
||||
|
||||
#define xstr(a) str(a)
|
||||
#define str(a) #a
|
||||
|
||||
#define CONVERT_DOUBLE_TO_INT(TYPE, FMT) \
|
||||
static void convert_double_to_ ## TYPE(double input) \
|
||||
{ \
|
||||
TYPE ## _t output; \
|
||||
char *flag_fmt; \
|
||||
const char to[] = "to " xstr(TYPE); \
|
||||
feclearexcept(FE_ALL_EXCEPT); \
|
||||
output = input; \
|
||||
flag_fmt = fmt_flags(); \
|
||||
printf("%11s: %" FMT " (%s)\n", to, output, flag_fmt); \
|
||||
free(flag_fmt); \
|
||||
}
|
||||
|
||||
CONVERT_DOUBLE_TO_INT( int32, PRId32)
|
||||
CONVERT_DOUBLE_TO_INT(uint32, PRId32)
|
||||
CONVERT_DOUBLE_TO_INT( int64, PRId64)
|
||||
CONVERT_DOUBLE_TO_INT(uint64, PRId64)
|
||||
|
||||
int main(int argc, char *argv[argc])
|
||||
{
|
||||
int i, j, nums;
|
||||
|
||||
nums = get_num_f64();
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(round_flags); ++i) {
|
||||
if (fesetround(round_flags[i].flag) != 0) {
|
||||
printf("### Rounding %s skipped\n", round_flags[i].desc);
|
||||
continue;
|
||||
}
|
||||
printf("### Rounding %s\n", round_flags[i].desc);
|
||||
for (j = 0; j < nums; j++) {
|
||||
double input = get_f64(j);
|
||||
print_input(input);
|
||||
convert_double_to_single(input);
|
||||
convert_double_to_int32(input);
|
||||
convert_double_to_int64(input);
|
||||
convert_double_to_uint32(input);
|
||||
convert_double_to_uint64(input);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
988
tests/tcg/x86_64/float_convd.ref
Normal file
988
tests/tcg/x86_64/float_convd.ref
Normal file
@ -0,0 +1,988 @@
|
||||
### Rounding to nearest
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-inf:0xff800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb600000000000000p+1:0x40490fdb) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.00000000000000000000p+31:0x4f000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(inf:0x7f800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
### Rounding upwards
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000200000000000000p-25:0x33000001) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe800000000000000p-25:0x337ffff4) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801c00000000000000p-15:0x387fc00e) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000e00000000000000p-14:0x38800007) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x1.00000000000000000000p-149:0x00000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0aa00000000000000p+1:0x402df855) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb600000000000000p+1:0x40490fdb) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.00000000000000000000p+31:0x4f000000) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(inf:0x7f800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
### Rounding downwards
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-inf:0xff800000) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b200000000000000p+103:0xf30c3a59) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab600000000000000p+99:0xf1605d5b) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-149:0x80000001) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb400000000000000p+1:0x40490fda) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.fffffe00000000000000p+30:0x4effffff) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
### Rounding to zero
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-nan:0x00fff8000000000000)
|
||||
to single: f32(-nan:0xffc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-inf:0x00fff0000000000000)
|
||||
to single: f32(-inf:0xff800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffffffffff0000000p+1023:0x00ffefffffffffffff)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.fffffe00000000000000p+127:0x00c7efffffe0000000)
|
||||
to single: f32(-0x1.fffffe00000000000000p+127:0xff7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.1874b135ff6540000000p+103:0x00c661874b135ff654)
|
||||
to single: f32(-0x1.1874b000000000000000p+103:0xf30c3a58) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.c0bab523323b90000000p+99:0x00c62c0bab523323b9)
|
||||
to single: f32(-0x1.c0bab400000000000000p+99:0xf1605d5a) (INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(-0x1.00000000000000000000p+1:0x00c000000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+1:0xc0000000) (OK)
|
||||
to int32: -2 (OK)
|
||||
to int64: -2 (OK)
|
||||
to uint32: -2 (OK)
|
||||
to uint64: -2 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p+0:0x00bff0000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p+0:0xbf800000) (OK)
|
||||
to int32: -1 (OK)
|
||||
to int64: -1 (OK)
|
||||
to uint32: -1 (OK)
|
||||
to uint64: -1 (OK)
|
||||
from double: f64(-0x1.00000000000000000000p-1022:0x008010000000000000)
|
||||
to single: f32(-0x0.00000000000000000000p+0:0x80000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(-0x1.00000000000000000000p-126:0x00b810000000000000)
|
||||
to single: f32(-0x1.00000000000000000000p-126:0x80800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.00000000000000000000p+0:00000000000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (OK)
|
||||
to int32: 0 (OK)
|
||||
to int64: 0 (OK)
|
||||
to uint32: 0 (OK)
|
||||
to uint64: 0 (OK)
|
||||
from double: f64(0x1.00000000000000000000p-126:0x003810000000000000)
|
||||
to single: f32(0x1.00000000000000000000p-126:0x00800000) (OK)
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000001c5f680000000p-25:0x003e600000001c5f68)
|
||||
to single: f32(0x1.00000000000000000000p-25:0x33000000) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ffffe6cb2fa820000000p-25:0x003e6ffffe6cb2fa82)
|
||||
to single: f32(0x1.ffffe600000000000000p-25:0x337ffff3) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.ff801a9af58a10000000p-15:0x003f0ff801a9af58a1)
|
||||
to single: f32(0x1.ff801a00000000000000p-15:0x387fc00d) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000c06a1ef50000000p-14:0x003f100000c06a1ef5)
|
||||
to single: f32(0x1.00000c00000000000000p-14:0x38800006) (INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00400000000000000000p+0:0x003ff0040000000000)
|
||||
to single: f32(0x1.00400000000000000000p+0:0x3f802000) (OK)
|
||||
to int32: 1 (INEXACT )
|
||||
to int64: 1 (INEXACT )
|
||||
to uint32: 1 (INEXACT )
|
||||
to uint64: 1 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p-1022:0x000010000000000000)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.9ea82a22876800000000p-1022:0x000009ea82a2287680)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x0.ab98fba8432100000000p-1022:0x00000ab98fba843210)
|
||||
to single: f32(0x0.00000000000000000000p+0:0000000000) (UNDERFLOW INEXACT )
|
||||
to int32: 0 (INEXACT )
|
||||
to int64: 0 (INEXACT )
|
||||
to uint32: 0 (INEXACT )
|
||||
to uint64: 0 (INEXACT )
|
||||
from double: f64(0x1.00000000000000000000p+0:0x003ff0000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+0:0x3f800000) (OK)
|
||||
to int32: 1 (OK)
|
||||
to int64: 1 (OK)
|
||||
to uint32: 1 (OK)
|
||||
to uint64: 1 (OK)
|
||||
from double: f64(0x1.00000000000000000000p+1:0x004000000000000000)
|
||||
to single: f32(0x1.00000000000000000000p+1:0x40000000) (OK)
|
||||
to int32: 2 (OK)
|
||||
to int64: 2 (OK)
|
||||
to uint32: 2 (OK)
|
||||
to uint64: 2 (OK)
|
||||
from double: f64(0x1.5bf0a8b1457690000000p+1:0x004005bf0a8b145769)
|
||||
to single: f32(0x1.5bf0a800000000000000p+1:0x402df854) (INEXACT )
|
||||
to int32: 2 (INEXACT )
|
||||
to int64: 2 (INEXACT )
|
||||
to uint32: 2 (INEXACT )
|
||||
to uint64: 2 (INEXACT )
|
||||
from double: f64(0x1.921fb54442d180000000p+1:0x00400921fb54442d18)
|
||||
to single: f32(0x1.921fb400000000000000p+1:0x40490fda) (INEXACT )
|
||||
to int32: 3 (INEXACT )
|
||||
to int64: 3 (INEXACT )
|
||||
to uint32: 3 (INEXACT )
|
||||
to uint64: 3 (INEXACT )
|
||||
from double: f64(0x1.ffbe0000000000000000p+15:0x0040effbe000000000)
|
||||
to single: f32(0x1.ffbe0000000000000000p+15:0x477fdf00) (OK)
|
||||
to int32: 65503 (OK)
|
||||
to int64: 65503 (OK)
|
||||
to uint32: 65503 (OK)
|
||||
to uint64: 65503 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+15:0x0040effc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+15:0x477fe000) (OK)
|
||||
to int32: 65504 (OK)
|
||||
to int64: 65504 (OK)
|
||||
to uint32: 65504 (OK)
|
||||
to uint64: 65504 (OK)
|
||||
from double: f64(0x1.ffc20000000000000000p+15:0x0040effc2000000000)
|
||||
to single: f32(0x1.ffc20000000000000000p+15:0x477fe100) (OK)
|
||||
to int32: 65505 (OK)
|
||||
to int64: 65505 (OK)
|
||||
to uint32: 65505 (OK)
|
||||
to uint64: 65505 (OK)
|
||||
from double: f64(0x1.ffbf0000000000000000p+16:0x0040fffbf000000000)
|
||||
to single: f32(0x1.ffbf0000000000000000p+16:0x47ffdf80) (OK)
|
||||
to int32: 131007 (OK)
|
||||
to int64: 131007 (OK)
|
||||
to uint32: 131007 (OK)
|
||||
to uint64: 131007 (OK)
|
||||
from double: f64(0x1.ffc00000000000000000p+16:0x0040fffc0000000000)
|
||||
to single: f32(0x1.ffc00000000000000000p+16:0x47ffe000) (OK)
|
||||
to int32: 131008 (OK)
|
||||
to int64: 131008 (OK)
|
||||
to uint32: 131008 (OK)
|
||||
to uint64: 131008 (OK)
|
||||
from double: f64(0x1.ffc10000000000000000p+16:0x0040fffc1000000000)
|
||||
to single: f32(0x1.ffc10000000000000000p+16:0x47ffe080) (OK)
|
||||
to int32: 131009 (OK)
|
||||
to int64: 131009 (OK)
|
||||
to uint32: 131009 (OK)
|
||||
to uint64: 131009 (OK)
|
||||
from double: f64(0x1.fffffffc000000000000p+30:0x0041dfffffffc00000)
|
||||
to single: f32(0x1.fffffe00000000000000p+30:0x4effffff) (INEXACT )
|
||||
to int32: 2147483647 (OK)
|
||||
to int64: 2147483647 (OK)
|
||||
to uint32: 2147483647 (OK)
|
||||
to uint64: 2147483647 (OK)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffe00000000000000p+127:0x0047efffffe0000000)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(0x1.fffffffffffff0000000p+1023:0x007fefffffffffffff)
|
||||
to single: f32(0x1.fffffe00000000000000p+127:0x7f7fffff) (OVERFLOW INEXACT )
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INEXACT INVALID)
|
||||
from double: f64(inf:0x007ff0000000000000)
|
||||
to single: f32(inf:0x7f800000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: 0 (INVALID)
|
||||
from double: f64(nan:0x007ff8000000000000)
|
||||
to single: f32(nan:0x7fc00000) (OK)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff0000000000001)
|
||||
to single: f32(nan:0x7fc00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
||||
from double: f64(nan:0x007ff4000000000000)
|
||||
to single: f32(nan:0x7fe00000) (INVALID)
|
||||
to int32: -2147483648 (INVALID)
|
||||
to int64: -9223372036854775808 (INVALID)
|
||||
to uint32: 0 (INVALID)
|
||||
to uint64: -9223372036854775808 (INVALID)
|
Loading…
Reference in New Issue
Block a user