diff options
author | Simon Stelling <blubb@gentoo.org> | 2004-11-28 11:13:49 +0000 |
---|---|---|
committer | Simon Stelling <blubb@gentoo.org> | 2004-11-28 11:13:49 +0000 |
commit | 04c5d267d48a46123ad66e6f79fc1c62d5b2ac40 (patch) | |
tree | 7ad1df38dc450472aa89e59dc88e16462697a50d /dev-libs/gmp/files | |
parent | Fix bug #72654 arising from Spanky's DESTDIR... (diff) | |
download | historical-04c5d267d48a46123ad66e6f79fc1c62d5b2ac40.tar.gz historical-04c5d267d48a46123ad66e6f79fc1c62d5b2ac40.tar.bz2 historical-04c5d267d48a46123ad66e6f79fc1c62d5b2ac40.zip |
#66780
Diffstat (limited to 'dev-libs/gmp/files')
-rw-r--r-- | dev-libs/gmp/files/amd64.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/dev-libs/gmp/files/amd64.patch b/dev-libs/gmp/files/amd64.patch new file mode 100644 index 000000000000..a07d72c691bf --- /dev/null +++ b/dev-libs/gmp/files/amd64.patch @@ -0,0 +1,30 @@ +--- gmp-impl.h 22 Apr 2004 23:59:53 -0000 1.281.2.12 ++++ gmp-impl.h 29 Sep 2004 19:22:23 -0000 +@@ -2188,14 +2188,24 @@ + there's an even number. */ + + #if defined (__GNUC__) && ! defined (NO_ASM) && HAVE_HOST_CPU_FAMILY_x86 ++/* Some clever GCC maintainer decided to change the meaning of the q register ++ flag with GCC version 3.1. He added a Q flag with the old meaning at the ++ same time. This forces us to use a conditional on GCC version. */ ++#if __GMP_GNUC_PREREQ (3,1) ++#define __GMP_qm "=Qm" ++#define __GMP_q "=Q" ++#else ++#define __GMP_qm "=qm" ++#define __GMP_q "=q" ++#endif + #define ULONG_PARITY(p, n) \ + do { \ + char __p; \ + unsigned long __n = (n); \ + __n ^= (__n >> 16); \ +- asm ("xorb %h1, %b1\n" \ +- "setpo %0\n" \ +- : "=qm" (__p), "=q" (__n) \ ++ asm ("xorb %h1, %b1\n\t" \ ++ "setpo %0" \ ++ : __GMP_qm (__p), __GMP_q (__n)\ + : "1" (__n)); \ + (p) = __p; \ + } while (0) |