]> granicus.if.org Git - libvpx/commitdiff
valgrind - txfm_thresh not set
authorJim Bankoski <jimbankoski@google.com>
Wed, 29 May 2013 20:56:08 +0000 (13:56 -0700)
committerJim Bankoski <jimbankoski@google.com>
Wed, 29 May 2013 20:56:08 +0000 (13:56 -0700)
For 4x4 blocks valgrind points out the cache was uninitalized.
This resolves the issue by setting it.

Change-Id: I22733000da048643762813a84fbda66d8e4040d2

vp9/encoder/vp9_rdopt.c

index cc1c480daa72fb822903e4a8408e07fa1cf50924..c11ebb4c35cb7277fab6d84d6d8bd4577bcc0520 100644 (file)
@@ -2397,16 +2397,14 @@ void vp9_rd_pick_intra_mode_sb(VP9_COMP *cpi, MACROBLOCK *x,
     *returnrate = rate4x4_y + rate_uv +
         vp9_cost_bit(vp9_get_pred_prob(cm, xd, PRED_MBSKIP), 0);
     *returndist = dist4x4_y + (dist_uv >> 2);
-    for (i = 0; i < NB_TXFM_MODES; i++) {
-      ctx->txfm_rd_diff[i] = MIN(err4x4, err - txfm_cache[i]);
-    }
+    vpx_memset(ctx->txfm_rd_diff, 0, sizeof(ctx->txfm_rd_diff));
     xd->mode_info_context->mbmi.txfm_size = TX_4X4;
   } else {
     *returnrate = rate_y + rate_uv +
         vp9_cost_bit(vp9_get_pred_prob(cm, xd, PRED_MBSKIP), 0);
     *returndist = dist_y + (dist_uv >> 2);
     for (i = 0; i < NB_TXFM_MODES; i++) {
-      ctx->txfm_rd_diff[i] = MIN(err4x4, err - txfm_cache[i]);
+      ctx->txfm_rd_diff[i] = txfm_cache[i] - txfm_cache[cm->txfm_mode];
     }
     xd->mode_info_context->mbmi.txfm_size = txfm_size;
     xd->mode_info_context->mbmi.mode = mode;