All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Laurent Vivier <laurent@vivier.eu>
Cc: qemu-devel@nongnu.org, Thomas Huth <huth@tuxfamily.org>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH v2 0/5] target/m68k: implement 680x0 FPU (part 3)
Date: Wed, 06 Dec 2017 10:24:32 +0000	[thread overview]
Message-ID: <871sk8rw67.fsf@linaro.org> (raw)
In-Reply-To: <20171123163538.31411-1-laurent@vivier.eu>


Laurent Vivier <laurent@vivier.eu> writes:

> Implement fmod, frem, fscale, fgetman and fgetexp.
>
> Instead of using functions of libm (v1 of this series)
> and converting between host long double and floatx80 type
> the new version (v2) adds new floatx80 functions in softfloat.

68k used 80bit float, well TIL ;-)

Just for reference Richard and I did a sprint on hacking the softfloat
last week. The results are currently brewing in:

  https://github.com/stsquad/qemu/tree/softfloat-and-arm-fp16-v2

The main push has been to decompose 16/32/64 bit floats and have a
common set of operations. This means we work with an internal 64 bit
fractional part and then just round appropriately when we pack the
result. It's a big departure from SoftFloat2a but seeing as we are not
likely to bring in changes from upstream we felt it was worth it from a
code clarity point of view.

However we have punted touching the 80bit code and any potential
quad-precision stuff to a later date, preferably when int128_t is easier
to use. Perhaps it is worth considering that option now?

>
> All the floatx80 functions are copied from "Previous",
> the NeXT Computer Emulator, and written by Andreas Grabher.
>
> Laurent Vivier (5):
>   softfloat: add floatx80_mod()
>   target/m68k: add fmod/frem
>   softfloat: use floatx80_infinity in softfloat
>   softfloat: add floatx80_getman(), floatx80_getexp(), floatx80_scale()
>   target-m68k: add fscale, fgetman and fgetexp
>
>  fpu/softfloat-specialize.h |  29 +++++
>  fpu/softfloat.c            | 258 ++++++++++++++++++++++++++++++++++++++++++---
>  include/fpu/softfloat.h    |  13 ++-
>  target/m68k/cpu.h          |   1 +
>  target/m68k/fpu_helper.c   |  48 +++++++++
>  target/m68k/helper.h       |   5 +
>  target/m68k/translate.c    |  15 +++
>  7 files changed, 355 insertions(+), 14 deletions(-)


--
Alex Bennée

  parent reply	other threads:[~2017-12-06 10:24 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-23 16:35 [Qemu-devel] [PATCH v2 0/5] target/m68k: implement 680x0 FPU (part 3) Laurent Vivier
2017-11-23 16:35 ` [Qemu-devel] [PATCH v2 1/5] softfloat: add floatx80_mod() Laurent Vivier
2017-11-23 16:35 ` [Qemu-devel] [PATCH v2 2/5] target/m68k: add fmod/frem Laurent Vivier
2017-11-23 16:35 ` [Qemu-devel] [PATCH v2 3/5] softfloat: use floatx80_infinity in softfloat Laurent Vivier
2017-11-23 16:35 ` [Qemu-devel] [PATCH v2 4/5] softfloat: add floatx80_getman(), floatx80_getexp(), floatx80_scale() Laurent Vivier
2017-11-23 16:35 ` [Qemu-devel] [PATCH v2 5/5] target-m68k: add fscale, fgetman and fgetexp Laurent Vivier
2017-11-29 12:49 ` [Qemu-devel] [PATCH v2 0/5] target/m68k: implement 680x0 FPU (part 3) Peter Maydell
2017-11-29 13:42   ` Laurent Vivier
2017-11-29 13:59     ` Peter Maydell
2017-11-29 14:08       ` Thomas Huth
2017-11-29 14:17         ` Laurent Vivier
2017-11-29 15:19           ` Thomas Huth
2017-12-05  8:56             ` william lin
2017-12-05  9:46               ` Laurent Vivier
2017-12-05 17:42                 ` Andreas Grabher
2017-12-05 20:01                   ` Laurent Vivier
2017-12-05 21:24                     ` william lin
2017-12-06  8:20                       ` Laurent Vivier
2017-12-06 10:24 ` Alex Bennée [this message]
2017-12-15  8:29   ` william lin
2017-12-20 18:25 ` Laurent Vivier
2017-12-29  8:21   ` Thomas Huth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=871sk8rw67.fsf@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=aurelien@aurel32.net \
    --cc=huth@tuxfamily.org \
    --cc=laurent@vivier.eu \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.