27 #if (CONFIG_PRORES_DECODER || CONFIG_PRORES_LGPL_DECODER) && ARCH_X86_64 && HAVE_X86ASM
29 int16_t *
block, int16_t *qmat);
31 #define PR_WRAP(INSN) \
32 static void ff_prores_idct_put_10_##INSN##_wrap(int16_t *dst){ \
33 LOCAL_ALIGNED(16, int16_t, qmat, [64]); \
34 LOCAL_ALIGNED(16, int16_t, tmp, [64]); \
37 for(i=0; i<64; i++){ \
41 ff_prores_idct_put_10_##INSN (dst, 16, tmp, qmat); \
43 for(i=0; i<64; i++) { \
50 # if HAVE_AVX_EXTERNAL
52 int16_t *
block, int16_t *qmat);
62 #if HAVE_MMXEXT_INLINE
75 #if CONFIG_MPEG4_DECODER && HAVE_X86ASM
80 #if HAVE_SSE2_EXTERNAL
84 #if (CONFIG_PRORES_DECODER || CONFIG_PRORES_LGPL_DECODER) && ARCH_X86_64 && HAVE_X86ASM
86 # if HAVE_AVX_EXTERNAL
92 #if HAVE_SSE2_EXTERNAL
108 0x00, 0x08, 0x04, 0x09, 0x01, 0x0C, 0x05, 0x0D,
109 0x10, 0x18, 0x14, 0x19, 0x11, 0x1C, 0x15, 0x1D,
110 0x20, 0x28, 0x24, 0x29, 0x21, 0x2C, 0x25, 0x2D,
111 0x12, 0x1A, 0x16, 0x1B, 0x13, 0x1E, 0x17, 0x1F,
112 0x02, 0x0A, 0x06, 0x0B, 0x03, 0x0E, 0x07, 0x0F,
113 0x30, 0x38, 0x34, 0x39, 0x31, 0x3C, 0x35, 0x3D,
114 0x22, 0x2A, 0x26, 0x2B, 0x23, 0x2E, 0x27, 0x2F,
115 0x32, 0x3A, 0x36, 0x3B, 0x33, 0x3E, 0x37, 0x3F,
127 for (
i = 0;
i < 64;
i++)
131 for (
i = 0;
i < 64;
i++)
#define AV_CPU_FLAG_SSE2
PIV SSE2 functions.
#define AV_CPU_FLAG_MMXEXT
SSE integer functions or AMD MMX ext.
#define AV_CPU_FLAG_MMX
standard MMX
#define AV_CPU_FLAG_AVX
AVX functions: requires OS support even if YMM registers aren't used.
void ff_prores_idct_put_10_sse2(uint16_t *dst, ptrdiff_t linesize, int16_t *block, const int16_t *qmat)
void ff_prores_idct_put_10_avx(uint16_t *dst, ptrdiff_t linesize, int16_t *block, const int16_t *qmat)
enum idct_permutation_type perm_type
static const uint8_t idct_simple_mmx_perm[64]
static const struct algo fdct_tab_arch[]
static const uint8_t idct_sse2_row_perm[8]
static int permute_x86(int16_t dst[64], const int16_t src[64], enum idct_permutation_type perm_type)
static const struct algo idct_tab_arch[]
void ff_fdct_sse2(int16_t *block)
void ff_fdct_mmxext(int16_t *block)
void ff_fdct_mmx(int16_t *block)
void ff_simple_idct8_avx(int16_t *block)
void ff_simple_idct10_avx(int16_t *block)
void ff_simple_idct12_avx(int16_t *block)
void ff_simple_idct10_sse2(int16_t *block)
void ff_simple_idct_mmx(int16_t *block)
void ff_simple_idct8_sse2(int16_t *block)
void ff_simple_idct12_sse2(int16_t *block)
header for Xvid IDCT functions
void ff_xvid_idct_mmxext(short *block)
void ff_xvid_idct_mmx(short *block)
void ff_xvid_idct_sse2(short *block)