skip MMX code in rgb32to15 if the size of the input is smaller than the
authorIvo van Poorten <ivop@euronet.nl>
Wed, 18 Apr 2007 09:24:49 +0000 (09:24 +0000)
committerIvo van Poorten <ivop@euronet.nl>
Wed, 18 Apr 2007 09:24:49 +0000 (09:24 +0000)
size of the units the MMX code processes

Originally committed as revision 23013 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale

libswscale/rgb2rgb_template.c

index 2053a6edbdd0188dceba59b88a9125be899e97df..4bd82ec2e3aa444b028e9e79aebbb052720ece29 100644 (file)
@@ -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)