From: Richard Henderson <rth@twiddle.net>
To: "Philippe Mathieu-Daudé" <f4bug@amsat.org>,
"Laurent Vivier" <laurent@vivier.eu>,
qemu-devel@nongnu.org
Cc: Riku Voipio <riku.voipio@iki.fi>,
Thomas Huth <huth@tuxfamily.org>,
Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: [Qemu-devel] [PATCH v5 3/6] target-m68k: use floatx80 internally
Date: Wed, 21 Jun 2017 09:37:19 -0700 [thread overview]
Message-ID: <f43b2f92-a76e-945f-9334-2cd9cb71ec95@twiddle.net> (raw)
In-Reply-To: <b05fb631-4ccb-39fa-adc3-6949a514b9d2@amsat.org>
On 06/21/2017 09:18 AM, Philippe Mathieu-Daudé wrote:
>> +typedef CPU_LDoubleU FPReg;
>
> What an awful name... Anyway checking on "qemu/bswap.h" it seems there is some
> endianess issue with it if your host is little-endian.
There is no endian-ness issue because we do not attempt to read that structure
from memory as a whole. Instead, Laurent uses two big-endian loads (with
appropriate address arithmetic) and stores the result into this host structure
in host-endian order. Further, the host routines use the structure members by
name and do not assume any particular relationship between them.
> Do you have a way to run Berkeley TestFloat?
As noted in Laurent's cover message, floatx80 isn't quite right -- that is the
x86 data type, and the proper m68k data type is slightly different.
I would expect the results from using floatx80 to be Just Good Enough to
produce a working m68k user-land. It will produce correct results for normal
numbers in arithmetic such as 1.0 + 10.0. But I would expect many of the edge
conditions that TestFloat would attempt (especially de-normals and un-normals)
would fail.
r~
next prev parent reply other threads:[~2017-06-21 16:37 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-20 20:51 [Qemu-devel] [PATCH v5 0/6] target-m68k: implement 680x0 FPU Laurent Vivier
2017-06-20 20:51 ` [Qemu-devel] [PATCH v5 1/6] target-m68k: move fmove CR to a function Laurent Vivier
2017-06-20 22:50 ` Richard Henderson
2017-06-21 15:54 ` Philippe Mathieu-Daudé
2017-06-20 20:51 ` [Qemu-devel] [PATCH v5 2/6] target-m68k: initialize FPU registers Laurent Vivier
2017-06-20 22:44 ` Richard Henderson
2017-06-20 22:51 ` Richard Henderson
2017-06-20 20:51 ` [Qemu-devel] [PATCH v5 3/6] target-m68k: use floatx80 internally Laurent Vivier
2017-06-20 22:50 ` Richard Henderson
2017-06-21 16:18 ` Philippe Mathieu-Daudé
2017-06-21 16:37 ` Richard Henderson [this message]
2017-06-21 16:45 ` Laurent Vivier
2017-06-26 4:47 ` Philippe Mathieu-Daudé
2017-06-20 20:51 ` [Qemu-devel] [PATCH v5 4/6] target-m68k: define 96bit FP registers for gdb on 680x0 Laurent Vivier
2017-06-20 20:51 ` [Qemu-devel] [PATCH v5 5/6] target-m68k: add FPCR and FPSR Laurent Vivier
2017-06-20 22:55 ` Richard Henderson
2017-06-20 20:51 ` [Qemu-devel] [PATCH v5 6/6] target-m68k, linux-user: manage FP registers in ucontext Laurent Vivier
2017-06-20 22:57 ` Richard Henderson
2017-06-28 20:44 ` Laurent Vivier
2017-06-29 13:46 ` Riku Voipio
2017-06-29 14:11 ` Laurent Vivier
2017-06-29 14:17 ` Laurent Vivier
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=f43b2f92-a76e-945f-9334-2cd9cb71ec95@twiddle.net \
--to=rth@twiddle.net \
--cc=aurelien@aurel32.net \
--cc=f4bug@amsat.org \
--cc=huth@tuxfamily.org \
--cc=laurent@vivier.eu \
--cc=qemu-devel@nongnu.org \
--cc=riku.voipio@iki.fi \
/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.