[x264-devel] commit: Fix visual corruption when picture width was not mod 32. ( David Wolstencroft )
git version control
git at videolan.org
Sun Dec 14 11:51:33 CET 2008
x264 | branch: master | David Wolstencroft <wolstencroft at alum.rpi.edu> | Sun Dec 14 10:47:28 2008 +0000| [918ff3c6a33e170655b61af85f8955ec5590fff8] | committer: Guillaume Poirier
Fix visual corruption when picture width was not mod 32.
The previous Altivec implemention of mc_chroma assumed that i_src_stride was always mod 16.
> http://git.videolan.org/gitweb.cgi/x264.git/?a=commit;h=918ff3c6a33e170655b61af85f8955ec5590fff8
---
common/ppc/mc.c | 6 ++----
1 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/common/ppc/mc.c b/common/ppc/mc.c
index c303285..3772ff5 100644
--- a/common/ppc/mc.c
+++ b/common/ppc/mc.c
@@ -272,7 +272,6 @@ static void mc_chroma_altivec_4xh( uint8_t *dst, int i_dst_stride,
LOAD_ZERO;
PREP_LOAD;
PREP_LOAD_SRC( src );
- PREP_LOAD_SRC( srcp );
PREP_STORE4;
vec_u16_t coeff0v, coeff1v, coeff2v, coeff3v;
vec_u8_t src0v_8, src1v_8, src2v_8, src3v_8;
@@ -299,7 +298,7 @@ static void mc_chroma_altivec_4xh( uint8_t *dst, int i_dst_stride,
{
src0v_8 = src2v_8;
src1v_8 = src3v_8;
- VEC_LOAD( srcp, src2v_8, 5, vec_u8_t, srcp );
+ VEC_LOAD_G( srcp, src2v_8, 5, vec_u8_t );
src3v_8 = vec_perm( src2v_8, src2v_8, permv );
dstv_16 = k32v;
@@ -340,7 +339,6 @@ static void mc_chroma_altivec_8xh( uint8_t *dst, int i_dst_stride,
LOAD_ZERO;
PREP_LOAD;
PREP_LOAD_SRC( src );
- PREP_LOAD_SRC( srcp );
PREP_STORE8;
vec_u16_t coeff0v, coeff1v, coeff2v, coeff3v;
vec_u8_t src0v_8, src1v_8, src2v_8, src3v_8;
@@ -367,7 +365,7 @@ static void mc_chroma_altivec_8xh( uint8_t *dst, int i_dst_stride,
{
src0v_8 = src2v_8;
src1v_8 = src3v_8;
- VEC_LOAD( srcp, src2v_8, 9, vec_u8_t, srcp );
+ VEC_LOAD_G( srcp, src2v_8, 9, vec_u8_t );
src3v_8 = vec_perm( src2v_8, src2v_8, permv );
dstv_16 = k32v;
More information about the x264-devel
mailing list