Caused problems under some gcc 4.x versions with predictive lossless
"jg 1b \n"
"movq %%mm4, %0 \n"
:"=m"(output), "+r"(i_mvc)
- :"r"(mvc)
+ :"r"(mvc), "m"(*(struct {int16_t x[4];} *)mvc)
);
sum += output[0] + output[1] + output[2] + output[3];
return sum;
"psadbw %%mm7, %%mm1 \n"
"movd %%mm1, %0 \n"
:"=r"(count)
- :"r"(v)
+ :"r"(v), "m"(*(struct {int16_t x[16];} *)v)
);
return (count+0x10)&0xff;
}
"packsswb %%mm0, %%mm0 \n"
"movd %%mm0, %0 \n"
:"=r"(nonzero)
- :"r"(v)
+ :"r"(v), "m"(*(struct {int16_t x[64];} *)v)
);
return !!nonzero;
}