Allow backward prob update in external mode info coding flow

This commit enables vpxenc to properly count the coded motion
vector related information for backward update. This allows the
coding flow using external mode info to use backward probability
update. In the short test clip, over 10% bit-rate saving is
observed at no distortion change.

Change-Id: Ie27e97114ab91c3d95ba7b5554d617d226db5e20
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index 435aad1..600ebe8 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -644,6 +644,15 @@
         mbmi->mode = ZEROMV;
     }
   }
+
+  if (is_inter_block(mbmi)) {
+    vp9_update_mv_count(cm, xd);
+
+    if (cm->interp_filter == SWITCHABLE) {
+      const int ctx = vp9_get_pred_context_switchable_interp(xd);
+      ++cm->counts.switchable_interp[ctx][mbmi->interp_filter];
+    }
+  }
 }
 #endif
 
@@ -762,6 +771,7 @@
   }
 #endif
   if (!frame_is_intra_only(cm)) {
+#if !CONFIG_TRANSCODE
     if (is_inter_block(mbmi)) {
       vp9_update_mv_count(cm, xd);
 
@@ -770,6 +780,7 @@
         ++cm->counts.switchable_interp[ctx][mbmi->interp_filter];
       }
     }
+#endif
 
     rd_opt->comp_pred_diff[SINGLE_REFERENCE] += ctx->single_pred_diff;
     rd_opt->comp_pred_diff[COMPOUND_REFERENCE] += ctx->comp_pred_diff;