File ocaml-3.08.3-gcc4.patch of Package ocaml

--- otherlibs/num/bng_ia32.c
+++ otherlibs/num/bng_ia32.c
@@ -121,7 +121,7 @@
         "leal 4(%1), %1 \n\t"
         "decl %2 \n\t"
         "jnz 1b"
-        : "+&r" (a), "+&r" (b), "+&r" (blen), "=m" (out)
+        : "+r" (a), "+r" (b), "+m" (blen), "+r" (out)
         : "m" (d)
         : "eax", "edx");
   }
@@ -164,7 +164,7 @@
         "leal 4(%1), %1 \n\t"
         "decl %2 \n\t"
         "jnz 1b"
-        : "+&r" (a), "+&r" (b), "=m" (blen), "=m" (out), "=&r" (tmp)
+        : "+r" (a), "+r" (b), "+m" (blen), "+m" (out), "=&r" (tmp)
         : "m" (d)
         : "eax", "edx");
   }
@@ -210,7 +210,7 @@
         "jne 1b \n\t"
         "movd %%mm0, %3 \n\t"
         "emms"
-        : "+&r" (a), "+&r" (b), "+&r" (blen), "+&rm" (carry));
+        : "+r" (a), "+r" (b), "+r" (blen), "+rm" (carry));
   }
   if (carry == 0 || alen == 0) return carry;
   do {
@@ -242,7 +242,7 @@
         "jne 1b \n\t"
         "movd %%mm0, %3 \n\t"
         "emms"
-        : "+&r" (a), "+&r" (b), "+&r" (blen), "+&rm" (carry));
+        : "+r" (a), "+r" (b), "+r" (blen), "+rm" (carry));
   }
   if (carry == 0 || alen == 0) return carry;
   do {
@@ -279,7 +279,7 @@
         "jne 1b \n\t"
         "movd %%mm0, %3 \n\t"
         "emms"
-        : "+&r" (a), "+&r" (b), "+&r" (blen), "=&rm" (out)
+        : "+r" (a), "+r" (b), "+r" (blen), "=&rm" (out)
         : "m" (d));
   }
   if (alen == 0) return out;
@@ -332,7 +332,7 @@
         "jne 1b \n\t"
         "movd %%mm0, %3 \n\t"
         "emms"
-        : "+&r" (a), "+&r" (b), "+&r" (blen), "=&rm" (out)
+        : "+r" (a), "+r" (b), "+r" (blen), "=&rm" (out)
         : "m" (d), "m" (bias1), "m" (bias2));
     out = ~out; /* Undo encoding on out digit */
   }
openSUSE Build Service is sponsored by