[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