Comment 9 for bug 1841592

Revision history for this message
Paul Clarke (7-pc) wrote : Re: [PATCH] tests/tcg: add float_madds test to multiarch

On 9/13/19 8:49 AM, Alex Bennée wrote:
> +static float f32_numbers[] = {
> + -SNANF,
> + -NAN,
> + -INFINITY,
> + -FLT_MAX,
> + -1.111E+31,
> + -1.111E+30,
> + -1.08700982e-12,
> + -1.78051176e-20,
> + -FLT_MIN,
> + 0.0,
> + FLT_MIN,
> + 2.98023224e-08,
> + 5.96046E-8, /* min positive FP16 subnormal */
> + 6.09756E-5, /* max subnormal FP16 */
> + 6.10352E-5, /* min positive normal FP16 */
> + 1.0,
> + 1.0009765625, /* smallest float after 1.0 FP16 */
> + 2.0,
> + M_E, M_PI,
> + 65503.0,
> + 65504.0, /* max FP16 */
> + 65505.0,
> + 131007.0,
> + 131008.0, /* max AFP */
> + 131009.0,
> + 1.111E+30,
> + FLT_MAX,
> + INFINITY,
> + NAN,
> + SNANF
> +};

I've noticed that Glibc prefers to use hex representation for float values, to ensure an accurate representation. If you care to do so, here they are:
static float f32_numbers[] = {
    -SNANF,
    -NAN,
    -INFINITY,
    -FLT_MAX,
    -0x1.1874b2p+103,
    -0x1.c0bab6p+99,
    -0x1.31f75p-40,
    -0x1.505444p-66,
    -FLT_MIN,
    0.0,
    FLT_MIN,
    0x1p-25,
    0x1.ffffe6p-25, /* min positive FP16 subnormal */
    0x1.ff801ap-15, /* max subnormal FP16 */
    0x1.00000cp-14, /* min positive normal FP16 */
    1.0,
    0x1.004p+0, /* smallest float after 1.0 FP16 */
    2.0,
    M_E, M_PI,
    0x1.ffbep+15,
    0x1.ffcp+15, /* max FP16 */
    0x1.ffc2p+15,
    0x1.ffbfp+16,
    0x1.ffcp+16, /* max AFP */
    0x1.ffc1p+16,
    0x1.c0bab6p+99,
    FLT_MAX,
    INFINITY,
    NAN,
    SNANF
};

PC