|
|
@ -92,7 +92,7 @@ yuv2yuvX_altivec_real(const int16_t *lumFilter, int16_t **lumSrc, int lumFilterS |
|
|
|
const vector signed int vini = {(1 << 18), (1 << 18), (1 << 18), (1 << 18)}; |
|
|
|
const vector signed int vini = {(1 << 18), (1 << 18), (1 << 18), (1 << 18)}; |
|
|
|
register int i, j; |
|
|
|
register int i, j; |
|
|
|
{ |
|
|
|
{ |
|
|
|
int __attribute__ ((aligned (16))) val[dstW]; |
|
|
|
DECLARE_ALIGNED(16, int, val[dstW]); |
|
|
|
|
|
|
|
|
|
|
|
for (i = 0; i < (dstW -7); i+=4) { |
|
|
|
for (i = 0; i < (dstW -7); i+=4) { |
|
|
|
vec_st(vini, i << 2, val); |
|
|
|
vec_st(vini, i << 2, val); |
|
|
@ -140,8 +140,8 @@ yuv2yuvX_altivec_real(const int16_t *lumFilter, int16_t **lumSrc, int lumFilterS |
|
|
|
altivec_packIntArrayToCharArray(val, dest, dstW); |
|
|
|
altivec_packIntArrayToCharArray(val, dest, dstW); |
|
|
|
} |
|
|
|
} |
|
|
|
if (uDest != 0) { |
|
|
|
if (uDest != 0) { |
|
|
|
int __attribute__ ((aligned (16))) u[chrDstW]; |
|
|
|
DECLARE_ALIGNED(16, int, u[chrDstW]); |
|
|
|
int __attribute__ ((aligned (16))) v[chrDstW]; |
|
|
|
DECLARE_ALIGNED(16, int, v[chrDstW]); |
|
|
|
|
|
|
|
|
|
|
|
for (i = 0; i < (chrDstW -7); i+=4) { |
|
|
|
for (i = 0; i < (chrDstW -7); i+=4) { |
|
|
|
vec_st(vini, i << 2, u); |
|
|
|
vec_st(vini, i << 2, u); |
|
|
@ -214,7 +214,7 @@ static inline void hScale_altivec_real(int16_t *dst, int dstW, |
|
|
|
const int16_t *filterPos, int filterSize) |
|
|
|
const int16_t *filterPos, int filterSize) |
|
|
|
{ |
|
|
|
{ |
|
|
|
register int i; |
|
|
|
register int i; |
|
|
|
int __attribute__ ((aligned (16))) tempo[4]; |
|
|
|
DECLARE_ALIGNED(16, int, tempo[4]); |
|
|
|
|
|
|
|
|
|
|
|
if (filterSize % 4) { |
|
|
|
if (filterSize % 4) { |
|
|
|
for (i=0; i<dstW; i++) { |
|
|
|
for (i=0; i<dstW; i++) { |
|
|
|