Ticket #1566: dsputil_mmx.c.patch
| File dsputil_mmx.c.patch, 1.4 KB (added by , 14 years ago) |
|---|
-
dsputil_mmx.c
old new 246 246 pix = pixels; 247 247 /* unrolled loop */ 248 248 __asm__ volatile ( 249 "movq %3, %%mm0 \n\t"250 "movq 8 %3, %%mm1 \n\t"251 "movq 16 %3, %%mm2 \n\t"252 "movq 24 %3, %%mm3 \n\t"253 "movq 32 %3, %%mm4 \n\t"254 "movq 40 %3, %%mm5 \n\t"255 "movq 48 %3, %%mm6 \n\t"256 "movq 56 %3, %%mm7 \n\t"249 "movq (%3), %%mm0 \n\t" 250 "movq 8(%3), %%mm1 \n\t" 251 "movq 16(%3), %%mm2 \n\t" 252 "movq 24(%3), %%mm3 \n\t" 253 "movq 32(%3), %%mm4 \n\t" 254 "movq 40(%3), %%mm5 \n\t" 255 "movq 48(%3), %%mm6 \n\t" 256 "movq 56(%3), %%mm7 \n\t" 257 257 "packuswb %%mm1, %%mm0 \n\t" 258 258 "packuswb %%mm3, %%mm2 \n\t" 259 259 "packuswb %%mm5, %%mm4 \n\t" … … 263 263 "movq %%mm4, (%0, %1, 2) \n\t" 264 264 "movq %%mm6, (%0, %2) \n\t" 265 265 :: "r"(pix), "r"((x86_reg)line_size), "r"((x86_reg)line_size * 3), 266 " m"(*p)266 "r"(p) 267 267 : "memory"); 268 268 pix += line_size * 4; 269 269 p += 32;
