From 07ab3c642ccf4e90c72741f865bdf28ff632ffbb Mon Sep 17 00:00:00 2001 From: sdeng Date: Thu, 29 Nov 2018 15:20:35 -0800 Subject: [PATCH] Use 16 bit ints in Hadamard highbd col8 first pass Change-Id: I2f04937d8a4e171d42b25ee6c6555ccad29eb192 --- vpx_dsp/avg.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/vpx_dsp/avg.c b/vpx_dsp/avg.c index 7ab98eab2..41a6fd828 100644 --- a/vpx_dsp/avg.c +++ b/vpx_dsp/avg.c @@ -37,7 +37,7 @@ unsigned int vpx_avg_4x4_c(const uint8_t *s, int p) { // coeff: 16 bit static void hadamard_highbd_col8_first_pass(const int16_t *src_diff, ptrdiff_t src_stride, - int32_t *coeff) { + int16_t *coeff) { int16_t b0 = src_diff[0 * src_stride] + src_diff[1 * src_stride]; int16_t b1 = src_diff[0 * src_stride] - src_diff[1 * src_stride]; int16_t b2 = src_diff[2 * src_stride] + src_diff[3 * src_stride]; @@ -68,7 +68,7 @@ static void hadamard_highbd_col8_first_pass(const int16_t *src_diff, // src_diff: 16 bit, dynamic range [-32760, 32760] // coeff: 19 bit -static void hadamard_highbd_col8_second_pass(const int32_t *src_diff, +static void hadamard_highbd_col8_second_pass(const int16_t *src_diff, ptrdiff_t src_stride, int32_t *coeff) { int32_t b0 = src_diff[0 * src_stride] + src_diff[1 * src_stride]; @@ -104,9 +104,9 @@ static void hadamard_highbd_col8_second_pass(const int32_t *src_diff, void vpx_highbd_hadamard_8x8_c(const int16_t *src_diff, ptrdiff_t src_stride, tran_low_t *coeff) { int idx; - int32_t buffer[64]; + int16_t buffer[64]; int32_t buffer2[64]; - int32_t *tmp_buf = &buffer[0]; + int16_t *tmp_buf = &buffer[0]; for (idx = 0; idx < 8; ++idx) { // src_diff: 13 bit // buffer: 16 bit, dynamic range [-32760, 32760] -- 2.40.0