[50608] trunk/dports/devel/gmp/files/patch-aors_n.asm.diff

mcalhoun at macports.org mcalhoun at macports.org
Mon May 4 17:02:23 PDT 2009


Revision: 50608
          http://trac.macports.org/changeset/50608
Author:   mcalhoun at macports.org
Date:     2009-05-04 17:02:23 -0700 (Mon, 04 May 2009)
Log Message:
-----------
gmp: Add patch file from r50591.

Added Paths:
-----------
    trunk/dports/devel/gmp/files/patch-aors_n.asm.diff

Added: trunk/dports/devel/gmp/files/patch-aors_n.asm.diff
===================================================================
--- trunk/dports/devel/gmp/files/patch-aors_n.asm.diff	                        (rev 0)
+++ trunk/dports/devel/gmp/files/patch-aors_n.asm.diff	2009-05-05 00:02:23 UTC (rev 50608)
@@ -0,0 +1,122 @@
+--- mpn/x86/p6/aors_n.asm~	2009-04-14 05:36:31.000000000 -0700
++++ mpn/x86/p6/aors_n.asm	2009-05-04 13:05:39.000000000 -0700
+@@ -28,118 +28,5 @@
+ C P6 model 9   (Banias)         ?
+ C P6 model 13  (Dothan)         2.25
+ 
+-
+-define(`rp',	`%edi')
+-define(`up',	`%esi')
+-define(`vp',	`%ebx')
+-define(`n',	`%ecx')
+-
+-ifdef(`OPERATION_add_n', `
+-	define(ADCSBB,	      adc)
+-	define(func,	      mpn_add_n)
+-	define(func_nc,	      mpn_add_nc)')
+-ifdef(`OPERATION_sub_n', `
+-	define(ADCSBB,	      sbb)
+-	define(func,	      mpn_sub_n)
+-	define(func_nc,	      mpn_sub_nc)')
+-
+ MULFUNC_PROLOGUE(mpn_add_n mpn_add_nc mpn_sub_n mpn_sub_nc)
+-
+-ASM_START()
+-
+-	TEXT
+-	ALIGN(16)
+-
+-PROLOGUE(func)
+-	xor	%edx, %edx
+-L(start):
+-	push	%edi
+-	push	%esi
+-	push	%ebx
+-
+-	mov	16(%esp), rp
+-	mov	20(%esp), up
+-	mov	24(%esp), vp
+-	mov	28(%esp), n
+-
+-	lea	(up,n,4), up
+-	lea	(vp,n,4), vp
+-	lea	(rp,n,4), rp
+-
+-	neg	n
+-	mov	n, %eax
+-	and	$-8, n
+-	and	$7, %eax
+-	shl	$2, %eax			C 4x
+-ifdef(`PIC',`
+-	call	L(pic_calc)
+-L(here):
+-',`
+-	lea	L(ent) (%eax,%eax,2), %eax	C 12x
+-')
+-
+-	shr	%edx				C set cy flag
+-	jmp	*%eax
+-
+-ifdef(`PIC',`
+-L(pic_calc):
+-	C See mpn/x86/README about old gas bugs
+-	lea	(%eax,%eax,2), %eax
+-	add	$L(ent)-L(here), %eax
+-	add	(%esp), %eax
+-	ret_internal
+-')
+-
+-.Lend:
+-	sbb	%eax, %eax
+-	neg	%eax
+-	pop	%ebx
+-	pop	%esi
+-	pop	%edi
+-	ret
+-
+-	ALIGN(16)
+-.Loop:
+-	jecxz	.Lend
+-L(ent):
+-Zdisp(	mov,	0,(up,n,4), %eax)
+-Zdisp(	ADCSBB,	0,(vp,n,4), %eax)
+-Zdisp(	mov,	%eax, 0,(rp,n,4))
+-
+-	mov	4(up,n,4), %edx
+-	ADCSBB	4(vp,n,4), %edx
+-	mov	%edx, 4(rp,n,4)
+-
+-	mov	8(up,n,4), %eax
+-	ADCSBB	8(vp,n,4), %eax
+-	mov	%eax, 8(rp,n,4)
+-
+-	mov	12(up,n,4), %edx
+-	ADCSBB	12(vp,n,4), %edx
+-	mov	%edx, 12(rp,n,4)
+-
+-	mov	16(up,n,4), %eax
+-	ADCSBB	16(vp,n,4), %eax
+-	mov	%eax, 16(rp,n,4)
+-
+-	mov	20(up,n,4), %edx
+-	ADCSBB	20(vp,n,4), %edx
+-	mov	%edx, 20(rp,n,4)
+-
+-	mov	24(up,n,4), %eax
+-	ADCSBB	24(vp,n,4), %eax
+-	mov	%eax, 24(rp,n,4)
+-
+-	mov	28(up,n,4), %edx
+-	ADCSBB	28(vp,n,4), %edx
+-	mov	%edx, 28(rp,n,4)
+-
+-	lea	8(n), n
+-	jmp	.Loop
+-
+-EPILOGUE()
+-
+-PROLOGUE(func_nc)
+-	movl	20(%esp), %edx
+-	jmp	L(start)
+-EPILOGUE()
++include_mpn(`x86/k7/aors_n.asm')
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20090504/362190fd/attachment.html>


More information about the macports-changes mailing list