29 #if ARCH_X86_32 && HAVE_X86ASM
30 static void xvid_idct_mmx_put(
uint8_t *dest, ptrdiff_t line_size,
short *
block)
36 static void xvid_idct_mmx_add(
uint8_t *dest, ptrdiff_t line_size,
short *
block)
42 static void xvid_idct_mmxext_put(
uint8_t *dest, ptrdiff_t line_size,
short *
block)
48 static void xvid_idct_mmxext_add(
uint8_t *dest, ptrdiff_t line_size,
short *
block)
56 unsigned high_bit_depth)
68 c->idct_put = xvid_idct_mmx_put;
69 c->idct_add = xvid_idct_mmx_add;
75 c->idct_put = xvid_idct_mmxext_put;
76 c->idct_add = xvid_idct_mmxext_add;
Macro definitions for various function/variable attributes.
static atomic_int cpu_flags
int av_get_cpu_flags(void)
Return the flags which specify extensions supported by the CPU.
main external API structure.
int idct_algo
IDCT algorithm, see FF_IDCT_* below.
#define EXTERNAL_MMXEXT(flags)
#define EXTERNAL_MMX(flags)
#define EXTERNAL_SSE2(flags)
void ff_put_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels, ptrdiff_t line_size)
void ff_add_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels, ptrdiff_t line_size)
void ff_xvid_idct_add_sse2(uint8_t *dest, ptrdiff_t line_size, short *block)
void ff_xvid_idct_mmxext(short *block)
void ff_xvid_idct_mmx(short *block)
void ff_xvid_idct_put_sse2(uint8_t *dest, ptrdiff_t line_size, short *block)
void ff_xvid_idct_sse2(short *block)
av_cold void ff_xvid_idct_init_x86(IDCTDSPContext *c, AVCodecContext *avctx, unsigned high_bit_depth)