qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Aurelien Jarno <aurelien@aurel32.net>
To: Stuart Brady <sdb@zubnet.me.uk>
Cc: "Andreas Färber" <andreas.faerber@web.de>,
	"Riku Voipio" <riku.voipio@iki.fi>,
	"QEMU Developers" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH 1/6] softfloat: remove HPPA specific code
Date: Thu, 6 Jan 2011 15:35:53 +0100	[thread overview]
Message-ID: <20110106143553.GA21099@hall.aurel32.net> (raw)
In-Reply-To: <20110105231306.GA20254@zubnet.me.uk>

On Wed, Jan 05, 2011 at 11:13:06PM +0000, Stuart Brady wrote:
> On Wed, Jan 05, 2011 at 11:21:06AM +0100, Aurelien Jarno wrote:
> 
> > But that's not the subject we are talking about HPPA guest support. 
> > target-hppa fork still (partially) uses dyngen code, which we don't 
> > support in upstream for more than *2 years*.
> 
> I'd agree -- the fork is currently dead.  Whilst I do plan to revive it
> at some point, I would support removal of those particular lines, as:
> 
>    Dead code is noise.  It doesn't contribute anything, so you may as
>    well remove it.
> 
>    It's easy enough to add it back at a later date.
> 
>    Dead code is buggy code.  Previously, the code was quietening
>    signaling NaNs incorrectly.  MIPS now uses a default quiet NaN,
>    but HPPA would need a different fix.
> 
>    It's not even clear which of the two possible fixes should be applied
>    (or whether both should be applied with a means of selecting the
>    behaviour at run-time).  I gather that we need to clear the MSB of
>    the significand, and then set its least-significant-but-one bit,
>    either unconditionally, or perhaps only if the significand would
>    otherwise be zero.  However, I don't yet know which of those two
>    behaviours is implemented by hardware, and even if only one is
>    implemented, I still feel we'd still need a comment explaining that
>    the architecture's specification permits the alternate behaviour.
> 
> A few random thank-yous:
> 
>    I do really appreciate the effort to avoid removing lines that would
>    only be added back at a later date -- if we had an HPPA target fork
>    that was ready to be merged back in a week or two, then I'd argue that
>    there's no point, but that's not the case.
> 
>    Thanks for the comments on sNaN quietening for HPPA.  I would hopefully
>    read the PA1.1 spec thoroughly enough and test on real hardware upon
>    reaching the point where floating point support is somewhere higher
>    up on the TODO list... :-)  However, the comments can hardly hurt!
> 
>    What is important here is that the code be rewritten in a clean manner,
>    so that there are no unnecessary obstacles to modifying SoftFloat to
>    support new targets.  The patches that I've seen definitely seem to
>    move in that direction, so I'm quite happy.  Of course, fixing those
>    architectures that are already upstream is the main objective! -- and
>    if this helps other forks, that can't be a bad thing.
> 
> I do have a few concerns regarding SoftFloat, though:
> 
>    FIXMEs should be left in the code (or a document maintained on the
>    Wiki) to keep track of which architectures have been considered
>    (which I believe are x86, arm, mips, ppc) and which ones haven't.
>    This is in reference to one particular FIXME that was removed,
>    but perhaps shouldn't have been.
> 
>    Is there any plan to deal with use of float*_is_quiet_nan(), where
>    float*_is_any_nan() was intended?  These should really either be
>    fixed (and tested), or if not, a FIXME should be added.

The problem with these functions is that they are used in target-*/
and not directly part of the softfloat code.

I have reviewed MIPS and PowerPC targets, they both use these functions
correctly.

-- 
Aurelien Jarno	                        GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

  parent reply	other threads:[~2011-01-06 14:36 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-03 14:34 [Qemu-devel] softfloat: fix NaN propagation for MIPS and PowerPC + cleanup Aurelien Jarno
2011-01-03 14:34 ` [Qemu-devel] [PATCH 1/6] softfloat: remove HPPA specific code Aurelien Jarno
2011-01-03 15:22   ` Peter Maydell
2011-01-03 15:26     ` Aurelien Jarno
2011-01-04 19:54   ` Andreas Färber
2011-01-04 20:07     ` Aurelien Jarno
2011-01-04 22:53       ` Andreas Färber
2011-01-04 23:56         ` Aurelien Jarno
2011-01-05  8:15           ` Andreas Färber
2011-01-05 10:21             ` Aurelien Jarno
2011-01-05 23:13               ` Stuart Brady
2011-01-06  8:58                 ` Peter Maydell
2011-01-06 18:13                   ` Stuart Brady
2011-01-06 18:43                     ` Peter Maydell
2011-01-06 19:25                       ` Stuart Brady
2011-01-06 14:35                 ` Aurelien Jarno [this message]
2011-01-06 15:34                   ` Peter Maydell
2011-01-06 18:48                     ` Aurelien Jarno
2011-01-06 21:19                       ` Peter Maydell
2011-01-06 21:31                         ` Aurelien Jarno
2011-01-06 19:26                     ` Nathan Froyd
2011-01-06 13:10               ` Andreas Färber
2011-01-06 15:08                 ` Aurelien Jarno
2011-01-03 14:34 ` [Qemu-devel] [PATCH 2/6] softfloat: fix float{32, 64}_maybe_silence_nan() for MIPS Aurelien Jarno
2011-01-03 15:15   ` Peter Maydell
2011-01-03 15:24     ` Aurelien Jarno
2011-01-03 14:34 ` [Qemu-devel] [PATCH 3/6] softfloat: add float{x80, 128}_maybe_silence_nan() Aurelien Jarno
2011-01-03 15:33   ` Peter Maydell
2011-01-03 14:34 ` [Qemu-devel] [PATCH 4/6] softfloat: use float{32, 64, x80, 128}_maybe_silence_nan() Aurelien Jarno
2011-01-03 17:34   ` Peter Maydell
2011-01-03 22:44     ` Aurelien Jarno
2011-01-03 14:34 ` [Qemu-devel] [PATCH 5/6] target-mips: Implement correct NaN propagation rules Aurelien Jarno
2011-01-03 14:34 ` [Qemu-devel] [PATCH 6/6] target-ppc: " Aurelien Jarno
2011-01-05 12:45   ` Nathan Froyd
2011-01-05 17:24   ` [Qemu-devel] " Alexander Graf

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=20110106143553.GA21099@hall.aurel32.net \
    --to=aurelien@aurel32.net \
    --cc=andreas.faerber@web.de \
    --cc=qemu-devel@nongnu.org \
    --cc=riku.voipio@iki.fi \
    --cc=sdb@zubnet.me.uk \
    /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 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).