]> granicus.if.org Git - libx264/commitdiff
fix 10l in 75b495f2723fcb77f
authorManuel Rommel <maaanuuu@gmx.net>
Tue, 10 Feb 2009 20:06:47 +0000 (12:06 -0800)
committerGuillaume Poirier <gpoirier@mplayerhq.hu>
Tue, 10 Feb 2009 20:06:47 +0000 (12:06 -0800)
Original thread:
date: Mon, Feb 9, 2009 at 9:37 PM
subject: [x264-devel] commit: Spare a vec_perm and a vec_mergeh though using a LUT of permutation vectors . (Guillaume Poirier )

common/ppc/pixel.c

index bd52f5ece920f4cc2f932350f9a42cc77631eb4d..fc8b417d470f0818d0d344d58fcb41e44223d901 100644 (file)
@@ -1675,10 +1675,10 @@ static int x264_pixel_var_8x8_altivec( uint8_t *pix, int i_stride )
     static const vec_u8_t perm_tab[] = {
         CV(0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,  /* pix=mod16, i_stride=mod16 */
            0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17),
-        CV(0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,  /* pix=mod16, i_stride=mod8  */
+        CV(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,  /* pix=mod8, i_stride=mod16  */
            0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F),
     };
-    vec_u8_t perm = perm_tab[ ((i_stride & 8) >> 3) ];
+    vec_u8_t perm = perm_tab[ ((uintptr_t)pix & 8) >> 3 ];
 
     int y;
     for( y = 0; y < 8; y+=2 )