qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v1 7/9] tests/tcg: add float_madds test to multi


From: Richard Henderson
Subject: Re: [Qemu-devel] [PATCH v1 7/9] tests/tcg: add float_madds test to multiarch
Date: Tue, 17 Sep 2019 12:46:04 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

On 9/17/19 2:41 PM, Alex Bennée wrote:
> +    /* From https://bugs.launchpad.net/qemu/+bug/1841491 */
> +    add_f32_const(0x1.ffffffffffffcp-1022);
> +    add_f32_const(0x1.0000000000001p-1);
> +    add_f32_const(0x0.0000000000001p-1022);

These three constants do not fit in float32.

> +    add_f32_const(0x8p-152);
> +    add_f32_const(0x8p-152);
> +    add_f32_const(0x8p-152);

Why are you adding 3 of the same?

> +        for (j = 0; j < nums; j++) {
> +            for (k = 0; k < 3; k++) {
> +                a = get_f32(j + ((k)%3));
> +                b = get_f32(j + ((k+1)%3));
> +                c = get_f32(j + ((k+2)%3));

How does this not overflow nums?
There does not appear to be an assert on overflow in get_f<N>.

> +#if defined(__arm__)
> +                r = __builtin_fmaf(a, b, c);
> +#else
> +                r = __builtin_fmaf(a, b, c);
> +#endif

Eh?

> +/* Number of constants in each table */
> +int get_num_f16();
> +int get_num_f32();
> +int get_num_f64();

This is not c++; you want (void) to indicate no arguments.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]