[Ffmpeg-cvslog] r6002 - in trunk/libavcodec/ppc: float_altivec.c h264_altivec.c

lu_zero subversion
Tue Aug 15 22:36:06 CEST 2006


Author: lu_zero
Date: Tue Aug 15 22:36:05 2006
New Revision: 6002

Modified:
   trunk/libavcodec/ppc/float_altivec.c
   trunk/libavcodec/ppc/h264_altivec.c

Log:
10l, thanks to Emanuele Giaquinta <exg at gentoo.org> for testing and finding the issue

Modified: trunk/libavcodec/ppc/float_altivec.c
==============================================================================
--- trunk/libavcodec/ppc/float_altivec.c	(original)
+++ trunk/libavcodec/ppc/float_altivec.c	Tue Aug 15 22:36:05 2006
@@ -138,8 +138,8 @@
             s2 = vec_ld(0, src2+i);
             edges = vec_perm(t1 ,t0, mask);
             d = vec_madd(s0,s1,s2);
-            t0 = vec_perm(edges, d, align);
-            t1 = vec_perm(d, edges, align);
+            t0 = vec_perm(d, edges, align);
+            t1 = vec_perm(edges, d, align);
             vec_st(t0, 0, dst+i);
             vec_st(t1, 15, dst+i);
             t0 = t1;
@@ -166,8 +166,8 @@
         d = vec_packs(t0,t1);
         d1 = vec_perm(d1, d0, vec_lvsl(0,dst+i));
         align = vec_lvsr(0, dst+i);
-        d0 = vec_perm(d1, d, align);
-        d1 = vec_perm(d, d1, align);
+        d0 = vec_perm(d, d1, align);
+        d1 = vec_perm(d1, d, align);
         vec_st(d0, 0, dst+i);
         vec_st(d1,15, dst+i);
     }

Modified: trunk/libavcodec/ppc/h264_altivec.c
==============================================================================
--- trunk/libavcodec/ppc/h264_altivec.c	(original)
+++ trunk/libavcodec/ppc/h264_altivec.c	Tue Aug 15 22:36:05 2006
@@ -207,11 +207,11 @@
 
         align = vec_lvsr(0, dst);
 
-        tmp1 = vec_perm(edges, d, align);
-        tmp2 = vec_perm(d, edges, align);
+        tmp1 = vec_perm(d, edges, align);
+        tmp2 = vec_perm(edges, d, align);
 
-        vec_st(tmp2, 15, dst);
         vec_st(tmp1, 0 , dst);
+        vec_st(tmp2, 15, dst);
 
         dst += dst_stride;
     }
@@ -249,11 +249,11 @@
 
         align = vec_lvsr(0, dst);
 
-        tmp1 = vec_perm(edges, d, align);
-        tmp2 = vec_perm(d, edges, align);
+        tmp1 = vec_perm(d, edges, align);
+        tmp2 = vec_perm(edges, d, align);
 
-        vec_st(tmp2, 15, dst);
         vec_st(tmp1, 0 , dst);
+        vec_st(tmp2, 15, dst);
 
         dst += dst_stride;
     }




More information about the ffmpeg-cvslog mailing list