10l - MMX rgb2bgr 32bpp expects num_of_bytes instead of num_of_pixels

Originally committed as revision 5962 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
This commit is contained in:
Arpi 2002-05-03 23:16:07 +00:00
parent 9717dad883
commit 4085d977dd

View File

@ -533,7 +533,6 @@ static inline void RENAME(rgb24to15)(const uint8_t *src, uint8_t *dst, unsigned
static inline void RENAME(rgb32tobgr32)(const uint8_t *src, uint8_t *dst, unsigned int src_size) static inline void RENAME(rgb32tobgr32)(const uint8_t *src, uint8_t *dst, unsigned int src_size)
{ {
int num_pixels= src_size >> 2;
#ifdef HAVE_MMX #ifdef HAVE_MMX
asm volatile ( asm volatile (
"xorl %%eax, %%eax \n\t" "xorl %%eax, %%eax \n\t"
@ -554,7 +553,7 @@ static inline void RENAME(rgb32tobgr32)(const uint8_t *src, uint8_t *dst, unsign
"addl $2, %%eax \n\t" "addl $2, %%eax \n\t"
"cmpl %2, %%eax \n\t" "cmpl %2, %%eax \n\t"
" jb 1b \n\t" " jb 1b \n\t"
:: "r" (src), "r"(dst), "r" (num_pixels) :: "r" (src), "r"(dst), "r" (src_size)
: "%eax" : "%eax"
); );
@ -562,6 +561,7 @@ static inline void RENAME(rgb32tobgr32)(const uint8_t *src, uint8_t *dst, unsign
__asm __volatile(EMMS:::"memory"); __asm __volatile(EMMS:::"memory");
#else #else
int i; int i;
int num_pixels= src_size >> 2;
for(i=0; i<num_pixels; i++) for(i=0; i<num_pixels; i++)
{ {
dst[4*i + 0] = src[4*i + 2]; dst[4*i + 0] = src[4*i + 2];