Commit 697f461c7b for aom

commit 697f461c7b6f775a2b6dd9bf2006bad78506e260
Author: Wan-Teh Chang <wtc@google.com>
Date:   Mon Aug 10 18:32:43 2026 -0700

    Set temp to comp_pred in aom_upsampled_pred_c/neon

    This CL extends the SSE2 changes in commit c0f1cef
    (https://aomedia-review.googlesource.com/c/aom/+/207021) to C and Neon.

    Use the heap allocated buffer `comp_pred` as a temporary buffer in
    aom_upsampled_pred_c/neon() and aom_highbd_upsampled_pred_c/neon().

    Change-Id: I14c8e10a4f346ca77b54952f6833c965830d13e1

diff --git a/av1/encoder/arm/reconinter_enc_neon.c b/av1/encoder/arm/reconinter_enc_neon.c
index 7e0295cdfb..e95d74f350 100644
--- a/av1/encoder/arm/reconinter_enc_neon.c
+++ b/av1/encoder/arm/reconinter_enc_neon.c
@@ -75,8 +75,7 @@ void aom_upsampled_pred_neon(MACROBLOCKD *xd, const AV1_COMMON *const cm,
     aom_convolve8_vert(ref, ref_stride, comp_pred, width, NULL, -1, filter_y,
                        16, width, height);
   } else {
-    DECLARE_ALIGNED(16, uint8_t,
-                    im_block[((MAX_SB_SIZE * 2 + 16) + 16) * MAX_SB_SIZE]);
+    uint8_t *im_block = comp_pred;

     const int16_t *const filter_x =
         av1_get_interp_filter_subpel_kernel(filter_params, subpel_x_q3 << 1);
@@ -171,8 +170,7 @@ void aom_highbd_upsampled_pred_neon(MACROBLOCKD *xd,
     aom_highbd_convolve8_vert_neon(ref8, ref_stride, comp_pred8, width, NULL,
                                    -1, kernel, 16, width, height, bd);
   } else {
-    DECLARE_ALIGNED(16, uint16_t,
-                    temp[((MAX_SB_SIZE + 16) + 16) * MAX_SB_SIZE]);
+    uint16_t *temp = CONVERT_TO_SHORTPTR(comp_pred8);
     const int16_t *const kernel_x =
         av1_get_interp_filter_subpel_kernel(filter, subpel_x_q3 << 1);
     const int16_t *const kernel_y =
diff --git a/av1/encoder/reconinter_enc.c b/av1/encoder/reconinter_enc.c
index 24b20bb765..a395a2f078 100644
--- a/av1/encoder/reconinter_enc.c
+++ b/av1/encoder/reconinter_enc.c
@@ -488,8 +488,7 @@ void aom_upsampled_pred_c(MACROBLOCKD *xd, const AV1_COMMON *const cm,
     aom_convolve8_vert_c(ref, ref_stride, comp_pred, width, NULL, -1, kernel,
                          16, width, height);
   } else {
-    DECLARE_ALIGNED(16, uint8_t,
-                    temp[((MAX_SB_SIZE * 2 + 16) + 16) * MAX_SB_SIZE]);
+    uint8_t *temp = comp_pred;
     const int16_t *const kernel_x =
         av1_get_interp_filter_subpel_kernel(filter, subpel_x_q3 << 1);
     const int16_t *const kernel_y =
@@ -574,8 +573,7 @@ void aom_highbd_upsampled_pred_c(MACROBLOCKD *xd,
     aom_highbd_convolve8_vert_c(ref8, ref_stride, comp_pred8, width, NULL, -1,
                                 kernel, 16, width, height, bd);
   } else {
-    DECLARE_ALIGNED(16, uint16_t,
-                    temp[((MAX_SB_SIZE + 16) + 16) * MAX_SB_SIZE]);
+    uint16_t *temp = CONVERT_TO_SHORTPTR(comp_pred8);
     const int16_t *const kernel_x =
         av1_get_interp_filter_subpel_kernel(filter, subpel_x_q3 << 1);
     const int16_t *const kernel_y =