diff --git a/libswscale/x86/scale.asm b/libswscale/x86/scale.asm
index 64699ea1758f7c3f0d7333385042d4c6265e4059..3bdf71b542ad6b3b60aa9ee531a6321968db88ab 100644
--- a/libswscale/x86/scale.asm
+++ b/libswscale/x86/scale.asm
@@ -718,6 +718,8 @@ yuv2planeX_fn avx,  10,  7, 5
 
 %macro yuv2plane1_fn 3
 cglobal yuv2plane1_%1, %3, %3, %2
+    add             r2, mmsize - 1
+    and             r2, ~(mmsize - 1)
 %if %1 == 8
     add             r1, r2
 %else ; %1 != 8