qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/7] target/m68k: implement 680x0 FPU (part 2)
@ 2017-06-27 19:12 Laurent Vivier
  2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 1/7] target/m68k: add fscc Laurent Vivier
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Laurent Vivier @ 2017-06-27 19:12 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aurelien Jarno, Philippe Mathieu-Daudé, Richard Henderson,
	Laurent Vivier

Second part of patches submitted in the v3.

This series adds a subset of single precision and
double precision instructions using
set_floatx80_rounding_precision() to round the result.

For some other instructions, we introduce a new
function, floatx80_round(), to round them manually.

It also adds instructions fsglmul, fsgldiv,
fmovecr and fscc (since v3, use tcg_gen_setcond())

fmovem manages static and dynamic register list,
all the code has been moved to an helper.

v3:
  Remove extra space in fmovem patch
  truncate operands of fsglmul and fslgdiv
  update gen_fcc_cond() as suggested by Richard
  fmoverc: use opmode instead of rom_offset,
  define and free the tcg constant

v2:
  Fix gen_fcc_cond(): g[12] mark global variables,
  not variables to free.
  add 2 patches to compute trigonometric functions
  and fmod
  use floatx80_round() to compute fsglmul and fsgldiv
  split fmovem helper into 6 helpers

Laurent Vivier (7):
  target/m68k: add fscc.
  target/m68k: add fmovecr
  target/m68k: add explicit single and double precision operations
  softfloat: define floatx80_round()
  target/m68k: add fsglmul and fsgldiv
  target/m68k: add explicit single and double precision operations (part
    2)
  target/m68k: add fmovem

 fpu/softfloat.c          |  15 ++
 include/fpu/softfloat.h  |   1 +
 target/m68k/fpu_helper.c | 306 ++++++++++++++++++++++++++++++++++++-
 target/m68k/helper.h     |  27 +++-
 target/m68k/translate.c  | 389 ++++++++++++++++++++++++++++++++---------------
 5 files changed, 615 insertions(+), 123 deletions(-)

-- 
2.9.4

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2017-06-28 20:05 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-27 19:12 [Qemu-devel] [PATCH v3 0/7] target/m68k: implement 680x0 FPU (part 2) Laurent Vivier
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 1/7] target/m68k: add fscc Laurent Vivier
2017-06-27 20:00   ` Richard Henderson
2017-06-28  0:03     ` Laurent Vivier
2017-06-28 20:05     ` Laurent Vivier
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 2/7] target/m68k: add fmovecr Laurent Vivier
2017-06-27 21:04   ` Philippe Mathieu-Daudé
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 3/7] target/m68k: add explicit single and double precision operations Laurent Vivier
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 4/7] softfloat: define floatx80_round() Laurent Vivier
2017-06-27 20:15   ` Aurelien Jarno
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 5/7] target/m68k: add fsglmul and fsgldiv Laurent Vivier
2017-06-27 20:05   ` Richard Henderson
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 6/7] target/m68k: add explicit single and double precision operations (part 2) Laurent Vivier
2017-06-27 19:12 ` [Qemu-devel] [PATCH v3 7/7] target/m68k: add fmovem Laurent Vivier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).