Turn off global motion for sub8x8 blocks

Lowres: 0.03% improvement, 1% improvement on waterfall_cif.y4m
Midres: 0.085% overall improvement, 1.253% improvement on station2_480p25.y4m
Change-Id: I3872934d978bb4ca828c6b9acd2fdb951d9da299
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index 6054735..a4c50ce 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -5045,9 +5045,8 @@
         this_mv[ref].as_int =
             gm_get_motion_vector(
                 &cpi->common.global_motion[mbmi->ref_frame[ref]],
-                cpi->common.allow_high_precision_mv,
-                block_center_x(mi_col, mbmi->sb_type),
-                block_center_y(mi_row, mbmi->sb_type))
+                cpi->common.allow_high_precision_mv, mbmi->sb_type, mi_col,
+                mi_row)
                 .as_int;
         thismvcost += GLOBAL_MOTION_RATE(cpi, mbmi->ref_frame[ref]);
 #else
@@ -5105,14 +5104,12 @@
       this_mv[0].as_int =
           gm_get_motion_vector(&cpi->common.global_motion[mbmi->ref_frame[0]],
                                cpi->common.allow_high_precision_mv,
-                               block_center_x(mi_col, mbmi->sb_type),
-                               block_center_y(mi_row, mbmi->sb_type))
+                               mbmi->sb_type, mi_col, mi_row)
               .as_int;
       this_mv[1].as_int =
           gm_get_motion_vector(&cpi->common.global_motion[mbmi->ref_frame[1]],
                                cpi->common.allow_high_precision_mv,
-                               block_center_x(mi_col, mbmi->sb_type),
-                               block_center_y(mi_row, mbmi->sb_type))
+                               mbmi->sb_type, mi_col, mi_row)
               .as_int;
       thismvcost += GLOBAL_MOTION_RATE(cpi, mbmi->ref_frame[0]) +
                     GLOBAL_MOTION_RATE(cpi, mbmi->ref_frame[1]);
@@ -5382,9 +5379,8 @@
         )
       zeromv[cur_frm].as_int =
           gm_get_motion_vector(&cpi->common.global_motion[ref_frames[cur_frm]],
-                               cpi->common.allow_high_precision_mv,
-                               block_center_x(mi_col, bsize),
-                               block_center_y(mi_row, bsize))
+                               cpi->common.allow_high_precision_mv, bsize,
+                               mi_col, mi_row)
               .as_int;
     else
 #endif  // CONFIG_GLOBAL_MOTION
@@ -5845,9 +5841,8 @@
 #if CONFIG_GLOBAL_MOTION
         frame_mv[ZEROMV][frame].as_int =
             gm_get_motion_vector(&cm->global_motion[frame],
-                                 cm->allow_high_precision_mv,
-                                 block_center_x(mi_col, mbmi->sb_type),
-                                 block_center_y(mi_row, mbmi->sb_type))
+                                 cm->allow_high_precision_mv, mbmi->sb_type,
+                                 mi_col, mi_row)
                 .as_int;
 #else   // CONFIG_GLOBAL_MOTION
         frame_mv[ZEROMV][frame].as_int = 0;
@@ -5879,9 +5874,8 @@
 #if CONFIG_GLOBAL_MOTION
           frame_mv[ZERO_ZEROMV][frame].as_int =
               gm_get_motion_vector(&cm->global_motion[frame],
-                                   cm->allow_high_precision_mv,
-                                   block_center_x(mi_col, mbmi->sb_type),
-                                   block_center_y(mi_row, mbmi->sb_type))
+                                   cm->allow_high_precision_mv, mbmi->sb_type,
+                                   mi_col, mi_row)
                   .as_int;
 #else
           frame_mv[ZERO_ZEROMV][frame].as_int = 0;
@@ -9607,9 +9601,8 @@
     frame_mv[NEWMV][ref_frame].as_int = INVALID_MV;
 #if CONFIG_GLOBAL_MOTION
     frame_mv[ZEROMV][ref_frame].as_int =
-        gm_get_motion_vector(
-            &cm->global_motion[ref_frame], cm->allow_high_precision_mv,
-            block_center_x(mi_col, bsize), block_center_y(mi_row, bsize))
+        gm_get_motion_vector(&cm->global_motion[ref_frame],
+                             cm->allow_high_precision_mv, bsize, mi_col, mi_row)
             .as_int;
 #else   // CONFIG_GLOBAL_MOTION
     frame_mv[ZEROMV][ref_frame].as_int = 0;
@@ -9619,9 +9612,8 @@
     frame_mv[NEW_NEWMV][ref_frame].as_int = INVALID_MV;
 #if CONFIG_GLOBAL_MOTION
     frame_mv[ZERO_ZEROMV][ref_frame].as_int =
-        gm_get_motion_vector(
-            &cm->global_motion[ref_frame], cm->allow_high_precision_mv,
-            block_center_x(mi_col, bsize), block_center_y(mi_row, bsize))
+        gm_get_motion_vector(&cm->global_motion[ref_frame],
+                             cm->allow_high_precision_mv, bsize, mi_col, mi_row)
             .as_int;
 #else   // CONFIG_GLOBAL_MOTION
     frame_mv[ZERO_ZEROMV][ref_frame].as_int = 0;
@@ -9728,9 +9720,8 @@
       mode_skip_mask[ALTREF_FRAME] = ~INTER_NEAREST_NEAR_ZERO;
 #if CONFIG_GLOBAL_MOTION
       zeromv.as_int = gm_get_motion_vector(&cm->global_motion[ALTREF_FRAME],
-                                           cm->allow_high_precision_mv,
-                                           block_center_x(mi_col, bsize),
-                                           block_center_y(mi_row, bsize))
+                                           cm->allow_high_precision_mv, bsize,
+                                           mi_col, mi_row)
                           .as_int;
 #else
       zeromv.as_int = 0;
@@ -10924,16 +10915,14 @@
     const uint8_t rf_type = av1_ref_frame_type(best_mbmode.ref_frame);
 #endif  // CONFIG_REF_MV
 #if CONFIG_GLOBAL_MOTION
-    zeromv[0].as_int = gm_get_motion_vector(&cm->global_motion[refs[0]],
-                                            cm->allow_high_precision_mv,
-                                            block_center_x(mi_col, bsize),
-                                            block_center_y(mi_row, bsize))
-                           .as_int;
+    zeromv[0].as_int =
+        gm_get_motion_vector(&cm->global_motion[refs[0]],
+                             cm->allow_high_precision_mv, bsize, mi_col, mi_row)
+            .as_int;
     zeromv[1].as_int = comp_pred_mode
                            ? gm_get_motion_vector(&cm->global_motion[refs[1]],
                                                   cm->allow_high_precision_mv,
-                                                  block_center_x(mi_col, bsize),
-                                                  block_center_y(mi_row, bsize))
+                                                  bsize, mi_col, mi_row)
                                  .as_int
                            : 0;
 #else
@@ -11045,17 +11034,14 @@
 #if CONFIG_GLOBAL_MOTION
       zeromv[0].as_int = gm_get_motion_vector(&cm->global_motion[refs[0]],
                                               cm->allow_high_precision_mv,
-                                              block_center_x(mi_col, bsize),
-                                              block_center_y(mi_row, bsize))
+                                              bsize, mi_col, mi_row)
                              .as_int;
-      zeromv[1].as_int =
-          comp_pred_mode
-              ? gm_get_motion_vector(&cm->global_motion[refs[1]],
-                                     cm->allow_high_precision_mv,
-                                     block_center_x(mi_col, bsize),
-                                     block_center_y(mi_row, bsize))
-                    .as_int
-              : 0;
+      zeromv[1].as_int = comp_pred_mode
+                             ? gm_get_motion_vector(&cm->global_motion[refs[1]],
+                                                    cm->allow_high_precision_mv,
+                                                    bsize, mi_col, mi_row)
+                                   .as_int
+                             : 0;
 #else
       zeromv[0].as_int = 0;
       zeromv[1].as_int = 0;
@@ -11099,13 +11085,11 @@
                                            best_mbmode.ref_frame[1] };
       zeromv[0].as_int = gm_get_motion_vector(&cm->global_motion[refs[0]],
                                               cm->allow_high_precision_mv,
-                                              block_center_x(mi_col, bsize),
-                                              block_center_y(mi_row, bsize))
+                                              bsize, mi_col, mi_row)
                              .as_int;
       zeromv[1].as_int = gm_get_motion_vector(&cm->global_motion[refs[1]],
                                               cm->allow_high_precision_mv,
-                                              block_center_x(mi_col, bsize),
-                                              block_center_y(mi_row, bsize))
+                                              bsize, mi_col, mi_row)
                              .as_int;
       lower_mv_precision(&zeromv[0].as_mv, cm->allow_high_precision_mv);
       lower_mv_precision(&zeromv[1].as_mv, cm->allow_high_precision_mv);
@@ -11266,9 +11250,8 @@
   mbmi->ref_frame[1] = NONE_FRAME;
 #if CONFIG_GLOBAL_MOTION
   mbmi->mv[0].as_int =
-      gm_get_motion_vector(
-          &cm->global_motion[mbmi->ref_frame[0]], cm->allow_high_precision_mv,
-          block_center_x(mi_col, bsize), block_center_y(mi_row, bsize))
+      gm_get_motion_vector(&cm->global_motion[mbmi->ref_frame[0]],
+                           cm->allow_high_precision_mv, bsize, mi_col, mi_row)
           .as_int;
 #else   // CONFIG_GLOBAL_MOTION
   mbmi->mv[0].as_int = 0;