diff --git a/av1/decoder/decodeframe.c b/av1/decoder/decodeframe.c
index 17887c7..0f4b25d 100644
--- a/av1/decoder/decodeframe.c
+++ b/av1/decoder/decodeframe.c
@@ -1458,6 +1458,7 @@
   MB_MODE_INFO *mbmi;
 
   mbmi = set_offsets(cm, xd, bsize, mi_row, mi_col, bw, bh, x_mis, y_mis);
+
 #if CONFIG_DELTA_Q
   if (cm->delta_q_present_flag) {
     int i;
diff --git a/av1/decoder/decodemv.c b/av1/decoder/decodemv.c
index 4f16940..d59bd9e 100644
--- a/av1/decoder/decodemv.c
+++ b/av1/decoder/decodemv.c
@@ -1115,11 +1115,29 @@
   FRAME_CONTEXT *ec_ctx = cm->fc;
 #endif
 
+#if CONFIG_GLOBAL_MOTION
+  if (is_nontrans_global_motion(xd)) {
 #if CONFIG_DUAL_FILTER
-  int dir;
+    mbmi->interp_filter[0] =
+        cm->interp_filter == SWITCHABLE ? EIGHTTAP_REGULAR : cm->interp_filter;
+    mbmi->interp_filter[1] =
+        cm->interp_filter == SWITCHABLE ? EIGHTTAP_REGULAR : cm->interp_filter;
+#else
+    mbmi->interp_filter =
+        cm->interp_filter == SWITCHABLE ? EIGHTTAP_REGULAR : cm->interp_filter;
+#endif  // CONFIG_DUAL_FILTER
+    return;
+  }
+#endif  // CONFIG_GLOBAL_MOTION
+
+#if CONFIG_DUAL_FILTER
   if (cm->interp_filter != SWITCHABLE) {
+    int dir;
+
     for (dir = 0; dir < 4; ++dir) mbmi->interp_filter[dir] = cm->interp_filter;
   } else {
+    int dir;
+
     for (dir = 0; dir < 2; ++dir) {
       const int ctx = av1_get_pred_context_switchable_interp(xd, dir);
       mbmi->interp_filter[dir] = EIGHTTAP_REGULAR;
@@ -1708,7 +1726,7 @@
   }
 #endif
 
-#if !CONFIG_DUAL_FILTER && !CONFIG_WARPED_MOTION
+#if !CONFIG_DUAL_FILTER && !CONFIG_WARPED_MOTION && !CONFIG_GLOBAL_MOTION
   read_mb_interp_filter(cm, xd, mbmi, r);
 #endif  // !CONFIG_DUAL_FILTER && !CONFIG_WARPED_MOTION
 
@@ -1951,7 +1969,7 @@
 #if CONFIG_WARPED_MOTION
   if (mbmi->motion_mode != WARPED_CAUSAL) {
 #endif  // CONFIG_WARPED_MOTION
-#if CONFIG_DUAL_FILTER || CONFIG_WARPED_MOTION
+#if CONFIG_DUAL_FILTER || CONFIG_WARPED_MOTION || CONFIG_GLOBAL_MOTION
     read_mb_interp_filter(cm, xd, mbmi, r);
 #endif  // CONFIG_DUAL_FILTER || CONFIG_WARPED_MOTION
 #if CONFIG_WARPED_MOTION
