#include <immintrin.h>
#include "./vpx_dsp_rtcd.h"
#include "vpx/vpx_integer.h"
#include "vpx_dsp/x86/bitdepth_conversion_avx2.h"
#include "vpx_ports/mem.h"
#if CONFIG_VP9_HIGHBITDEPTH
static void highbd_hadamard_col8_avx2(__m256i *in, int iter) { … }
void vpx_highbd_hadamard_8x8_avx2(const int16_t *src_diff, ptrdiff_t src_stride,
tran_low_t *coeff) { … }
void vpx_highbd_hadamard_16x16_avx2(const int16_t *src_diff,
ptrdiff_t src_stride, tran_low_t *coeff) { … }
void vpx_highbd_hadamard_32x32_avx2(const int16_t *src_diff,
ptrdiff_t src_stride, tran_low_t *coeff) { … }
#endif
static INLINE void sign_extend_16bit_to_32bit_avx2(__m256i in, __m256i zero,
__m256i *out_lo,
__m256i *out_hi) { … }
static void hadamard_col8x2_avx2(__m256i *in, int iter) { … }
static void hadamard_8x8x2_avx2(const int16_t *src_diff, ptrdiff_t src_stride,
int16_t *coeff) { … }
static INLINE void hadamard_16x16_avx2(const int16_t *src_diff,
ptrdiff_t src_stride, tran_low_t *coeff,
int is_final) { … }
void vpx_hadamard_16x16_avx2(const int16_t *src_diff, ptrdiff_t src_stride,
tran_low_t *coeff) { … }
void vpx_hadamard_32x32_avx2(const int16_t *src_diff, ptrdiff_t src_stride,
tran_low_t *coeff) { … }
int vpx_satd_avx2(const tran_low_t *coeff, int length) { … }
#if CONFIG_VP9_HIGHBITDEPTH
int vpx_highbd_satd_avx2(const tran_low_t *coeff, int length) { … }
#endif