int qmul, qadd, nCoeffs;
long qmul, qadd, nCoeffs;
static void dct_unquantize_h263_inter_mmx(MpegEncContext *s,                                  DCTELEM *block, int n, int qscale){    int qmul, qadd, nCoeffs;    qmul = qscale << 1;    qadd = (qscale - 1) | 1;    assert(s->block_last_index[n]>=0 || s->h263_aic);            nCoeffs= s->inter_scantable.raster_end[ s->block_last_index[n] ];//printf("%d %d  ", qmul, qadd);asm volatile(		"movd %1, %%mm6			\n\t" //qmul		"packssdw %%mm6, %%mm6		\n\t"		"packssdw %%mm6, %%mm6		\n\t"		"movd %2, %%mm5			\n\t" //qadd		"pxor %%mm7, %%mm7		\n\t"		"packssdw %%mm5, %%mm5		\n\t"		"packssdw %%mm5, %%mm5		\n\t"		"psubw %%mm5, %%mm7		\n\t"		"pxor %%mm4, %%mm4		\n\t"		".balign 16\n\t"		"1:				\n\t"		"movq (%0, %3), %%mm0		\n\t"		"movq 8(%0, %3), %%mm1		\n\t"		"pmullw %%mm6, %%mm0		\n\t"		"pmullw %%mm6, %%mm1		\n\t"		"movq (%0, %3), %%mm2		\n\t"		"movq 8(%0, %3), %%mm3		\n\t"		"pcmpgtw %%mm4, %%mm2		\n\t" // block[i] < 0 ? -1 : 0		"pcmpgtw %%mm4, %%mm3		\n\t" // block[i] < 0 ? -1 : 0		"pxor %%mm2, %%mm0		\n\t"		"pxor %%mm3, %%mm1		\n\t"		"paddw %%mm7, %%mm0		\n\t"		"paddw %%mm7, %%mm1		\n\t"		"pxor %%mm0, %%mm2		\n\t"		"pxor %%mm1, %%mm3		\n\t"		"pcmpeqw %%mm7, %%mm0		\n\t" // block[i] == 0 ? -1 : 0		"pcmpeqw %%mm7, %%mm1		\n\t" // block[i] == 0 ? -1 : 0		"pandn %%mm2, %%mm0		\n\t"		"pandn %%mm3, %%mm1		\n\t"		"movq %%mm0, (%0, %3)		\n\t"		"movq %%mm1, 8(%0, %3)		\n\t"		"addl $16, %3			\n\t"		"jng 1b				\n\t"		::"r" (block+nCoeffs), "g"(qmul), "g" (qadd), "r" (2*(-nCoeffs))		: "memory"	);}