From owner-freebsd-questions Mon Nov 1 3:41:20 1999 Delivered-To: freebsd-questions@freebsd.org Received: from atlrel2.hp.com (atlrel2.hp.com [156.153.255.202]) by hub.freebsd.org (Postfix) with ESMTP id 547ED14FD8 for ; Mon, 1 Nov 1999 03:41:02 -0800 (PST) (envelope-from steveroo@mothra.bri.hp.com) Received: from mothra.bri.hp.com (steveroo@mothra.bri.hp.com [15.144.1.185]) by atlrel2.hp.com (8.8.6 (PHNE_17135)/8.8.5tis) with ESMTP id GAA00557 for ; Mon, 1 Nov 1999 06:40:11 -0500 (EST) Received: from localhost (steveroo@localhost) by mothra.bri.hp.com with ESMTP (8.8.6 (PHNE_17135)/8.7.1) id LAA20166 for ; Mon, 1 Nov 1999 11:39:55 GMT Date: Mon, 1 Nov 1999 11:39:54 +0000 (GMT) From: Stephen Roome To: freebsd-questions@freebsd.org Subject: Athlons.. Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Does anyone know if the following example, taken from AMD's documentation, would improve bcopy performance on the Athlon? (over the routine that would be defaulted to ?) I'm asking, because I don't know enough asm, to put this in safely, and I quite probably don't know what I'm talking about at all, but someone's got to make a fool of themselves now and again. (example at end) Steve ; xfer label should be 32 byte aligned. movq-movq example : _asm { mov eax, [src] mov edx, [dst] mov ecx, (SIZE >> 6) xfer: movq mm0, [eax] add edx, 64 movq mm1, [eax+8] add eax, 64 movq mm2, [eax-48] movq [edx-64], mm0 movq mm3, [eax-40] movq [edx-56], mm1 movq mm4, [eax-32] movq [edx-48], mm2 movq mm5, [eax-24] movq [edx-40], mm3 movq mm6, [eax-16] movq [edx-32], mm4 movq mm7, [eax-8] movq [edx-24], mm5 movq [edx-16], mm6 dec ecx movq [edx-8], mm7 jnz xfer } To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message