[Gmp-commit] /var/hg/gmp: 2 new changesets
mercurial at gmplib.org
mercurial at gmplib.org
Thu May 5 17:16:48 CEST 2011
details: /var/hg/gmp/rev/9de12b8ef021
changeset: 14164:9de12b8ef021
user: Torbjorn Granlund <tege at gmplib.org>
date: Thu May 05 17:16:08 2011 +0200
description:
(PIC_OR_DARWIN): New symbol. Use it to work around Darwin problems.
details: /var/hg/gmp/rev/54a67a61f764
changeset: 14165:54a67a61f764
user: Torbjorn Granlund <tege at gmplib.org>
date: Thu May 05 17:16:13 2011 +0200
description:
*** empty log message ***
diffstat:
ChangeLog | 5 +++++
mpn/x86_64/fat/fat_entry.asm | 17 ++++++++++++++---
2 files changed, 19 insertions(+), 3 deletions(-)
diffs (60 lines):
diff -r a3182d4a8628 -r 54a67a61f764 ChangeLog
--- a/ChangeLog Wed May 04 21:26:01 2011 +0200
+++ b/ChangeLog Thu May 05 17:16:13 2011 +0200
@@ -1,3 +1,8 @@
+2011-05-05 Torbjorn Granlund <tege at gmplib.org>
+
+ * mpn/x86_64/fat/fat_entry.asm (PIC_OR_DARWIN): New symbol. Use it to
+ work around Darwin problems.
+
2011-05-04 Niels Möller <nisse at lysator.liu.se>
* mpz/gcdext.c (mpz_gcdext): Reduced temporary allocations. Use
diff -r a3182d4a8628 -r 54a67a61f764 mpn/x86_64/fat/fat_entry.asm
--- a/mpn/x86_64/fat/fat_entry.asm Wed May 04 21:26:01 2011 +0200
+++ b/mpn/x86_64/fat/fat_entry.asm Thu May 05 17:16:13 2011 +0200
@@ -3,7 +3,7 @@
dnl Contributed to the GNU project by Kevin Ryde (original x86_32 code) and
dnl Torbjorn Granlund (port to x86_64)
-dnl Copyright 2003, 2009 Free Software Foundation, Inc.
+dnl Copyright 2003, 2009, 2011 Free Software Foundation, Inc.
dnl
dnl This file is part of the GNU MP Library.
dnl
@@ -33,6 +33,17 @@
define(`WANT_PROFILING',no)
+dnl We define PIC_OR_DARWIN as a helper symbol, the use it for suppressing
+dnl normal, fast call code, since that triggers problems on darwin.
+dnl
+dnl FIXME: There might be a more elegant solution, adding less overhead.
+
+ifdef(`DARWIN',
+`define(`PIC_OR_DARWIN')')
+ifdef(`PIC',
+`define(`PIC_OR_DARWIN')')
+
+
TEXT
@@ -59,7 +70,7 @@
m4_assert_numargs(2)
` ALIGN(ifdef(`PIC',16,8))
`'PROLOGUE($1)
-ifdef(`PIC',
+ifdef(`PIC_OR_DARWIN',
` LEA( GSYM_PREFIX`'__gmpn_cpuvec, %rax)
jmp *$2(%rax)
',`dnl non-PIC
@@ -129,7 +140,7 @@
pop %rdx
pop %rsi
pop %rdi
-ifdef(`PIC',`
+ifdef(`PIC_OR_DARWIN',`
LEA( GSYM_PREFIX`'__gmpn_cpuvec, %r10)
jmp *(%r10,%rax)
',`dnl non-PIC
More information about the gmp-commit
mailing list