#endif
"movq %%mm6, %%mm0 \n\t" // max
"psubb %%mm7, %%mm6 \n\t" // max - min
- "push %4 \n\t"
- "movd %%mm6, %k4 \n\t"
- "cmpb "MANGLE(deringThreshold)", %b4 \n\t"
- "pop %4 \n\t"
+ "push %%"FF_REG_a" \n\t"
+ "movd %%mm6, %%eax \n\t"
+ "cmpb "MANGLE(deringThreshold)", %%al \n\t"
+ "pop %%"FF_REG_a" \n\t"
" jb 1f \n\t"
PAVGB(%%mm0, %%mm7) // a=(max + min)/2
"punpcklbw %%mm7, %%mm7 \n\t"
"1: \n\t"
: : "r" (src), "r" ((x86_reg)stride), "m" (c->pQPb), "m"(c->pQPb2), "q"(tmp)
NAMED_CONSTRAINTS_ADD(deringThreshold,b00,b02,b08)
- : "%"FF_REG_a, "%"FF_REG_d, "%"FF_REG_sp
+ : "%"FF_REG_a, "%"FF_REG_d
);
#else // HAVE_7REGS && (TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW)
int y;
int64_t dc_mask, eq_mask, both_masks;
int64_t sums[10*8*2];
src+= step*3; // src points to begin of the 8x8 Block
- //{ START_TIMER
+
__asm__ volatile(
"movq %0, %%mm7 \n\t"
"movq %1, %%mm6 \n\t"
: "%"FF_REG_a
);
}
-/*if(step==16){
- STOP_TIMER("step16")
-}else{
- STOP_TIMER("stepX")
-}
- } */
}
#endif //TEMPLATE_PP_MMX