#include <emmintrin.h>
#include <xmmintrin.h>
#include "config/av1_rtcd.h"
#include "aom/aom_integer.h"
#include "aom_dsp/x86/quantize_x86.h"
static inline void read_coeff(const tran_low_t *coeff, intptr_t offset,
__m128i *c0, __m128i *c1) { … }
static inline void write_qcoeff(const __m128i *qc0, const __m128i *qc1,
tran_low_t *qcoeff, intptr_t offset) { … }
static inline void write_zero(tran_low_t *qcoeff, intptr_t offset) { … }
static inline void quantize(const int16_t *iscan_ptr,
const tran_low_t *coeff_ptr, intptr_t n_coeffs,
tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr,
const __m128i *round0, const __m128i *round1,
const __m128i *quant0, const __m128i *quant1,
const __m128i *dequant0, const __m128i *dequant1,
const __m128i *thr0, const __m128i *thr1,
__m128i *eob) { … }
void av1_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs,
const int16_t *zbin_ptr, const int16_t *round_ptr,
const int16_t *quant_ptr,
const int16_t *quant_shift_ptr,
tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr,
const int16_t *dequant_ptr, uint16_t *eob_ptr,
const int16_t *scan_ptr, const int16_t *iscan_ptr) { … }
static inline void quantize_lp(const int16_t *iscan_ptr,
const int16_t *coeff_ptr, intptr_t n_coeffs,
int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr,
const __m128i *round0, const __m128i *round1,
const __m128i *quant0, const __m128i *quant1,
const __m128i *dequant0, const __m128i *dequant1,
__m128i *eob) { … }
void av1_quantize_lp_sse2(const int16_t *coeff_ptr, intptr_t n_coeffs,
const int16_t *round_ptr, const int16_t *quant_ptr,
int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr,
const int16_t *dequant_ptr, uint16_t *eob_ptr,
const int16_t *scan, const int16_t *iscan) { … }