summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/tomsfastmath/files/tomsfastmath-0.05-asm-relax-x86.patch')
-rw-r--r--dev-libs/tomsfastmath/files/tomsfastmath-0.05-asm-relax-x86.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/dev-libs/tomsfastmath/files/tomsfastmath-0.05-asm-relax-x86.patch b/dev-libs/tomsfastmath/files/tomsfastmath-0.05-asm-relax-x86.patch
new file mode 100644
index 000000000000..959dc0246166
--- /dev/null
+++ b/dev-libs/tomsfastmath/files/tomsfastmath-0.05-asm-relax-x86.patch
@@ -0,0 +1,16 @@
+relax input constraints for x86 so gcc doesnt error out:
+fp_mul_comba.c:258: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
+
+http://bugs.gentoo.org/152043
+
+--- fp_mul_comba.c
++++ fp_mul_comba.c
+@@ -53,7 +53,7 @@
+ "addl %%eax,%0 \n\t" \
+ "adcl %%edx,%1 \n\t" \
+ "adcl $0,%2 \n\t" \
+- :"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "m"(i), "m"(j) :"%eax","%edx","%cc");
++ :"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i), "g"(j) :"%eax","%edx","%cc");
+
+ #elif defined(TFM_X86_64)
+ /* x86-64 optimized */