From: Jingning Han Date: Tue, 17 Jul 2018 03:44:16 +0000 (-0700) Subject: Fix 32-bit build for tpl model X-Git-Tag: v1.8.0~524^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=81cd335bb85164db0e4021bf4cf9198fd79d0990;p=libvpx Fix 32-bit build for tpl model Clear system state to avoid encoding failure in 32-bit build. BUG=webm:1547 Change-Id: Ia74c789d1993da09bc400baf24e971e19752e3c3 --- diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index e23a81b96..d90391b5b 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -3633,8 +3633,6 @@ int get_rdmult_delta(VP9_COMP *cpi, BLOCK_SIZE bsize, int mi_row, int mi_col, if (cpi->common.show_frame) return orig_rdmult; - r0 = cpi->rd.r0; - for (row = mi_row; row < mi_row + mi_high; ++row) { for (col = mi_col; col < mi_col + mi_wide; ++col) { TplDepStats *this_stats = &tpl_stats[row * tpl_stride + col]; @@ -3648,6 +3646,9 @@ int get_rdmult_delta(VP9_COMP *cpi, BLOCK_SIZE bsize, int mi_row, int mi_col, } } + vpx_clear_system_state(); + + r0 = cpi->rd.r0; rk = (double)intra_cost / mc_dep_cost; beta = r0 / rk; dr = vp9_get_adaptive_rdmult(cpi, beta); @@ -3656,6 +3657,7 @@ int get_rdmult_delta(VP9_COMP *cpi, BLOCK_SIZE bsize, int mi_row, int mi_col, dr = VPXMAX(dr, orig_rdmult * 1 / 2); dr = VPXMAX(1, dr); + return dr; } @@ -5459,6 +5461,8 @@ static void encode_frame_internal(VP9_COMP *cpi) { } } + vpx_clear_system_state(); + if (tpl_frame->is_valid) cpi->rd.r0 = (double)intra_cost_base / mc_dep_cost_base; }