optflow_refine_sse4.c: Fix signed integer overflow
diff --git a/av1/common/x86/optflow_refine_sse4.c b/av1/common/x86/optflow_refine_sse4.c
index 0d315d9..514387b 100644
--- a/av1/common/x86/optflow_refine_sse4.c
+++ b/av1/common/x86/optflow_refine_sse4.c
@@ -1137,17 +1137,17 @@
                                      int *vx1, int *vy1) {
   int64_t su2, suv, sv2, suw, svw;
   if (block_num == 0) {
-    su2 = _mm_extract_epi32(u2, 0) + _mm_extract_epi32(u2, 1);
-    sv2 = _mm_extract_epi32(v2, 0) + _mm_extract_epi32(v2, 1);
-    suv = _mm_extract_epi32(uv, 0) + _mm_extract_epi32(uv, 1);
-    suw = _mm_extract_epi32(uw, 0) + _mm_extract_epi32(uw, 1);
-    svw = _mm_extract_epi32(vw, 0) + _mm_extract_epi32(vw, 1);
+    su2 = (int64_t)_mm_extract_epi32(u2, 0) + _mm_extract_epi32(u2, 1);
+    sv2 = (int64_t)_mm_extract_epi32(v2, 0) + _mm_extract_epi32(v2, 1);
+    suv = (int64_t)_mm_extract_epi32(uv, 0) + _mm_extract_epi32(uv, 1);
+    suw = (int64_t)_mm_extract_epi32(uw, 0) + _mm_extract_epi32(uw, 1);
+    svw = (int64_t)_mm_extract_epi32(vw, 0) + _mm_extract_epi32(vw, 1);
   } else {
-    su2 = _mm_extract_epi32(u2, 2) + _mm_extract_epi32(u2, 3);
-    sv2 = _mm_extract_epi32(v2, 2) + _mm_extract_epi32(v2, 3);
-    suv = _mm_extract_epi32(uv, 2) + _mm_extract_epi32(uv, 3);
-    suw = _mm_extract_epi32(uw, 2) + _mm_extract_epi32(uw, 3);
-    svw = _mm_extract_epi32(vw, 2) + _mm_extract_epi32(vw, 3);
+    su2 = (int64_t)_mm_extract_epi32(u2, 2) + _mm_extract_epi32(u2, 3);
+    sv2 = (int64_t)_mm_extract_epi32(v2, 2) + _mm_extract_epi32(v2, 3);
+    suv = (int64_t)_mm_extract_epi32(uv, 2) + _mm_extract_epi32(uv, 3);
+    suw = (int64_t)_mm_extract_epi32(uw, 2) + _mm_extract_epi32(uw, 3);
+    svw = (int64_t)_mm_extract_epi32(vw, 2) + _mm_extract_epi32(vw, 3);
   }
 
   calc_mv_process(su2, sv2, suv, suw, svw, d0, d1, bits, rls_alpha, vx0, vy0,