|
|
@ -1819,13 +1819,13 @@ static inline void RENAME(planar2x)(const uint8_t *src, uint8_t *dst, long srcWi |
|
|
|
"movq -1(%1, %%"REG_a"), %%mm5 \n\t" |
|
|
|
"movq -1(%1, %%"REG_a"), %%mm5 \n\t" |
|
|
|
" js 1b \n\t" |
|
|
|
" js 1b \n\t" |
|
|
|
:: "r" (src + mmxSize ), "r" (src + srcStride + mmxSize ), |
|
|
|
:: "r" (src + mmxSize ), "r" (src + srcStride + mmxSize ), |
|
|
|
"r" (dst + mmxSize*2), "r" (dst + dstStride + mmxSize*2), |
|
|
|
"r" (dst + mmxSize*2), "r" (dst + dstStride + mmxSize*2), |
|
|
|
"g" (-mmxSize) |
|
|
|
"g" (-mmxSize) |
|
|
|
: "%"REG_a |
|
|
|
: "%"REG_a |
|
|
|
|
|
|
|
|
|
|
|
); |
|
|
|
); |
|
|
|
#else |
|
|
|
#else |
|
|
|
const x86_reg mmxSize=1; |
|
|
|
const x86_reg mmxSize=1; |
|
|
|
|
|
|
|
|
|
|
|
dst[0 ]= (3*src[0] + src[srcStride])>>2; |
|
|
|
dst[0 ]= (3*src[0] + src[srcStride])>>2; |
|
|
|
dst[dstStride]= ( src[0] + 3*src[srcStride])>>2; |
|
|
|
dst[dstStride]= ( src[0] + 3*src[srcStride])>>2; |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -2354,8 +2354,8 @@ static void RENAME(interleaveBytes)(const uint8_t *src1, const uint8_t *src2, ui |
|
|
|
} |
|
|
|
} |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
dest += dstStride; |
|
|
|
dest += dstStride; |
|
|
|
src1 += src1Stride; |
|
|
|
src1 += src1Stride; |
|
|
|
src2 += src2Stride; |
|
|
|
src2 += src2Stride; |
|
|
|
} |
|
|
|
} |
|
|
|
#if HAVE_MMX |
|
|
|
#if HAVE_MMX |
|
|
|
__asm__( |
|
|
|
__asm__( |
|
|
|