]> granicus.if.org Git - libvpx/commitdiff
Cleaning up vp9_refining_search_sad() function.
authorDmitry Kovalev <dkovalev@google.com>
Mon, 17 Feb 2014 13:51:58 +0000 (14:51 +0100)
committerDmitry Kovalev <dkovalev@google.com>
Mon, 17 Feb 2014 13:51:58 +0000 (14:51 +0100)
Change-Id: Ife6131d31882177953a22a69d25adc35940429ed

vp9/encoder/vp9_mcomp.c

index 94e49bd4a74b027838fb67345e78d4a82d6e3e59..8b45f8b3e4fb535a6a0029ac786af5e1fb6104da 100644 (file)
@@ -1652,11 +1652,7 @@ int vp9_refining_search_sad_c(const MACROBLOCK *x,
   const uint8_t *const in_what = xd->plane[0].pre[0].buf;
   const uint8_t *best_address = &in_what[ref_mv->row * in_what_stride +
                                              ref_mv->col];
-  unsigned int thissad;
-
   const MV fcenter_mv = {center_mv->row >> 3, center_mv->col >> 3};
-  MV this_mv;
-
   const int *mvjsadcost = x->nmvjointsadcost;
   int *mvsadcost[2] = {x->nmvsadcost[0], x->nmvsadcost[1]};
 
@@ -1668,15 +1664,13 @@ int vp9_refining_search_sad_c(const MACROBLOCK *x,
     int best_site = -1;
 
     for (j = 0; j < 4; j++) {
-      this_mv.row = ref_mv->row + neighbors[j].row;
-      this_mv.col = ref_mv->col + neighbors[j].col;
-
+      const MV this_mv = {ref_mv->row + neighbors[j].row,
+                          ref_mv->col + neighbors[j].col};
       if (is_mv_in(x, &this_mv)) {
         const uint8_t *check_here = &in_what[this_mv.row * in_what_stride +
                                                 this_mv.col];
-        thissad = fn_ptr->sdf(what, what_stride, check_here, in_what_stride,
-                              bestsad);
-
+        unsigned int thissad = fn_ptr->sdf(what, what_stride, check_here,
+                                           in_what_stride, bestsad);
         if (thissad < bestsad) {
           thissad += mvsad_err_cost(&this_mv, &fcenter_mv,
                                     mvjsadcost, mvsadcost, error_per_bit);
@@ -1698,15 +1692,15 @@ int vp9_refining_search_sad_c(const MACROBLOCK *x,
     }
   }
 
-  this_mv.row = ref_mv->row * 8;
-  this_mv.col = ref_mv->col * 8;
-
-  if (bestsad < INT_MAX)
+  if (bestsad < INT_MAX) {
+    unsigned int unused;
+    const MV mv = {ref_mv->row * 8, ref_mv->col * 8};
     return fn_ptr->vf(what, what_stride, best_address, in_what_stride,
-                      (unsigned int *)(&thissad)) +
-        mv_err_cost(&this_mv, center_mv, mvjcost, mvcost, x->errorperbit);
-  else
+                      &unused) +
+        mv_err_cost(&mv, center_mv, mvjcost, mvcost, x->errorperbit);
+  } else {
     return INT_MAX;
+  }
 }
 
 int vp9_refining_search_sadx4(const MACROBLOCK *x,