From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:52290) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TIjLN-0000Hy-HW for qemu-devel@nongnu.org; Mon, 01 Oct 2012 12:59:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TIjLH-0004Ap-Ks for qemu-devel@nongnu.org; Mon, 01 Oct 2012 12:59:45 -0400 Received: from hall.aurel32.net ([88.191.126.93]:55168) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TIjLH-000495-Em for qemu-devel@nongnu.org; Mon, 01 Oct 2012 12:59:39 -0400 Date: Mon, 1 Oct 2012 18:59:10 +0200 From: Aurelien Jarno Message-ID: <20121001165910.GC4055@ohm.aurel32.net> References: <1348845423-20085-1-git-send-email-peter.maydell@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: Subject: Re: [Qemu-devel] [PATCH] fpu/softfloat.c: Return correctly signed values from uint64_to_float32 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Alexander Graf , Richard Henderson , qemu-devel@nongnu.org, patches@linaro.org On Fri, Sep 28, 2012 at 04:42:16PM +0100, Peter Maydell wrote: > On 28 September 2012 16:17, Peter Maydell wrote: > > The uint64_to_float32() conversion function was incorrectly always > > returning numbers with the sign bit set (ie negative numbers). Correct > > this so we return positive numbers instead. > > > > Signed-off-by: Peter Maydell > > --- > > As far as I can see we use this function only in the three PPC SPE > > insns efscfuf, efsctsf, efsctuf. It is therefore untested(!); if > > anybody with PPC hw to test against could check the results of > > those functions that would be cool. SPE instructions are not common on the non-embedded world, as far as I know it should be tested using the e500 CPU. That said I don't have a kernel nor an image for such a machine. > ...incidentally in two of those uses we're operating on a constant: > tmp = uint64_to_float64(1ULL << 32, &env->vec_status); > and it would probably be better to use make_float64() instead. > Agreed. -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net