From: Aurelien Jarno <aurelien@aurel32.net>
To: Laurent Desnogues <laurent.desnogues@gmail.com>
Cc: Peter Maydell <peter.maydell@linaro.org>,
Roy Tam <roytam@gmail.com>,
seabios@seabios.org, qemu-devel@nongnu.org,
Kevin O'Connor <kevin@koconnor.net>,
Gerhard Wiesinger <lists@wiesinger.com>
Subject: Re: [Qemu-devel] Re: QEMU regression problems - Update FPU
Date: Wed, 23 Feb 2011 20:04:56 +0100 [thread overview]
Message-ID: <20110223190456.GD6703@hall.aurel32.net> (raw)
In-Reply-To: <AANLkTi=msmzzaSYF0NQD3enbxbppnbdrdPThhUjK6nve@mail.gmail.com>
On Wed, Feb 23, 2011 at 10:45:25AM +0100, Laurent Desnogues wrote:
> On Wed, Feb 23, 2011 at 9:16 AM, Peter Maydell <peter.maydell@linaro.org> wrote:
> > On 18 February 2011 07:12, Gerhard Wiesinger <lists@wiesinger.com> wrote:
> >> Issue 1.) with FPU still present
> >> I tracked down the problematic code and it is a rounding error from double
> >> precision to 64bit floats: Any ideas how to fix such an issue in general?
> >>
> >> QEMU result in ST0: 0.42925860786976457 (wrong emulated)
> >> KVM result in ST0: 0.42925860786975449 (correct)
> >
> > This is an error when running QEMU in TCG mode, right?
> > At the moment x86 is the odd-one-out in that it doesn't
> > use CONFIG_SOFTFLOAT for its FPU emulation, so somebody
> > has made an explicit choice of preferring speed over
> > accuracy, and I am unsurprised that there are rounding
> > errors as a result.
>
> Even if you were using SoftFloat, you'd probably still get wrong
> results given that this test seems to test trigonometric instructions
> which aren't implemented in SoftFloat, but are relying on libm.
>
Actually that's the reason why i386 doesn't use softfloat, as all the
trigonometric use libm, and the bridge between softfloat and libm is not
working correctly (plenty of type abuse).
The solution is probably to implement them in softfloat, but it's not
something trivial. exp2 and log2 are already in softfloat for float32
type, the same way could be use for other trigonometric functions.
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
next prev parent reply other threads:[~2011-02-23 19:05 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-12 5:31 [Qemu-devel] QEMU regression problems Gerhard Wiesinger
2010-04-13 6:26 ` Roy Tam
2010-04-14 1:16 ` [SeaBIOS] " Kevin O'Connor
2010-04-19 6:19 ` Gerhard Wiesinger
2010-04-20 1:26 ` Kevin O'Connor
2010-04-21 19:16 ` Gerhard Wiesinger
2010-04-21 23:02 ` Kevin O'Connor
2010-04-22 6:16 ` Gerhard Wiesinger
2011-02-18 7:12 ` [Qemu-devel] Re: QEMU regression problems - Update FPU Gerhard Wiesinger
2011-02-23 7:09 ` Gerhard Wiesinger
2011-02-23 8:16 ` Peter Maydell
2011-02-23 9:45 ` Laurent Desnogues
2011-02-23 19:04 ` Aurelien Jarno [this message]
2011-02-24 11:10 ` Paolo Bonzini
2011-02-24 11:21 ` Laurent Desnogues
2011-02-24 7:03 ` Gerhard Wiesinger
2011-02-24 7:31 ` Aurelien Jarno
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=20110223190456.GD6703@hall.aurel32.net \
--to=aurelien@aurel32.net \
--cc=kevin@koconnor.net \
--cc=laurent.desnogues@gmail.com \
--cc=lists@wiesinger.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=roytam@gmail.com \
--cc=seabios@seabios.org \
/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.