Originally committed as revision 6002 to svn://svn.ffmpeg.org/ffmpeg/trunk
Unified · Split
| @@ -138,8 +138,8 @@ static void vector_fmul_add_add_altivec(float *dst, const float *src0, · 137 unmodified lines | |||
| 138 | s2 = vec_ld(0, src2+i); | 138 | s2 = vec_ld(0, src2+i); |
| 139 | edges = vec_perm(t1 ,t0, mask); | 139 | edges = vec_perm(t1 ,t0, mask); |
| 140 | d = vec_madd(s0,s1,s2); | 140 | d = vec_madd(s0,s1,s2); |
| 141 | t0 = vec_perm(edges, d, align); | 141 | t0 = vec_perm(d, edges, align); |
| 142 | t1 = vec_perm(d, edges, align); | 142 | t1 = vec_perm(edges, d, align); |
| 143 | vec_st(t0, 0, dst+i); | 143 | vec_st(t0, 0, dst+i); |
| 144 | vec_st(t1, 15, dst+i); | 144 | vec_st(t1, 15, dst+i); |
| 145 | t0 = t1; | 145 | t0 = t1; |
| @@ -166,8 +166,8 @@ void float_to_int16_altivec(int16_t *dst, const float *src, int len) · 20 unmodified lines | |||
| 166 | d = vec_packs(t0,t1); | 166 | d = vec_packs(t0,t1); |
| 167 | d1 = vec_perm(d1, d0, vec_lvsl(0,dst+i)); | 167 | d1 = vec_perm(d1, d0, vec_lvsl(0,dst+i)); |
| 168 | align = vec_lvsr(0, dst+i); | 168 | align = vec_lvsr(0, dst+i); |
| 169 | d0 = vec_perm(d1, d, align); | 169 | d0 = vec_perm(d, d1, align); |
| 170 | d1 = vec_perm(d, d1, align); | 170 | d1 = vec_perm(d1, d, align); |
| 171 | vec_st(d0, 0, dst+i); | 171 | vec_st(d0, 0, dst+i); |
| 172 | vec_st(d1,15, dst+i); | 172 | vec_st(d1,15, dst+i); |
| 173 | } | 173 | } |
| @@ -207,11 +207,11 @@ static inline void put_pixels16_l2_altivec( uint8_t * dst, const uint8_t * src1, · 206 unmodified lines | |||
| 207 | 207 | ||
| 208 | align = vec_lvsr(0, dst); | 208 | align = vec_lvsr(0, dst); |
| 209 | 209 | ||
| 210 | tmp1 = vec_perm(edges, d, align); | 210 | tmp1 = vec_perm(d, edges, align); |
| 211 | tmp2 = vec_perm(d, edges, align); | 211 | tmp2 = vec_perm(edges, d, align); |
| 212 | 212 | ||
| 213 | vec_st(tmp2, 15, dst); | ||
| 214 | vec_st(tmp1, 0 , dst); | 213 | vec_st(tmp1, 0 , dst); |
| 214 | vec_st(tmp2, 15, dst); | ||
| 215 | 215 | ||
| 216 | dst += dst_stride; | 216 | dst += dst_stride; |
| 217 | } | 217 | } |
| @@ -249,11 +249,11 @@ static inline void avg_pixels16_l2_altivec( uint8_t * dst, const uint8_t * src1, · 31 unmodified lines | |||
| 249 | 249 | ||
| 250 | align = vec_lvsr(0, dst); | 250 | align = vec_lvsr(0, dst); |
| 251 | 251 | ||
| 252 | tmp1 = vec_perm(edges, d, align); | 252 | tmp1 = vec_perm(d, edges, align); |
| 253 | tmp2 = vec_perm(d, edges, align); | 253 | tmp2 = vec_perm(edges, d, align); |
| 254 | 254 | ||
| 255 | vec_st(tmp2, 15, dst); | ||
| 256 | vec_st(tmp1, 0 , dst); | 255 | vec_st(tmp1, 0 , dst); |
| 256 | vec_st(tmp2, 15, dst); | ||
| 257 | 257 | ||
| 258 | dst += dst_stride; | 258 | dst += dst_stride; |
| 259 | } | 259 | } |