From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Fsh23-00020r-9g for qemu-devel@nongnu.org; Tue, 20 Jun 2006 10:16:43 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Fsh1z-0001zi-2K for qemu-devel@nongnu.org; Tue, 20 Jun 2006 10:16:42 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Fsh1y-0001zd-TW for qemu-devel@nongnu.org; Tue, 20 Jun 2006 10:16:38 -0400 Received: from [195.184.98.160] (helo=virtualhost.dk) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.52) id 1FshCW-0007c8-3A for qemu-devel@nongnu.org; Tue, 20 Jun 2006 10:27:32 -0400 Date: Tue, 20 Jun 2006 16:17:39 +0200 From: Jens Axboe Subject: Re: RE : [Qemu-devel] cvttps2dq, movdq2q, movq2dq incorrect behaviour Message-ID: <20060620141738.GX4466@suse.de> References: <20060620131539.71677.qmail@web26805.mail.ukl.yahoo.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: spetreolle@users.sourceforge.net On Tue, Jun 20 2006, malc wrote: > On Tue, 20 Jun 2006, Sylvain Petreolle wrote: > > >--- Julian Seward a ?crit : > >> > >>The SSE2 instructions cvttps2dq, movdq2q, movq2dq do not behave > >>correctly, as shown by the attached program. It should print > >> > >> cvttps2dq_1 ... ok > >> cvttps2dq_2 ... ok > >> movdq2q_1 ... ok > >> movq2dq_1 ... ok > >> > >> > > > >I tried your program on my linux station : > >CPU: AMD Athlon(tm) XP 1600+ stepping 02 > > > >[syl@wine qemu]$ gcc --version > >gcc (GCC) 4.1.1 20060525 (Red Hat 4.1.1-1) > > > >[syl@wine qemu]$ gcc -msse2 sse2test.c -o sse2test > >[syl@wine qemu]$ ./sse2test > >cvttps2dq_1 ... failed > >cvttps2dq_2 ... failed > >movdq2q_1 ... failed > >movq2dq_1 ... failed > > > >what am i doing wrong here ? > > Running it on a CPU without SSE2, if i'm allowed to venture a gues. Doesn't work for me, either: axboe@nelson:/home/axboe $ ./a cvttps2dq_1 ... not ok result0.sd[0] = 0 (expected 12) result0.sd[1] = 0 (expected 56) result0.sd[2] = 0 (expected 43) result0.sd[3] = 0 (expected 87) cvttps2dq_2 ... not ok result0.sd[0] = 0 (expected 12) result0.sd[1] = 0 (expected 56) result0.sd[2] = 0 (expected 43) result0.sd[3] = 0 (expected 87) movdq2q_1 ... not ok result0.uq[0] = 240518168588 (expected 5124095577148911) movq2dq_1 ... not ok result0.uq[0] = 0 (expected 5124095577148911) result0.uq[1] = 0 (expected 0) axboe@nelson:/home/axboe $ ./a Segmentation fault Varies between the two. Compiling without -O2 makes the last two suceed, the others still not. This CPU has sse2. -- Jens Axboe