From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M2v8u-0002aL-GV for qemu-devel@nongnu.org; Sat, 09 May 2009 18:35:40 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M2v8u-0002a3-2Q for qemu-devel@nongnu.org; Sat, 09 May 2009 18:35:40 -0400 Received: from [199.232.76.173] (port=60026 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M2v8t-0002a0-PT for qemu-devel@nongnu.org; Sat, 09 May 2009 18:35:39 -0400 Received: from fg-out-1718.google.com ([72.14.220.154]:62800) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1M2v8t-0007SR-EO for qemu-devel@nongnu.org; Sat, 09 May 2009 18:35:39 -0400 Received: by fg-out-1718.google.com with SMTP id l27so357643fgb.8 for ; Sat, 09 May 2009 15:35:37 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <200905092213.n49MDPEP016120@d03av03.boulder.ibm.com> References: <200905092213.n49MDPEP016120@d03av03.boulder.ibm.com> Date: Sun, 10 May 2009 00:35:37 +0200 Message-ID: <761ea48b0905091535l75076d7eg4d607ca7a494385@mail.gmail.com> From: Laurent Desnogues Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] Re: [Qemu-commits] [COMMIT b864a57] Fixe ARM NEON vrshl. List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paul Brook Cc: "qemu-devel@nongnu.org" On Sun, May 10, 2009 at 12:14 AM, Anthony Liguori wro= te: > From: Paul Brook > > Signed-off-by: Paul Brook > > diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c > index 4ee5658..35fbaf5 100644 > --- a/target-arm/neon_helper.c > +++ b/target-arm/neon_helper.c > @@ -456,11 +456,11 @@ uint64_t HELPER(neon_shl_s64)(uint64_t valop, uint6= 4_t shiftop) > =A0 =A0 if (tmp >=3D sizeof(src1) * 8) { \ > =A0 =A0 =A0 =A0 dest =3D 0; \ > =A0 =A0 } else if (tmp < -sizeof(src1) * 8) { \ > - =A0 =A0 =A0 =A0dest >>=3D sizeof(src1) * 8 - 1; \ > + =A0 =A0 =A0 =A0dest =3D src1 >> (sizeof(src1) * 8 - 1); \ > =A0 =A0 } else if (tmp =3D=3D -sizeof(src1) * 8) { \ > =A0 =A0 =A0 =A0 dest =3D src1 >> (tmp - 1); \ Isn't that a right shift by a negative amount? Laurent > =A0 =A0 =A0 =A0 dest++; \ > - =A0 =A0 =A0 =A0src2 >>=3D 1; \ > + =A0 =A0 =A0 =A0dest >>=3D 1; \ > =A0 =A0 } else if (tmp < 0) { \ > =A0 =A0 =A0 =A0 dest =3D (src1 + (1 << (-1 - tmp))) >> -tmp; \ > =A0 =A0 } else { \