comparison dsputil.h @ 4988:689490842cf5 libavcodec

factor sum_abs_dctelem out of dct_sad, and simd it. sum_abs_dctelem_* alone: core2: c=186 mmx2=39 sse2=21 ssse3=13 (cycles) k8: c=163 mmx2=33 sse2=31 p4: c=370 mmx2=60 sse2=60 dct_sad including sum_abs_dctelem_*: core2: c=405 mmx2=258 sse2=240 ssse3=232 k8: c=624 mmx2=394 sse2=392 p4: c=849 mmx2=556 sse2=556
author lorenm
date Sat, 12 May 2007 02:41:25 +0000
parents f99e40a7155b
children 0c4bf6b7d1c6
comparison
equal deleted inserted replaced
4987:02199b094850 4988:689490842cf5
161 void (*put_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size); 161 void (*put_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
162 void (*put_signed_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size); 162 void (*put_signed_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
163 void (*add_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size); 163 void (*add_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
164 void (*add_pixels8)(uint8_t *pixels, DCTELEM *block, int line_size); 164 void (*add_pixels8)(uint8_t *pixels, DCTELEM *block, int line_size);
165 void (*add_pixels4)(uint8_t *pixels, DCTELEM *block, int line_size); 165 void (*add_pixels4)(uint8_t *pixels, DCTELEM *block, int line_size);
166 int (*sum_abs_dctelem)(DCTELEM *block/*align 16*/);
166 /** 167 /**
167 * translational global motion compensation. 168 * translational global motion compensation.
168 */ 169 */
169 void (*gmc1)(uint8_t *dst/*align 8*/, uint8_t *src/*align 1*/, int srcStride, int h, int x16, int y16, int rounder); 170 void (*gmc1)(uint8_t *dst/*align 8*/, uint8_t *src/*align 1*/, int srcStride, int h, int x16, int y16, int rounder);
170 /** 171 /**