25 #if ARCH_X86_64 && HAVE_MMX && HAVE_YASM
27 int16_t *
block, int16_t *qmat);
29 static void ff_prores_idct_put_10_sse2_wrap(int16_t *dst){
50 #if HAVE_MMXEXT_INLINE
63 #if CONFIG_MPEG4_DECODER
67 #if HAVE_MMXEXT_INLINE
72 #if ARCH_X86_64 && HAVE_YASM
81 0x00, 0x08, 0x04, 0x09, 0x01, 0x0C, 0x05, 0x0D,
82 0x10, 0x18, 0x14, 0x19, 0x11, 0x1C, 0x15, 0x1D,
83 0x20, 0x28, 0x24, 0x29, 0x21, 0x2C, 0x25, 0x2D,
84 0x12, 0x1A, 0x16, 0x1B, 0x13, 0x1E, 0x17, 0x1F,
85 0x02, 0x0A, 0x06, 0x0B, 0x03, 0x0E, 0x07, 0x0F,
86 0x30, 0x38, 0x34, 0x39, 0x31, 0x3C, 0x35, 0x3D,
87 0x22, 0x2A, 0x26, 0x2B, 0x23, 0x2E, 0x27, 0x2F,
88 0x32, 0x3A, 0x36, 0x3B, 0x33, 0x3E, 0x37, 0x3F,
100 for (i = 0; i < 64; i++)
101 dst[idct_simple_mmx_perm[i]] = src[i];
104 for (i = 0; i < 64; i++)
105 dst[(i & 0x38) | idct_sse2_row_perm[i & 7]] = src[i];
#define DECLARE_ALIGNED(n, t, v)
static int permute_x86(int16_t dst[64], const int16_t src[64], enum idct_permutation_type perm_type)
void ff_fdct_mmxext(int16_t *block)
#define AV_CPU_FLAG_MMXEXT
SSE integer functions or AMD MMX ext.
void ff_fdct_sse2(int16_t *block)
void ff_xvid_idct_mmxext(short *block)
static const struct algo idct_tab_arch[]
static short idct_simple_mmx_perm[64]
void ff_xvid_idct_mmx(short *block)
void ff_fdct_mmx(int16_t *block)
void ff_simple_idct_mmx(int16_t *block)
#define AV_CPU_FLAG_MMX
standard MMX
void ff_xvid_idct_sse2(short *block)
void ff_prores_idct_put_10_sse2(uint16_t *dst, int linesize, int16_t *block, const int16_t *qmat)
enum idct_permutation_type perm_type
static const uint8_t idct_sse2_row_perm[8]
#define AV_CPU_FLAG_SSE2
PIV SSE2 functions.
static const struct algo fdct_tab_arch[]
header for Xvid IDCT functions