Reduce redundant operations in uniform compound modes
Change-Id: I2ea998081be0d062c0c740e60ab05fa0d6203400
diff --git a/av1/encoder/compound_type.c b/av1/encoder/compound_type.c
index b6e268a..bc32281 100644
--- a/av1/encoder/compound_type.c
+++ b/av1/encoder/compound_type.c
@@ -1322,16 +1322,15 @@
// Case COMPOUND_AVERAGE and COMPOUND_DISTWTD
if (cur_type < COMPOUND_WEDGE) {
- // Reuse data if matching record is found
- InterPredParams inter_pred_params;
- av1_dist_wtd_comp_weight_assign(
- &cpi->common, mbmi, 0, &inter_pred_params.conv_params.fwd_offset,
- &inter_pred_params.conv_params.bck_offset,
- &inter_pred_params.conv_params.use_dist_wtd_comp_avg, 1);
- int mask_value = inter_pred_params.conv_params.fwd_offset * 4;
- memset(xd->seg_mask, mask_value, sizeof(xd->seg_mask));
tmp_rate_mv = *rate_mv;
if (have_newmv_in_inter_mode(this_mode)) {
+ InterPredParams inter_pred_params;
+ av1_dist_wtd_comp_weight_assign(
+ &cpi->common, mbmi, 0, &inter_pred_params.conv_params.fwd_offset,
+ &inter_pred_params.conv_params.bck_offset,
+ &inter_pred_params.conv_params.use_dist_wtd_comp_avg, 1);
+ int mask_value = inter_pred_params.conv_params.fwd_offset * 4;
+ memset(xd->seg_mask, mask_value, sizeof(xd->seg_mask));
tmp_rate_mv = av1_interinter_compound_motion_search(cpi, x, cur_mv,
bsize, this_mode);
}