summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorChi Yo Tsai <chiyotsai@google.com>2019-01-29 20:21:41 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2019-01-29 20:21:41 +0000
commit8dc6fff605c73702054d6672093fac626c0dded3 (patch)
tree10309c112732a919ad442a129ceffc38b7394e47 /vp9
parentf79cf2c81e4e2c1359d200baa7ca8e81ae3cf438 (diff)
parentfa540837aa23ae8cdd926961ddbef71998a2a525 (diff)
downloadlibvpx-8dc6fff605c73702054d6672093fac626c0dded3.tar
libvpx-8dc6fff605c73702054d6672093fac626c0dded3.tar.gz
libvpx-8dc6fff605c73702054d6672093fac626c0dded3.tar.bz2
libvpx-8dc6fff605c73702054d6672093fac626c0dded3.zip
Merge "Fix mismatch between SIMD/C version of vp9_apply_temporal_filter"
Diffstat (limited to 'vp9')
-rw-r--r--vp9/encoder/vp9_temporal_filter.c3
-rw-r--r--vp9/encoder/x86/temporal_filter_sse4.c4
2 files changed, 4 insertions, 3 deletions
diff --git a/vp9/encoder/vp9_temporal_filter.c b/vp9/encoder/vp9_temporal_filter.c
index e0321a1af..c9060ad58 100644
--- a/vp9/encoder/vp9_temporal_filter.c
+++ b/vp9/encoder/vp9_temporal_filter.c
@@ -192,7 +192,8 @@ static INLINE int mod_index(int sum_dist, int index, int rounding, int strength,
assert(index >= 0 && index <= 13);
assert(index_mult[index] != 0);
- mod = (clamp(sum_dist, 0, UINT16_MAX) * index_mult[index]) >> 16;
+ mod =
+ ((unsigned int)clamp(sum_dist, 0, UINT16_MAX) * index_mult[index]) >> 16;
mod += rounding;
mod >>= strength;
diff --git a/vp9/encoder/x86/temporal_filter_sse4.c b/vp9/encoder/x86/temporal_filter_sse4.c
index 18c4f02d5..b560e2218 100644
--- a/vp9/encoder/x86/temporal_filter_sse4.c
+++ b/vp9/encoder/x86/temporal_filter_sse4.c
@@ -967,8 +967,8 @@ static void vp9_apply_temporal_filter_chroma_8(
v_sum_row_2 = v_sum_row_3;
// Add chroma values
- u_sum_row = _mm_adds_epu8(u_sum_row_1, u_sum_row_2);
- v_sum_row = _mm_adds_epu8(v_sum_row_1, v_sum_row_2);
+ u_sum_row = _mm_adds_epu16(u_sum_row_1, u_sum_row_2);
+ v_sum_row = _mm_adds_epu16(v_sum_row_1, v_sum_row_2);
// Add luma values
add_luma_dist_to_8_chroma_mod(y_dist, ss_x, ss_y, &u_sum_row, &v_sum_row);