aboutsummaryrefslogtreecommitdiffstats
path: root/libxine/libxine-1.0.0-rc5/cpu.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libxine/libxine-1.0.0-rc5/cpu.patch')
-rw-r--r--libxine/libxine-1.0.0-rc5/cpu.patch75
1 files changed, 75 insertions, 0 deletions
diff --git a/libxine/libxine-1.0.0-rc5/cpu.patch b/libxine/libxine-1.0.0-rc5/cpu.patch
index e69de29bb2..a2444d9ed3 100644
--- a/libxine/libxine-1.0.0-rc5/cpu.patch
+++ b/libxine/libxine-1.0.0-rc5/cpu.patch
@@ -0,0 +1,75 @@
+For those x86 folks - ebx is used by PIC and shouldn't be used by
+anyone else
+
+--- xine-lib-1-rc5/src/post/goom/zoom_filter_xmmx.c 2003-09-15 15:53:53.000000000 -0700
++++ xine-lib-1-rc5.new/src/post/goom/zoom_filter_xmmx.c 2004-06-29 15:25:45.763268896 -0700
+@@ -108,23 +108,23 @@
+ * post : mm3 & mm4 : coefs for this position
+ * mm1 : X vector [0|X]
+ *
+- * modif : eax,ebx
++ * modif : eax,ecx
+ */
+ __asm__ __volatile__ (
+- "movd %%mm0,%%ebx\n"
++ "movd %%mm0,%%ecx\n"
+ "movq %%mm0,%%mm1\n"
+
+- "andl $15,%%ebx\n"
++ "andl $15,%%ecx\n"
+ "psrlq $32,%%mm1\n"
+
+- "shll $6,%%ebx\n"
++ "shll $6,%%ecx\n"
+ "movd %%mm1,%%eax\n"
+
+- "addl %0,%%ebx\n"
++ "addl %0,%%ecx\n"
+ "andl $15,%%eax\n"
+
+- "movd (%%ebx,%%eax,4),%%mm3\n"
+- ::"X"(precalCoef):"eax","ebx");
++ "movd (%%ecx,%%eax,4),%%mm3\n"
++ ::"X"(precalCoef):"eax","ecx");
+
+ /*
+ * extraction des coefficients...
+@@ -152,7 +152,7 @@
+ * post : mm0 : expix1[position]
+ * mm2 : expix1[position+largeur]
+ *
+- * modif : eax,ebx
++ * modif : eax,ecx
+ */
+ psrld_i2r (PERTEDEC,mm0);
+ psrld_i2r (PERTEDEC,mm1);
+@@ -161,23 +161,23 @@
+ /*^*/ "movq %%mm3,%%mm5\n" /*^*/
+
+ "mull %1\n"
+- "movd %%mm0,%%ebx\n"
++ "movd %%mm0,%%ecx\n"
+ /*^*/ "punpcklbw %%mm5, %%mm3\n" /*^*/
+
+- "addl %%ebx,%%eax\n"
++ "addl %%ecx,%%eax\n"
+ /*^*/ "movq %%mm3,%%mm4\n" /*^*/
+ /*^*/ "movq %%mm3,%%mm5\n" /*^*/
+
+- "movl %0,%%ebx\n"
++ "movl %0,%%ecx\n"
+ /*^*/ "punpcklbw %%mm5,%%mm3\n" /*^*/
+
+- "movq (%%ebx,%%eax,4),%%mm0\n"
++ "movq (%%ecx,%%eax,4),%%mm0\n"
+ /*^*/ "punpckhbw %%mm5,%%mm4\n" /*^*/
+
+ "addl %1,%%eax\n"
+- "movq (%%ebx,%%eax,4),%%mm2\n"
++ "movq (%%ecx,%%eax,4),%%mm2\n"
+
+- : : "X"(expix1), "X"(prevX):"eax","ebx"
++ : : "X"(expix1), "X"(prevX):"eax","ecx"
+ );
+
+ /*