qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 02/19] fpu/softfloat: Split floatXX_silence_nan


From: Alex Bennée
Subject: Re: [Qemu-devel] [PATCH 02/19] fpu/softfloat: Split floatXX_silence_nan from floatXX_maybe_silence_nan
Date: Fri, 11 May 2018 16:06:54 +0100
User-agent: mu4e 1.1.0; emacs 26.1

Alex Bennée <address@hidden> writes:

> Richard Henderson <address@hidden> writes:
>
>> The new function assumes that the input is an SNaN and
>> does not double-check.
>>
>> Signed-off-by: Richard Henderson <address@hidden>
>
> Reviewed-by: Alex Bennée <address@hidden>

but...but...
>> -float16 float16_maybe_silence_nan(float16 a_, float_status *status)
>> +
>> +float16 float16_maybe_silence_nan(float16 a, float_status *status)
>>  {
>> -    if (float16_is_signaling_nan(a_, status)) {
>> -        if (status->snan_bit_is_one) {
>> -            return float16_default_nan(status);
>> -        } else {
>> -            uint16_t a = float16_val(a_);
>> -            a |= (1 << 9);
>> -            return make_float16(a);
>> -        }
>> +    if (float16_is_signaling_nan(a, status)) {
>> +        float16_silence_nan(a, status);

You need a return here.
>>
>> -float32 float32_maybe_silence_nan(float32 a_, float_status *status)
>> +float32 float32_maybe_silence_nan(float32 a, float_status *status)
>>  {
>> -    if (float32_is_signaling_nan(a_, status)) {
>> -        if (status->snan_bit_is_one) {
>> -#ifdef TARGET_HPPA
>> -            uint32_t a = float32_val(a_);
>> -            a &= ~0x00400000;
>> -            a |=  0x00200000;
>> -            return make_float32(a);
>> -#else
>> -            return float32_default_nan(status);
>> -#endif
>> -        } else {
>> -            uint32_t a = float32_val(a_);
>> -            a |= (1 << 22);
>> -            return make_float32(a);
>> -        }
>> +    if (float32_is_signaling_nan(a, status)) {
>> +        float32_silence_nan(a, status);

And here.

Amazing what tests pass with those in, but RISU picked them up.

--
Alex Bennée



reply via email to

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