[Libre-soc-dev] qemu cosimulation

Jacob Lifshay programmerjake at gmail.com
Fri Jun 4 01:33:53 BST 2021


On Thu, Jun 3, 2021, 16:34 Luke Kenneth Casson Leighton <lkcl at lkcl.net>
wrote:

> frickin gmail basic html really pissing me off. sigh.
>
> i did reply but it was destroyed.
>
> check commits in openpower-isa repo, it contains the unit test which
> was added, showing that the results are wrong if conversion to FP32 is
> performed.
>

I used the test case you have in that unit test, demonstrating that doing
the multiplication as f32 gives exactly the same answer as doing the
multiplication as f64 then rounding to f32 (this only works for some fp
ops):
See the fmuls_1 and fmuls_2 functions:
https://rust.godbolt.org/z/6asaf6Mq6 (note the dbgf! macro prints the input
then returns it unmodified)

I also tested on a Power9 and it gives identical results.

So, I don't know what weird stuff you thought gave different results, but
it does work the way I am advocating (doing the arithmetic as f32).

Note this is an exactly half-way rounding case, so if your using
ieee754fpu.git it may have bugs.

>
> Lauri as you probably saw today priority 1 was the PLL.
>

yeah, thanks for working on it!

>
> once i know Jean-Paul is happy i will continue with the FPMUL
> corrections.


Sounds good!

Jacob


More information about the Libre-soc-dev mailing list