[Gmp-commit] /var/hg/gmp: 5 new changesets

mercurial at gmplib.org mercurial at gmplib.org
Mon Mar 25 02:24:48 CET 2013


details:   /var/hg/gmp/rev/0d742035780c
changeset: 15637:0d742035780c
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Mon Mar 25 01:59:52 2013 +0100
description:
Generalised from aorslshC_n.asm.

details:   /var/hg/gmp/rev/3776da7ef269
changeset: 15638:3776da7ef269
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Mon Mar 25 02:00:19 2013 +0100
description:
Generalised from aorslsh1_n.asm

details:   /var/hg/gmp/rev/bb59e4b53f61
changeset: 15639:bb59e4b53f61
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Mon Mar 25 02:00:33 2013 +0100
description:
Generalised from aorslsh2_n.asm.

details:   /var/hg/gmp/rev/3c915466afc2
changeset: 15640:3c915466afc2
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Mon Mar 25 02:01:29 2013 +0100
description:
Remove old files.

details:   /var/hg/gmp/rev/16d96f0fe1ff
changeset: 15641:16d96f0fe1ff
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Mon Mar 25 02:01:45 2013 +0100
description:
ChangeLog

diffstat:

 ChangeLog                  |    6 +
 mpn/ia64/aorslsh1_n.asm    |   51 -----
 mpn/ia64/aorslsh2_n.asm    |   51 -----
 mpn/ia64/aorslshC_n.asm    |  360 ------------------------------------------
 mpn/ia64/aorsorrlsh1_n.asm |   37 ++++
 mpn/ia64/aorsorrlsh2_n.asm |   37 ++++
 mpn/ia64/aorsorrlshC_n.asm |  384 +++++++++++++++++++++++++++++++++++++++++++++
 7 files changed, 464 insertions(+), 462 deletions(-)

diffs (truncated from 957 to 300 lines):

diff -r 0856beb907f3 -r 16d96f0fe1ff ChangeLog
--- a/ChangeLog	Sun Mar 24 20:48:46 2013 +0100
+++ b/ChangeLog	Mon Mar 25 02:01:45 2013 +0100
@@ -1,3 +1,9 @@
+2013-03-25  Torbjorn Granlund  <tege at gmplib.org>
+
+	* mpn/ia64/aorsorrlshC_n.asm: Generalised from aorslshC_n.asm.
+	* mpn/ia64/aorsorrlsh1_n.asm: Generalised from aorslsh1_n.asm.
+	* mpn/ia64/aorsorrlsh2_n.asm: Generalised from aorslsh2_n.asm.
+
 2013-03-24  Torbjorn Granlund  <tege at gmplib.org>
 
 	* mpn/arm/v7a/cora15/neon/aorsorrlshC_n.asm: New file.
diff -r 0856beb907f3 -r 16d96f0fe1ff mpn/ia64/aorslsh1_n.asm
--- a/mpn/ia64/aorslsh1_n.asm	Sun Mar 24 20:48:46 2013 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-dnl  IA-64 mpn_addlsh1_n/mpn_sublsh1_n -- rp[] = up[] +- (vp[] << 1).
-
-dnl  Contributed to the GNU project by Torbjorn Granlund.
-
-dnl  Copyright 2003, 2004, 2005, 2010 Free Software Foundation, Inc.
-
-dnl  This file is part of the GNU MP Library.
-
-dnl  The GNU MP Library is free software; you can redistribute it and/or modify
-dnl  it under the terms of the GNU Lesser General Public License as published
-dnl  by the Free Software Foundation; either version 3 of the License, or (at
-dnl  your option) any later version.
-
-dnl  The GNU MP Library is distributed in the hope that it will be useful, but
-dnl  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-dnl  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
-dnl  License for more details.
-
-dnl  You should have received a copy of the GNU Lesser General Public License
-dnl  along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.
-
-include(`../config.m4')
-
-C           cycles/limb
-C Itanium:      3.0
-C Itanium 2:    1.5
-
-
-define(LSH,		1)
-define(RSH,		63)
-
-ifdef(`OPERATION_addlsh1_n',`
-  define(ADDSUB,       add)
-  define(ADDP,         1)
-  define(CND,	       ltu)
-  define(INCR,	       1)
-  define(LIM,	       -1)
-  define(func, mpn_addlsh1_n)
-')
-ifdef(`OPERATION_sublsh1_n',`
-  define(ADDSUB,       sub)
-  define(CND,	       gtu)
-  define(INCR,	       -1)
-  define(LIM,	       0)
-  define(func, mpn_sublsh1_n)
-')
-
-
-MULFUNC_PROLOGUE(mpn_addlsh1_n mpn_sublsh1_n)
-
-include_mpn(`ia64/aorslshC_n.asm')
diff -r 0856beb907f3 -r 16d96f0fe1ff mpn/ia64/aorslsh2_n.asm
--- a/mpn/ia64/aorslsh2_n.asm	Sun Mar 24 20:48:46 2013 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-dnl  IA-64 mpn_addlsh1_n/mpn_sublsh1_n -- rp[] = up[] +- (vp[] << 1).
-
-dnl  Contributed to the GNU project by Torbjorn Granlund.
-
-dnl  Copyright 2003, 2004, 2005, 2010 Free Software Foundation, Inc.
-
-dnl  This file is part of the GNU MP Library.
-
-dnl  The GNU MP Library is free software; you can redistribute it and/or modify
-dnl  it under the terms of the GNU Lesser General Public License as published
-dnl  by the Free Software Foundation; either version 3 of the License, or (at
-dnl  your option) any later version.
-
-dnl  The GNU MP Library is distributed in the hope that it will be useful, but
-dnl  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-dnl  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
-dnl  License for more details.
-
-dnl  You should have received a copy of the GNU Lesser General Public License
-dnl  along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.
-
-include(`../config.m4')
-
-C           cycles/limb
-C Itanium:      3.0
-C Itanium 2:    1.5
-
-
-define(LSH,		2)
-define(RSH,		62)
-
-ifdef(`OPERATION_addlsh2_n',`
-  define(ADDSUB,       add)
-  define(ADDP,         1)
-  define(CND,	       ltu)
-  define(INCR,	       1)
-  define(LIM,	       -1)
-  define(func, mpn_addlsh2_n)
-')
-ifdef(`OPERATION_sublsh2_n',`
-  define(ADDSUB,       sub)
-  define(CND,	       gtu)
-  define(INCR,	       -1)
-  define(LIM,	       0)
-  define(func, mpn_sublsh2_n)
-')
-
-
-MULFUNC_PROLOGUE(mpn_addlsh2_n mpn_sublsh2_n)
-
-include_mpn(`ia64/aorslshC_n.asm')
diff -r 0856beb907f3 -r 16d96f0fe1ff mpn/ia64/aorslshC_n.asm
--- a/mpn/ia64/aorslshC_n.asm	Sun Mar 24 20:48:46 2013 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,360 +0,0 @@
-dnl  IA-64 mpn_addlsh1_n/mpn_sublsh1_n -- rp[] = up[] +- (vp[] << 1).
-
-dnl  Contributed to the GNU project by Torbjorn Granlund.
-
-dnl  Copyright 2003, 2004, 2005, 2010 Free Software Foundation, Inc.
-
-dnl  This file is part of the GNU MP Library.
-
-dnl  The GNU MP Library is free software; you can redistribute it and/or modify
-dnl  it under the terms of the GNU Lesser General Public License as published
-dnl  by the Free Software Foundation; either version 3 of the License, or (at
-dnl  your option) any later version.
-
-dnl  The GNU MP Library is distributed in the hope that it will be useful, but
-dnl  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-dnl  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
-dnl  License for more details.
-
-dnl  You should have received a copy of the GNU Lesser General Public License
-dnl  along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.
-
-C           cycles/limb
-C Itanium:      ?
-C Itanium 2:    1.5
-
-C TODO
-C  * Use shladd in feed-in code (for mpn_addlshC_n).
-
-C INPUT PARAMETERS
-define(`rp', `r32')
-define(`up', `r33')
-define(`vp', `r34')
-define(`n',  `r35')
-
-define(cmpeqor, `cmp.eq.or')
-define(PFDIST, 500)
-
-define(`u0',`r14') define(`u1',`r15') define(`u2',`r16') define(`u3',`r17')
-define(`v0',`r18') define(`v1',`r19') define(`v2',`r20') define(`v3',`r21')
-define(`w0',`r22') define(`w1',`r23') define(`w2',`r24') define(`w3',`r25')
-define(`s0',`r26') define(`s1',`r27') define(`s2',`r28') define(`s3',`r29')
-define(`x0',`r30') define(`x1',`r31') define(`x2',`r30') define(`x3',`r31')
-
-
-ASM_START()
-PROLOGUE(func)
-	.prologue
-	.save	ar.lc, r2
-	.body
-ifdef(`HAVE_ABI_32',`
-	addp4	rp = 0, rp		C			M I
-	addp4	up = 0, up		C			M I
-	addp4	vp = 0, vp		C			M I
-	zxt4	n = n			C			I
-	;;
-')
- {.mmi;	ld8	r11 = [vp], 8		C			M01
-	ld8	r10 = [up], 8		C			M01
-	mov.i	r2 = ar.lc		C			I0
-}{.mmi;	and	r14 = 3, n		C			M I
-	cmp.lt	p15, p0 = 4, n		C			M I
-	add	n = -5, n		C			M I
-	;;
-}{.mmi;	cmp.eq	p6, p0 = 1, r14		C			M I
-	cmp.eq	p7, p0 = 2, r14		C			M I
-	cmp.eq	p8, p0 = 3, r14		C			M I
-}{.bbb
-  (p6)	br.dptk	.Lb01			C			B
-  (p7)	br.dptk	.Lb10			C			B
-  (p8)	br.dptk	.Lb11			C			B
-}
-
-.Lb00:	ld8	v0 = [vp], 8		C			M01
-	ld8	u0 = [up], 8		C			M01
-	shr.u	n = n, 2		C			I0
-	;;
-.mmi;	ld8	v1 = [vp], 8		C			M01
-	ld8	u1 = [up], 8		C			M01
-	shl	x3 = r11, LSH		C			I0
-	;;
-.mmi;	ld8	v2 = [vp], 8		C			M01
-	ld8	u2 = [up], 8		C			M01
-	shrp	x0 = v0, r11, RSH	C			I0
-.mmb;	ADDSUB	w3 = r10, x3		C			M I
-	nop	0
-  (p15)	br.dpnt	.grt4			C			B
-	;;
-.mii;	cmp.CND	p7, p0 = w3, r10	C			M I
-	shrp	x1 = v1, v0, RSH	C			I0
-	ADDSUB	w0 = u0, x0		C			M I
-	;;
-.mii;	cmp.CND	p8, p0 = w0, u0		C			M I
-	shrp	x2 = v2, v1, RSH	C			I0
-	ADDSUB	w1 = u1, x1		C			M I
-.mmb;	nop	0
-	nop	0
-	br	.Lcj4			C			B
-
-ALIGN(32)
-.grt4:	ld8	v3 = [vp], 8		C			M01
-	shrp	x0 = v0, r11, RSH	C			I0
-	cmp.CND	p8, p0 = w3, r10	C			M I
-	;;
-.mmi;	ld8	u3 = [up], 8		C			M01
-	add	r11 = PFDIST, vp
-	shrp	x1 = v1, v0, RSH	C			I0
-.mmi;	ld8	v0 = [vp], 8		C			M01
-	ADDSUB	w0 = u0, x0		C			M I
-	nop	0
-	;;
-.mmi;	cmp.CND	p6, p0 = w0, u0		C			M I
-	add	r10 = PFDIST, up
-	mov.i	ar.lc = n		C			I0
-.mmb;	ADDSUB	w1 = u1, x1		C			M I
-	ld8	u0 = [up], 8		C			M01
-	br	.LL00			C			B
-
-
-	ALIGN(32)
-.Lb01:
-ifdef(`ADDP',
-`	shladd	w2 = r11, LSH, r10	C			M I
-	shr.u	r8 = r11, RSH		C retval		I0
-  (p15)	br.dpnt	.grt1			C			B
-	;;
-',`
-	shl	x2 = r11, LSH		C			I0
-  (p15)	br.dpnt	.grt1			C			B
-	;;
-	ADDSUB	w2 = r10, x2		C			M I
-	shr.u	r8 = r11, RSH		C retval		I0
-	;;
-')
-	cmp.CND	p6, p0 = w2, r10	C			M I
-	br		.Lcj1
-
-.grt1:	ld8	v3 = [vp], 8		C			M01
-	ld8	u3 = [up], 8		C			M01
-	shr.u	n = n, 2		C			I0
-	;;
-	ld8	v0 = [vp], 8		C			M01
-	ld8	u0 = [up], 8		C			M01
-	mov.i	ar.lc = n		C FIXME swap with next	I0
-ifdef(`ADDP',
-`',`
-	ADDSUB	w2 = r10, x2
-')
-	;;
-.mmi;	ld8	v1 = [vp], 8		C			M01
-	ld8	u1 = [up], 8		C			M01
-	shrp	x3 = v3, r11, RSH	C			I0
-	;;
-.mmi;	ld8	v2 = [vp], 8		C			M01
-	ld8	u2 = [up], 8		C			M01
-	shrp	x0 = v0, v3, RSH	C			I0
-.mmb;	cmp.CND	p6, p0 = w2, r10	C			M I
-	ADDSUB	w3 = u3, x3		C			M I
-	br.cloop.dptk	.grt5		C			B
-	;;
-.mmi;	cmp.CND	p7, p0 = w3, u3		C			M I
-	ADDSUB	w0 = u0, x0		C			M I
-	shrp	x1 = v1, v0, RSH	C			I0
-.mmb;	nop	0
-	nop	0
-	br	.Lcj5			C			B
-.grt5:
-.mmi;	add	r10 = PFDIST, up
-	add	r11 = PFDIST, vp
-	shrp	x0 = v0, v3, RSH	C			I0
-.mmb;	ld8	v3 = [vp], 8		C			M01
-	cmp.CND	p8, p0 = w3, u3		C			M I
-	br	.LL01			C			B
-


More information about the gmp-commit mailing list