From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:45133) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TAeNk-0006Qt-Q5 for qemu-devel@nongnu.org; Sun, 09 Sep 2012 06:04:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TAeNj-0002dH-M7 for qemu-devel@nongnu.org; Sun, 09 Sep 2012 06:04:48 -0400 Received: from hall.aurel32.net ([88.191.126.93]:33815) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TAeNj-0002dB-Fd for qemu-devel@nongnu.org; Sun, 09 Sep 2012 06:04:47 -0400 Date: Sun, 9 Sep 2012 12:04:45 +0200 From: Aurelien Jarno Message-ID: <20120909100445.GR17750@hall.aurel32.net> References: <1347138767-19941-1-git-send-email-aurelien@aurel32.net> <20120909092413.GQ6791@ohm.aurel32.net> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: Sender: Aurelien Jarno Subject: Re: [Qemu-devel] [PATCH 1/5] softfloat: fix float{32, 64}_muladd options List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Max Filippov , qemu-devel@nongnu.org On Sun, Sep 09, 2012 at 10:47:52AM +0100, Peter Maydell wrote: > On 9 September 2012 10:24, Aurelien Jarno wrote: > > On Sun, Sep 09, 2012 at 01:40:52AM +0400, Max Filippov wrote: > >> I've also stumbled upon this bug, have a patch for it in the xtensa tr= ee. > >> I guess that the interface was designed to allow combining these flags= , why > >> don't just make them independent: > > > > My idea was that negating both the product and c is equivalent to > > negating the result, so there is no need to allow all of them > > independent. >=20 > But at least some of them can reasonably be independent, so > at that point you might as well make them all independent flags. >=20 > In fact my reading of the PPC ISA is that it needs several combinations: > fmadd : no flags > fnmadd : negate_result > fmsub : negate_c > fnmsub : negate_result | negate_c >=20 > ...and it looks like your patch is incorrectly only setting negate_result > for the fnmsub case. (I can't see anything handling the fnmadd and fmsub > insns, do we not implement them?) fnmadd and fmsub are provided as part as floating point instructions (something else to clean), not as part as altivec instructions. > (negate_product will be used by x86 and SPARC, among others.) >=20 > thanks > =10-- PMM >=20 --=20 Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net