diff --git a/av1/encoder/arm/pickrst_sve.c b/av1/encoder/arm/pickrst_sve.c
index e865dad..5d7370b 100644
--- a/av1/encoder/arm/pickrst_sve.c
+++ b/av1/encoder/arm/pickrst_sve.c
@@ -11,6 +11,7 @@
 
 #include <arm_neon.h>
 #include <arm_sve.h>
+#include <assert.h>
 #include <string.h>
 
 #include "config/aom_config.h"
@@ -159,6 +160,7 @@
   int64_t H_tmp[49 * 49];
   memset(H_tmp, 0, sizeof(H_tmp));
 
+  assert(height > 0);
   do {
     // Cross-correlation (M).
     for (int row = 0; row < wiener_win; row++) {
@@ -292,6 +294,7 @@
   int64_t H_tmp[25 * 25];
   memset(H_tmp, 0, sizeof(H_tmp));
 
+  assert(height > 0);
   do {
     // Cross-correlation (M).
     for (int row = 0; row < wiener_win; row++) {
@@ -435,12 +438,14 @@
   // the last line of src will be scaled according to how many rows remain.
   const int downsample_remainder = height % downsample_factor;
 
-  if (wiener_win == WIENER_WIN) {
-    compute_stats_win7_sve(dgd_avg, dgd_avg_stride, src_avg, src_avg_stride,
-                           width, downsample_height, M, H, downsample_factor);
-  } else {
-    compute_stats_win5_sve(dgd_avg, dgd_avg_stride, src_avg, src_avg_stride,
-                           width, downsample_height, M, H, downsample_factor);
+  if (downsample_height > 0) {
+    if (wiener_win == WIENER_WIN) {
+      compute_stats_win7_sve(dgd_avg, dgd_avg_stride, src_avg, src_avg_stride,
+                             width, downsample_height, M, H, downsample_factor);
+    } else {
+      compute_stats_win5_sve(dgd_avg, dgd_avg_stride, src_avg, src_avg_stride,
+                             width, downsample_height, M, H, downsample_factor);
+    }
   }
 
   if (downsample_remainder > 0) {
