diff --git a/libswscale/ppc/yuv2rgb_altivec.c b/libswscale/ppc/yuv2rgb_altivec.c
index c1e2852adb..536545293d 100644
|
a
|
b
|
static int altivec_ ## name(SwsContext *c, const unsigned char **in, \
|
| 305 | 305 | vector signed short R1, G1, B1; \ |
| 306 | 306 | vector unsigned char R, G, B; \ |
| 307 | 307 | \ |
| 308 | | const vector unsigned char *y1ivP, *y2ivP, *uivP, *vivP; \ |
| 309 | | vector unsigned char align_perm; \ |
| 310 | | \ |
| 311 | 308 | vector signed short lCY = c->CY; \ |
| 312 | 309 | vector signed short lOY = c->OY; \ |
| 313 | 310 | vector signed short lCRV = c->CRV; \ |
| … |
… |
static int altivec_ ## name(SwsContext *c, const unsigned char **in, \
|
| 338 | 335 | vec_dstst(oute, (0x02000002 | (((w * 3 + 32) / 32) << 16)), 1); \ |
| 339 | 336 | \ |
| 340 | 337 | for (j = 0; j < w / 16; j++) { \ |
| 341 | | y1ivP = (const vector unsigned char *) y1i; \ |
| 342 | | y2ivP = (const vector unsigned char *) y2i; \ |
| 343 | | uivP = (const vector unsigned char *) ui; \ |
| 344 | | vivP = (const vector unsigned char *) vi; \ |
| 345 | | \ |
| 346 | | align_perm = vec_lvsl(0, y1i); \ |
| 347 | | y0 = (vector unsigned char) \ |
| 348 | | vec_perm(y1ivP[0], y1ivP[1], align_perm); \ |
| | 338 | y0 = vec_xl(0, y1i); \ |
| 349 | 339 | \ |
| 350 | | align_perm = vec_lvsl(0, y2i); \ |
| 351 | | y1 = (vector unsigned char) \ |
| 352 | | vec_perm(y2ivP[0], y2ivP[1], align_perm); \ |
| | 340 | y1 = vec_xl(0, y2i); \ |
| 353 | 341 | \ |
| 354 | | align_perm = vec_lvsl(0, ui); \ |
| 355 | | u = (vector signed char) \ |
| 356 | | vec_perm(uivP[0], uivP[1], align_perm); \ |
| | 342 | u = (vector signed char) vec_xl(0, ui); \ |
| 357 | 343 | \ |
| 358 | | align_perm = vec_lvsl(0, vi); \ |
| 359 | | v = (vector signed char) \ |
| 360 | | vec_perm(vivP[0], vivP[1], align_perm); \ |
| | 344 | v = (vector signed char) vec_xl(0, vi); \ |
| 361 | 345 | \ |
| 362 | 346 | u = (vector signed char) \ |
| 363 | 347 | vec_sub(u, \ |