From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DJcUZ-0003mn-Gi for qemu-devel@nongnu.org; Thu, 07 Apr 2005 15:16:39 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DJcUM-0003Z9-6r for qemu-devel@nongnu.org; Thu, 07 Apr 2005 15:16:26 -0400 Received: from [129.104.30.34] (helo=mx1.polytechnique.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DJcxv-0000ac-RC for qemu-devel@nongnu.org; Thu, 07 Apr 2005 15:47:00 -0400 Message-ID: <42558E67.2060007@bellard.org> Date: Thu, 07 Apr 2005 21:47:51 +0200 From: Fabrice Bellard MIME-Version: 1.0 Subject: Re: [Qemu-devel] [patch] CPU_DoubleU and soft-float References: <200503262053.32734.paul@codesourcery.com> In-Reply-To: <200503262053.32734.paul@codesourcery.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: paul@codesourcery.com Cc: qemu-devel@nongnu.org OK for the patch. It would be better to force the use of soft float on ARM if the VFP is not present. Supporting weird ordering for doubles is a source of problems and soft float may be faster than the kernel based ARM fpu emulator anyway. Fabrice. Paul Brook wrote: > The definition of CPU_DoubleU is incorrect on arm hosts when using > soft-float. In this case "float64" will have host integer word ordering, not > host hardware float ordering. > > Paul > > Index: cpu-all.h > =================================================================== > RCS file: /cvsroot/qemu/qemu/cpu-all.h,v > retrieving revision 1.42 > diff -u -p -r1.42 cpu-all.h > --- cpu-all.h 13 Mar 2005 18:50:23 -0000 1.42 > +++ cpu-all.h 26 Mar 2005 20:48:25 -0000 > @@ -120,7 +120,8 @@ static inline void tswap64s(uint64_t *s) > endian ! */ > typedef union { > float64 d; > -#if defined(WORDS_BIGENDIAN) || (defined(__arm__) && !defined(__VFP_FP__)) > +#if defined(WORDS_BIGENDIAN) \ > + || (defined(__arm__) && !defined(__VFP_FP__) && !defined(CONFIG_SOFTFLOAT)) > struct { > uint32_t upper; > uint32_t lower; > > > _______________________________________________ > Qemu-devel mailing list > Qemu-devel@nongnu.org > http://lists.nongnu.org/mailman/listinfo/qemu-devel > >