"psllq $16, %%mm3 \n\t" /* RGBRGB00 3 */\
"por %%mm4, %%mm3 \n\t" /* RGBRGBRG 2.5 */\
\
- "leal (%%eax, %%eax, 2), %%ebx \n\t"\
- MOVNTQ(%%mm0, (%4, %%ebx))\
- MOVNTQ(%%mm2, 8(%4, %%ebx))\
- MOVNTQ(%%mm3, 16(%4, %%ebx))\
+ MOVNTQ(%%mm0, (%%ebx))\
+ MOVNTQ(%%mm2, 8(%%ebx))\
+ MOVNTQ(%%mm3, 16(%%ebx))\
+ "addl $24, %%ebx \n\t"\
\
"addl $8, %%eax \n\t"\
"cmpl %5, %%eax \n\t"\
else if(dstbpp==24)
{
asm volatile(
+ "movl %4, %%ebx \n\t"
YSCALEYUV2RGB
WRITEBGR24
- :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "r" (dest), "m" (dstw),
+ :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "m" (dest), "m" (dstw),
"m" (yalpha1), "m" (uvalpha1)
: "%eax", "%ebx"
);
else if(dstbpp==24)
{
asm volatile(
+ "movl %4, %%ebx \n\t"
YSCALEYUV2RGB1
WRITEBGR24
- :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "r" (dest), "m" (dstw),
+ :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "m" (dest), "m" (dstw),
"m" (yalpha1), "m" (uvalpha1)
: "%eax", "%ebx"
);
else if(dstbpp==24)
{
asm volatile(
+ "movl %4, %%ebx \n\t"
YSCALEYUV2RGB1b
WRITEBGR24
- :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "r" (dest), "m" (dstw),
+ :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "m" (dest), "m" (dstw),
"m" (yalpha1), "m" (uvalpha1)
: "%eax", "%ebx"
);
"psllq $16, %%mm3 \n\t" /* RGBRGB00 3 */\
"por %%mm4, %%mm3 \n\t" /* RGBRGBRG 2.5 */\
\
- "leal (%%eax, %%eax, 2), %%ebx \n\t"\
- MOVNTQ(%%mm0, (%4, %%ebx))\
- MOVNTQ(%%mm2, 8(%4, %%ebx))\
- MOVNTQ(%%mm3, 16(%4, %%ebx))\
+ MOVNTQ(%%mm0, (%%ebx))\
+ MOVNTQ(%%mm2, 8(%%ebx))\
+ MOVNTQ(%%mm3, 16(%%ebx))\
+ "addl $24, %%ebx \n\t"\
\
"addl $8, %%eax \n\t"\
"cmpl %5, %%eax \n\t"\
else if(dstbpp==24)
{
asm volatile(
+ "movl %4, %%ebx \n\t"
YSCALEYUV2RGB
WRITEBGR24
- :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "r" (dest), "m" (dstw),
+ :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "m" (dest), "m" (dstw),
"m" (yalpha1), "m" (uvalpha1)
: "%eax", "%ebx"
);
else if(dstbpp==24)
{
asm volatile(
+ "movl %4, %%ebx \n\t"
YSCALEYUV2RGB1
WRITEBGR24
- :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "r" (dest), "m" (dstw),
+ :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "m" (dest), "m" (dstw),
"m" (yalpha1), "m" (uvalpha1)
: "%eax", "%ebx"
);
else if(dstbpp==24)
{
asm volatile(
+ "movl %4, %%ebx \n\t"
YSCALEYUV2RGB1b
WRITEBGR24
- :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "r" (dest), "m" (dstw),
+ :: "r" (buf0), "r" (buf1), "r" (uvbuf0), "r" (uvbuf1), "m" (dest), "m" (dstw),
"m" (yalpha1), "m" (uvalpha1)
: "%eax", "%ebx"
);