"movd %%mm5, %1			\n\t" "movd %%mm3, %2			\n\t"
"movd %%mm5, (%0,%2)		\n\t" "movd %%mm3, (%0,%2,2)		\n\t"
static void h263_h_loop_filter_mmx(uint8_t *src, int stride, int qscale){    const int strength= ff_h263_loop_filter_strength[qscale];    uint64_t temp[4] __attribute__ ((aligned(8)));    uint8_t *btemp= (uint8_t*)temp;        src -= 2;    transpose4x4(btemp  , src           , 8, stride);    transpose4x4(btemp+4, src + 4*stride, 8, stride);    asm volatile(        H263_LOOP_FILTER // 5 3 4 6                : "+m" (temp[0]),          "+m" (temp[1]),          "+m" (temp[2]),          "+m" (temp[3])        : "g" (2*strength), "m"(ff_pb_FC)    );    asm volatile(        "movq %%mm5, %%mm1		\n\t"        "movq %%mm4, %%mm0		\n\t"        "punpcklbw %%mm3, %%mm5		\n\t"        "punpcklbw %%mm6, %%mm4		\n\t"        "punpckhbw %%mm3, %%mm1		\n\t"        "punpckhbw %%mm6, %%mm0		\n\t"        "movq %%mm5, %%mm3		\n\t"        "movq %%mm1, %%mm6		\n\t"        "punpcklwd %%mm4, %%mm5		\n\t"        "punpcklwd %%mm0, %%mm1		\n\t"        "punpckhwd %%mm4, %%mm3		\n\t"        "punpckhwd %%mm0, %%mm6		\n\t"        "movd %%mm5, %0			\n\t"        "punpckhdq %%mm5, %%mm5		\n\t"        "movd %%mm5, %1			\n\t"        "movd %%mm3, %2			\n\t"        "punpckhdq %%mm3, %%mm3		\n\t"        "movd %%mm3, %3			\n\t"        "movd %%mm1, %4			\n\t"        "punpckhdq %%mm1, %%mm1		\n\t"        "movd %%mm1, %5			\n\t"        "movd %%mm6, %6			\n\t"        "punpckhdq %%mm6, %%mm6		\n\t"        "movd %%mm6, %7			\n\t"        : "=m" (*(uint32_t*)(src + 0*stride)),          "=m" (*(uint32_t*)(src + 1*stride)),          "=m" (*(uint32_t*)(src + 2*stride)),          "=m" (*(uint32_t*)(src + 3*stride)),          "=m" (*(uint32_t*)(src + 4*stride)),          "=m" (*(uint32_t*)(src + 5*stride)),          "=m" (*(uint32_t*)(src + 6*stride)),          "=m" (*(uint32_t*)(src + 7*stride))    );}