Simplify motion compensated predictor logic

No need of special handle on sub8x8 block sizes.

Change-Id: I8487cd68eda0882fe50550af3998dc941ec13b21
diff --git a/av1/common/reconinter.c b/av1/common/reconinter.c
index bfb223f..b9df96b 100644
--- a/av1/common/reconinter.c
+++ b/av1/common/reconinter.c
@@ -579,6 +579,10 @@
   (void)is_global;
 #endif  // CONFIG_GLOBAL_MOTION
 
+#if CONFIG_CB4X4
+  (void)block;
+#endif
+
 // TODO(sarahparker) enable the use of DUAL_FILTER in warped motion functions
 // in order to allow GLOBAL_MOTION and DUAL_FILTER to work together
 #if CONFIG_SUB8X8_MC
@@ -671,6 +675,9 @@
     struct buf_2d *const pre_buf = &pd->pre[ref];
     struct buf_2d *const dst_buf = &pd->dst;
     uint8_t *const dst = dst_buf->buf + dst_buf->stride * y + x;
+#if CONFIG_CB4X4
+    const MV mv = mi->mbmi.mv[ref].as_mv;
+#else
     const MV mv = mi->mbmi.sb_type < BLOCK_8X8
 #if CONFIG_MOTION_VAR
                       ? (build_for_obmc ? mi->bmi[block].as_mv[ref].as_mv
@@ -679,6 +686,7 @@
                       ? average_split_mvs(pd, mi, ref, block)
 #endif  // CONFIG_MOTION_VAR
                       : mi->mbmi.mv[ref].as_mv;
+#endif
 
     // TODO(jkoleszar): This clamping is done in the incorrect place for the
     // scaling case. It needs to be done on the scaled MV, not the pre-scaling
@@ -784,12 +792,17 @@
   int plane;
   const int mi_x = mi_col * MI_SIZE;
   const int mi_y = mi_row * MI_SIZE;
+#if CONFIG_CB4X4
+  const int unify_bsize = 1;
+#else
+  const int unify_bsize = 0;
+#endif
   for (plane = plane_from; plane <= plane_to; ++plane) {
     const struct macroblockd_plane *pd = &xd->plane[plane];
     const int bw = block_size_wide[bsize] >> pd->subsampling_x;
     const int bh = block_size_high[bsize] >> pd->subsampling_y;
 
-    if (xd->mi[0]->mbmi.sb_type < BLOCK_8X8) {
+    if (xd->mi[0]->mbmi.sb_type < BLOCK_8X8 && !unify_bsize) {
       const PARTITION_TYPE bp = bsize - xd->mi[0]->mbmi.sb_type;
       const int have_vsplit = bp != PARTITION_HORZ;
       const int have_hsplit = bp != PARTITION_VERT;
diff --git a/av1/common/reconinter.h b/av1/common/reconinter.h
index db0b697..da6a4d6 100644
--- a/av1/common/reconinter.h
+++ b/av1/common/reconinter.h
@@ -428,8 +428,13 @@
   const BLOCK_SIZE bsize = mbmi->sb_type;
   int plane;
   int ref = (dir >> 1);
+#if CONFIG_CB4X4
+  const int unify_bsize = 1;
+#else
+  const int unify_bsize = 0;
+#endif
 
-  if (bsize >= BLOCK_8X8) {
+  if (bsize >= BLOCK_8X8 || unify_bsize) {
     if (dir & 0x01) {
       if (mbmi->mv[ref].as_mv.col & SUBPEL_MASK) return 1;
     } else {