From ed3460658f77009cce1494e219e9f8e9657fe3f6 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sun, 11 Nov 2001 00:50:40 +0000 Subject: [PATCH] yuy2toyv12 bugfix Originally committed as revision 2807 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc --- postproc/rgb2rgb.c | 5 ++++- postproc/rgb2rgb_template.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/postproc/rgb2rgb.c b/postproc/rgb2rgb.c index 2157de908f..ab2878f9bd 100644 --- a/postproc/rgb2rgb.c +++ b/postproc/rgb2rgb.c @@ -758,6 +758,9 @@ void yuy2toyv12(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, : "memory", "%eax" ); + ydst += lumStride; + src += srcStride; + asm volatile( "xorl %%eax, %%eax \n\t" ".balign 16 \n\t" @@ -781,7 +784,7 @@ void yuy2toyv12(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, "cmpl %4, %%eax \n\t" " jb 1b \n\t" - ::"r"(src+srcStride), "r"(ydst+lumStride), "r"(udst), "r"(vdst), "r" (chromWidth) + ::"r"(src), "r"(ydst), "r"(udst), "r"(vdst), "r" (chromWidth) : "memory", "%eax" ); #else diff --git a/postproc/rgb2rgb_template.c b/postproc/rgb2rgb_template.c index 2157de908f..ab2878f9bd 100644 --- a/postproc/rgb2rgb_template.c +++ b/postproc/rgb2rgb_template.c @@ -758,6 +758,9 @@ void yuy2toyv12(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, : "memory", "%eax" ); + ydst += lumStride; + src += srcStride; + asm volatile( "xorl %%eax, %%eax \n\t" ".balign 16 \n\t" @@ -781,7 +784,7 @@ void yuy2toyv12(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, "cmpl %4, %%eax \n\t" " jb 1b \n\t" - ::"r"(src+srcStride), "r"(ydst+lumStride), "r"(udst), "r"(vdst), "r" (chromWidth) + ::"r"(src), "r"(ydst), "r"(udst), "r"(vdst), "r" (chromWidth) : "memory", "%eax" ); #else