mirror of https://git.ffmpeg.org/ffmpeg.git
Make the source buffer operands parametrized in the YSCALEYUV2RGB_YA macro
Originally committed as revision 28943 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
This commit is contained in:
parent
5cf59463a2
commit
786dcfef48
|
@ -458,11 +458,11 @@
|
|||
"pmulhw "VG_COEFF"("#c"), %%mm4 \n\t"\
|
||||
/* mm2=(U-128)8, mm3=ug, mm4=vg mm5=(V-128)8 */\
|
||||
|
||||
#define REAL_YSCALEYUV2RGB_YA(index, c) \
|
||||
"movq (%0, "#index", 2), %%mm0 \n\t" /*buf0[eax]*/\
|
||||
"movq (%1, "#index", 2), %%mm1 \n\t" /*buf1[eax]*/\
|
||||
"movq 8(%0, "#index", 2), %%mm6 \n\t" /*buf0[eax]*/\
|
||||
"movq 8(%1, "#index", 2), %%mm7 \n\t" /*buf1[eax]*/\
|
||||
#define REAL_YSCALEYUV2RGB_YA(index, c, b1, b2) \
|
||||
"movq ("#b1", "#index", 2), %%mm0 \n\t" /*buf0[eax]*/\
|
||||
"movq ("#b2", "#index", 2), %%mm1 \n\t" /*buf1[eax]*/\
|
||||
"movq 8("#b1", "#index", 2), %%mm6 \n\t" /*buf0[eax]*/\
|
||||
"movq 8("#b2", "#index", 2), %%mm7 \n\t" /*buf1[eax]*/\
|
||||
"psubw %%mm1, %%mm0 \n\t" /* buf0[eax] - buf1[eax]*/\
|
||||
"psubw %%mm7, %%mm6 \n\t" /* buf0[eax] - buf1[eax]*/\
|
||||
"pmulhw "LUM_MMX_FILTER_OFFSET"+8("#c"), %%mm0 \n\t" /* (buf0[eax] - buf1[eax])yalpha1>>16*/\
|
||||
|
@ -501,11 +501,11 @@
|
|||
"packuswb %%mm6, %%mm5 \n\t"\
|
||||
"packuswb %%mm3, %%mm4 \n\t"\
|
||||
|
||||
#define YSCALEYUV2RGB_YA(index, c) REAL_YSCALEYUV2RGB_YA(index, c)
|
||||
#define YSCALEYUV2RGB_YA(index, c, b1, b2) REAL_YSCALEYUV2RGB_YA(index, c, b1, b2)
|
||||
|
||||
#define YSCALEYUV2RGB(index, c) \
|
||||
REAL_YSCALEYUV2RGB_UV(index, c) \
|
||||
REAL_YSCALEYUV2RGB_YA(index, c) \
|
||||
REAL_YSCALEYUV2RGB_YA(index, c, %0, %1) \
|
||||
REAL_YSCALEYUV2RGB_COEFF(c)
|
||||
|
||||
#define REAL_YSCALEYUV2PACKED1(index, c) \
|
||||
|
|
Loading…
Reference in New Issue