File liboil-win64.patch of Package mingw64-liboil

--- liboil/liboil/amd64/wavelet.c	2009-08-18 11:36:57.000000000 +0200
+++ liboil/liboil/amd64/wavelet.c	2009-08-18 11:38:00.000000000 +0200
@@ -2,7 +2,7 @@
 #include <liboil/liboilfunction.h>
 #include <liboil/liboilclasses.h>
 #include <stddef.h>
-
+#include <stdint.h>
 
 void
 deinterleave2_asm (int16_t *d1, int16_t *d2, int16_t *s_2xn, int n)
@@ -1409,7 +1409,7 @@
       "  jnz 1b\n"
       "  emms\n"
       : "+r" (i1), "+r" (s1), "+r" (s2), "+r" (n)
-      : "r" ((long)is1), "r" ((long)ss1), "r" ((long)ss2)
+      : "r" ((intptr_t)is1), "r" ((intptr_t)ss1), "r" ((intptr_t)ss2)
       );
 }
 OIL_DEFINE_IMPL_FULL (multiply_and_acc_12xn_s16_u8_mmx,
@@ -1596,7 +1596,7 @@
         [s2_nx4_off] "+r" (s2_nx4_off),
         [n] "+m" (n),
         [s1] "+r" (s1)
-      : [sstr] "r" ((long)(sstr2))
+      : [sstr] "r" ((intptr_t)(sstr2))
       );
 }
 OIL_DEFINE_IMPL_FULL (mas4_across_add_s16_mmx, mas4_across_add_s16,
@@ -1753,8 +1753,8 @@
         [s3_8] "+r" (s3_8),
         [d] "+r" (d),
         [n] "+m" (n),
-        [s1] "+r" ((long)(s1))
-      : [sstr] "r" ((long)(sstr2))
+        [s1] "+r" ((intptr_t)(s1))
+      : [sstr] "r" ((intptr_t)(sstr2))
       );
 }
 OIL_DEFINE_IMPL_FULL (mas8_across_add_s16_mmx, mas8_across_add_s16,
--- liboil/liboil/i386_amd64/mas.c	2009-08-18 11:36:57.000000000 +0200
+++ liboil/liboil/i386_amd64/mas.c	2009-08-18 11:38:39.000000000 +0200
@@ -1,7 +1,7 @@
 
 #include <liboil/liboilfunction.h>
 #include <liboil/liboilclasses.h>
-
+#include <stdint.h>
 
 void
 mas10_u8_mmx (uint8_t *d, const uint8_t *s1_np9, const int16_t *s2_10,
@@ -1104,7 +1104,7 @@
       "  packuswb %%mm2, %%mm2\n"
       "  movd %%mm2, 0(%[d])\n"
       : [p] "+r" (p)
-      : [d] "r" (d), [ss1] "r" ((long)ss1));
+      : [d] "r" (d), [ss1] "r" ((intptr_t)ss1));
     d+=4;
     s1_nx8+=4;
     n--;
--- liboil/liboil/i386_amd64/multiply_and_acc.c	2009-08-18 11:36:57.000000000 +0200
+++ liboil/liboil/i386_amd64/multiply_and_acc.c	2009-08-18 11:38:27.000000000 +0200
@@ -1,6 +1,7 @@
 
 #include <liboil/liboilfunction.h>
 #include <liboil/liboilclasses.h>
+#include <stdint.h>
 
 void
 multiply_and_acc_6xn_s16_u8_mmx (int16_t *i1, int is1, int16_t *s1,
@@ -32,7 +33,7 @@
 #ifdef __i386__
       : "m" (is1), "m" (ss1), "m" (ss2)
 #else
-      : "r" ((long)is1), "r" ((long)ss1), "r" ((long)ss2)
+      : "r" ((intptr_t)is1), "r" ((intptr_t)ss1), "r" ((intptr_t)ss2)
 #endif
       );
 }
@@ -68,7 +69,7 @@
 #ifdef __i386__
       : "m" (is1), "m" (ss1), "m" (ss2)
 #else
-      : "r" ((long)is1), "r" ((long)ss1), "r" ((long)ss2)
+      : "r" ((intptr_t)is1), "r" ((intptr_t)ss1), "r" ((intptr_t)ss2)
 #endif
       );
 }
@@ -114,7 +115,7 @@
 #ifdef __i386__
       : "m" (is1), "m" (ss1), "m" (ss2)
 #else
-      : "r" ((long)is1), "r" ((long)ss1), "r" ((long)ss2)
+      : "r" ((intptr_t)is1), "r" ((intptr_t)ss1), "r" ((intptr_t)ss2)
 #endif
       );
 }
@@ -170,7 +171,7 @@
 #ifdef __i386__
       : "m" (is1), "m" (ss1), "m" (ss2)
 #else
-      : "r" ((long)is1), "r" ((long)ss1), "r" ((long)ss2)
+      : "r" ((intptr_t)is1), "r" ((intptr_t)ss1), "r" ((intptr_t)ss2)
 #endif
       );
 }
openSUSE Build Service is sponsored by