qemu-devel
[Top][All Lists]
Advanced

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

Re: [RFC PATCH 2/2] tests/tcg/mips64el: Run float tests


From: Alex Bennée
Subject: Re: [RFC PATCH 2/2] tests/tcg/mips64el: Run float tests
Date: Tue, 04 Jan 2022 10:59:41 +0000
User-agent: mu4e 1.7.5; emacs 28.0.90

Philippe Mathieu-Daudé <f4bug@amsat.org> writes:

> On 12/26/21 03:25, Jiaxun Yang wrote:
>> 在2021年12月26日十二月 上午12:19,Philippe Mathieu-Daudé写道:
>>> Unfortunately this fails:
>>>
>>>   $ make run-tcg-tests-mips64el-linux-user
>>>   ...
>>>   Files float_convs.out and tests/tcg/mips64el/float_convs.ref differ
>>>   --- float_convs.out     2021-12-26 01:03:48.585973637 +0100
>>>   +++ tests/tcg/mips64el/float_convs.ref   2021-12-26 00:29:35.804465340 
>>> +0100
>>>   @@ -1,40 +1,40 @@
>>>    ### Rounding to nearest
>>>   -from single: f32(nan:0xffffffff)
>>>   -  to double: f64(nan:0x007ff7ffffffffffff) (INVALID)
>>>   -   to int32: 2147483647 (INVALID)
>>>   -   to int64: 9223372036854775807 (INVALID)
>>>   -  to uint32: 2147483647 (INVALID)
>>>   -  to uint64: 9223372036854775807 (INVALID)
>>>   make[2]: *** [tests/tcg/multiarch/Makefile.target:32: run-float_convs] 
>>> Error 1
>>>
>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>> ---
>>>  tests/tcg/mips64el/Makefile.target | 2 ++
>>>  1 file changed, 2 insertions(+)
>>>  create mode 100644 tests/tcg/mips64el/Makefile.target
>>>
>>> diff --git a/tests/tcg/mips64el/Makefile.target 
>>> b/tests/tcg/mips64el/Makefile.target
>>> new file mode 100644
>>> index 00000000000..dcb1e9d72ac
>>> --- /dev/null
>>> +++ b/tests/tcg/mips64el/Makefile.target
>>> @@ -0,0 +1,2 @@
>>> +float_%: CFLAGS+=-march=loongson3a
>>> +float_%: QEMU_OPTS+=-cpu Loongson-3A4000
>> 
>> Hmm, -march=loongson3a assumed legacy NaN while our -cpu Loongson-3A4000 
>> assumed IEEE 754-2008 style NaN.
>> 
>> I guess switch to Loongson-3A1000 can help?
>
> Nop, exactly the same error.
>
> Also, float_madds fails as:
>
> Files float_madds.out and tests/tcg/mips64el/float_madds.ref differ
> --- float_madds.out     2021-12-26 11:49:06.018532269 +0100
> +++ tests/tcg/mips64el/float_madds.ref   2021-12-26 01:16:02.269497182 +0100
> @@ -1,16 +1,16 @@
>  ### Rounding to nearest
> -op : f32(nan:0xffffffff) * f32(nan:0xffbfffff) + f32(-inf:0xff800000)
> -res: f32(nan:0x7fbfffff) flags=INVALID (0/0)
> -op : f32(nan:0xffbfffff) * f32(-inf:0xff800000) + f32(nan:0xffffffff)
> -res: f32(nan:0x7fbfffff) flags=INVALID (0/1)
> -op : f32(-inf:0xff800000) * f32(nan:0xffffffff) + f32(nan:0xffbfffff)
> -res: f32(nan:0x7fbfffff) flags=INVALID (0/2)
> make[2]: *** [tests/tcg/multiarch/Makefile.target:30: run-float_madds]
> Error 1

That looks like the test just stops (rather than differs slightly) -
which is weird because I would expect that to fail before attempting to
compare to the reference.

-- 
Alex Bennée



reply via email to

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