aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIvo van Poorten <ivop@euronet.nl>2007-04-18 09:24:49 +0000
committerIvo van Poorten <ivop@euronet.nl>2007-04-18 09:24:49 +0000
commitb2117ceed06d05fa6277d8cac62fdc2bde3c6be0 (patch)
tree3bca6c63187a77e4ab27de8633d5ed529a442b4e
parent10e26bc782b512e275fe860f2c8330b0b9277410 (diff)
downloadffmpeg-b2117ceed06d05fa6277d8cac62fdc2bde3c6be0.tar.gz
skip MMX code in rgb32to15 if the size of the input is smaller than the
size of the units the MMX code processes Originally committed as revision 23013 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
-rw-r--r--libswscale/rgb2rgb_template.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libswscale/rgb2rgb_template.c b/libswscale/rgb2rgb_template.c
index 2053a6edbd..4bd82ec2e3 100644
--- a/libswscale/rgb2rgb_template.c
+++ b/libswscale/rgb2rgb_template.c
@@ -513,6 +513,7 @@ static inline void RENAME(rgb32to15)(const uint8_t *src, uint8_t *dst, long src_
"movq %3, %%mm5 \n\t"
"movq %4, %%mm6 \n\t"
"movq %5, %%mm7 \n\t"
+ "jmp 2f \n\t"
ASMALIGN(4)
"1: \n\t"
PREFETCH" 32(%1) \n\t"
@@ -536,6 +537,7 @@ static inline void RENAME(rgb32to15)(const uint8_t *src, uint8_t *dst, long src_
MOVNTQ" %%mm0, (%0) \n\t"
"add $16, %1 \n\t"
"add $8, %0 \n\t"
+ "2: \n\t"
"cmp %2, %1 \n\t"
" jb 1b \n\t"
: "+r" (d), "+r"(s)