Remove unused av1_convolve_scale and highbd version

Change-Id: I46911318d15e6d1a4fa70f4656404651c0f913f8
diff --git a/av1/common/convolve.c b/av1/common/convolve.c
index 2851f59..a51d5628 100644
--- a/av1/common/convolve.c
+++ b/av1/common/convolve.c
@@ -105,37 +105,6 @@
   }
 }
 
-void av1_convolve_horiz_scale(const uint8_t *src, int src_stride, uint8_t *dst,
-                              int dst_stride, int w, int h,
-                              const InterpFilterParams filter_params,
-                              const int subpel_x_qn, int x_step_qn,
-                              ConvolveParams *conv_params) {
-  int filter_size = filter_params.taps;
-  src -= filter_size / 2 - 1;
-  for (int y = 0; y < h; ++y) {
-    int x_qn = subpel_x_qn;
-    for (int x = 0; x < w; ++x) {
-      const uint8_t *const src_x = &src[x_qn >> SCALE_SUBPEL_BITS];
-      const int x_filter_idx = (x_qn & SCALE_SUBPEL_MASK) >> SCALE_EXTRA_BITS;
-      assert(x_filter_idx < SUBPEL_SHIFTS);
-      const int16_t *x_filter =
-          av1_get_interp_filter_subpel_kernel(filter_params, x_filter_idx);
-      int sum = 0;
-      for (int k = 0; k < filter_size; ++k) sum += src_x[k] * x_filter[k];
-
-      sum = clip_pixel(ROUND_POWER_OF_TWO(sum, FILTER_BITS));
-      if (conv_params->do_average)
-        dst[x] = ROUND_POWER_OF_TWO(dst[x] + sum, 1);
-      else
-        dst[x] = sum;
-
-      x_qn += x_step_qn;
-    }
-    src += src_stride;
-    dst += dst_stride;
-  }
-}
-
 void av1_convolve_vert_c(const uint8_t *src, int src_stride, uint8_t *dst,
                          int dst_stride, int w, int h,
                          const InterpFilterParams filter_params,
@@ -166,39 +135,6 @@
   }
 }
 
-static void convolve_vert_scale(const uint8_t *src, int src_stride,
-                                uint8_t *dst, int dst_stride, int w, int h,
-                                const InterpFilterParams filter_params,
-                                const int subpel_y_qn, int y_step_qn,
-                                ConvolveParams *conv_params) {
-  int filter_size = filter_params.taps;
-  src -= src_stride * (filter_size / 2 - 1);
-  for (int x = 0; x < w; ++x) {
-    int y_qn = subpel_y_qn;
-    for (int y = 0; y < h; ++y) {
-      const uint8_t *const src_y =
-          &src[(y_qn >> SCALE_SUBPEL_BITS) * src_stride];
-      const int y_filter_idx = (y_qn & SCALE_SUBPEL_MASK) >> SCALE_EXTRA_BITS;
-      assert(y_filter_idx < SUBPEL_SHIFTS);
-      const int16_t *y_filter =
-          av1_get_interp_filter_subpel_kernel(filter_params, y_filter_idx);
-      int sum = 0;
-      for (int k = 0; k < filter_size; ++k)
-        sum += src_y[k * src_stride] * y_filter[k];
-
-      sum = clip_pixel(ROUND_POWER_OF_TWO(sum, FILTER_BITS));
-      if (conv_params->do_average)
-        dst[y * dst_stride] = ROUND_POWER_OF_TWO(dst[y * dst_stride] + sum, 1);
-      else
-        dst[y * dst_stride] = sum;
-
-      y_qn += y_step_qn;
-    }
-    ++src;
-    ++dst;
-  }
-}
-
 static void convolve_copy(const uint8_t *src, int src_stride, uint8_t *dst,
                           int dst_stride, int w, int h,
                           ConvolveParams *conv_params) {
@@ -259,27 +195,6 @@
   }
 }
 
-void av1_convolve_horiz_facade_scale(const uint8_t *src, int src_stride,
-                                     uint8_t *dst, int dst_stride, int w, int h,
-                                     const InterpFilterParams filter_params,
-                                     const int subpel_x_qn, int x_step_qn,
-                                     ConvolveParams *conv_params) {
-  if (filter_params.taps == SUBPEL_TAPS) {
-    const int16_t *filter_x = av1_get_interp_filter_subpel_kernel(
-        filter_params, subpel_x_qn >> SCALE_EXTRA_BITS);
-    if (conv_params->do_average == 0)
-      aom_convolve8_horiz_scale(src, src_stride, dst, dst_stride, filter_x,
-                                subpel_x_qn, x_step_qn, NULL, 0, -1, w, h);
-    else
-      aom_convolve8_avg_horiz_scale(src, src_stride, dst, dst_stride, filter_x,
-                                    subpel_x_qn, x_step_qn, NULL, 0, -1, w, h);
-  } else {
-    av1_convolve_horiz_scale(src, src_stride, dst, dst_stride, w, h,
-                             filter_params, subpel_x_qn, x_step_qn,
-                             conv_params);
-  }
-}
-
 static void convolve_vert_facade(const uint8_t *src, int src_stride,
                                  uint8_t *dst, int dst_stride, int w, int h,
                                  const InterpFilterParams filter_params,
@@ -322,27 +237,6 @@
   }
 }
 
-void av1_convolve_vert_facade_scale(const uint8_t *src, int src_stride,
-                                    uint8_t *dst, int dst_stride, int w, int h,
-                                    const InterpFilterParams filter_params,
-                                    const int subpel_y_qn, int y_step_qn,
-                                    ConvolveParams *conv_params) {
-  if (filter_params.taps == SUBPEL_TAPS) {
-    const int16_t *filter_y = av1_get_interp_filter_subpel_kernel(
-        filter_params, subpel_y_qn >> SCALE_EXTRA_BITS);
-    if (conv_params->do_average == 0) {
-      aom_convolve8_vert_scale(src, src_stride, dst, dst_stride, NULL, 0, -1,
-                               filter_y, subpel_y_qn, y_step_qn, w, h);
-    } else {
-      aom_convolve8_avg_vert_scale(src, src_stride, dst, dst_stride, NULL, 0,
-                                   -1, filter_y, subpel_y_qn, y_step_qn, w, h);
-    }
-  } else {
-    convolve_vert_scale(src, src_stride, dst, dst_stride, w, h, filter_params,
-                        subpel_y_qn, y_step_qn, conv_params);
-  }
-}
-
 void av1_convolve_rounding_c(const int32_t *src, int src_stride, uint8_t *dst,
                              int dst_stride, int w, int h, int bits) {
   for (int r = 0; r < h; ++r) {
@@ -1718,75 +1612,6 @@
   }
 }
 
-static void convolve_scale_helper(const uint8_t *src, int src_stride,
-                                  uint8_t *dst, int dst_stride, int w, int h,
-                                  const InterpFilters interp_filters,
-                                  const int subpel_x_qn, int x_step_qn,
-                                  const int subpel_y_qn, int y_step_qn,
-                                  ConvolveParams *conv_params,
-                                  ConvolveFunc convolve_horiz,
-                                  ConvolveFunc convolve_vert) {
-  int ignore_horiz = x_step_qn == SCALE_SUBPEL_SHIFTS && subpel_x_qn == 0;
-  int ignore_vert = y_step_qn == SCALE_SUBPEL_SHIFTS && subpel_y_qn == 0;
-
-  InterpFilterParams filter_params_x, filter_params_y;
-
-#if CONFIG_SHORT_FILTER
-  av1_get_convolve_filter_params(interp_filters, &filter_params_x,
-                                 &filter_params_y, w, h);
-#else
-  av1_get_convolve_filter_params(interp_filters, &filter_params_x,
-                                 &filter_params_y);
-#endif
-
-  assert(w <= MAX_BLOCK_WIDTH);
-  assert(h <= MAX_BLOCK_HEIGHT);
-  assert(y_step_qn <= (MAX_STEP << SCALE_EXTRA_BITS));
-  assert(x_step_qn <= (MAX_STEP << SCALE_EXTRA_BITS));
-
-  if (ignore_horiz && ignore_vert) {
-    convolve_copy(src, src_stride, dst, dst_stride, w, h, conv_params);
-  } else if (ignore_vert) {
-    assert(filter_params_x.taps <= MAX_FILTER_TAP);
-    convolve_horiz(src, src_stride, dst, dst_stride, w, h, filter_params_x,
-                   subpel_x_qn, x_step_qn, conv_params);
-  } else if (ignore_horiz) {
-    assert(filter_params_y.taps <= MAX_FILTER_TAP);
-    convolve_vert(src, src_stride, dst, dst_stride, w, h, filter_params_y,
-                  subpel_y_qn, y_step_qn, conv_params);
-  } else {
-    // temp's size is set to a 256 aligned value to facilitate SIMD
-    // implementation. The value is greater than (maximum possible intermediate
-    // height or width) * MAX_SB_SIZE
-    DECLARE_ALIGNED(16, uint8_t,
-                    temp[((MAX_SB_SIZE * 2 + 16) + 16) * MAX_SB_SIZE]);
-    int max_intermediate_size = ((MAX_SB_SIZE * 2 + 16) + 16);
-    int filter_size;
-    const int temp_stride = MAX_SB_SIZE;
-    ConvolveParams temp_conv_params;
-    temp_conv_params.ref = 0;
-    temp_conv_params.do_average = 0;
-    filter_size = filter_params_y.taps;
-    const int intermediate_height =
-        (((h - 1) * y_step_qn + subpel_y_qn) >> SCALE_SUBPEL_BITS) +
-        filter_size;
-    assert(intermediate_height <= max_intermediate_size);
-    (void)max_intermediate_size;
-
-    assert(filter_params_x.taps <= MAX_FILTER_TAP);
-
-    convolve_horiz(src - src_stride * (filter_size / 2 - 1), src_stride, temp,
-                   temp_stride, w, intermediate_height, filter_params_x,
-                   subpel_x_qn, x_step_qn, &temp_conv_params);
-
-    assert(filter_params_y.taps <= MAX_FILTER_TAP);
-
-    convolve_vert(temp + temp_stride * (filter_size / 2 - 1), temp_stride, dst,
-                  dst_stride, w, h, filter_params_y, subpel_y_qn, y_step_qn,
-                  conv_params);
-  }
-}
-
 void av1_convolve(const uint8_t *src, int src_stride, uint8_t *dst,
                   int dst_stride, int w, int h, InterpFilters interp_filters,
                   const int subpel_x_q4, int x_step_q4, const int subpel_y_q4,
@@ -1805,17 +1630,6 @@
                   convolve_horiz_facade_c, convolve_vert_facade_c);
 }
 
-void av1_convolve_scale(const uint8_t *src, int src_stride, uint8_t *dst,
-                        int dst_stride, int w, int h,
-                        InterpFilters interp_filters, const int subpel_x_qn,
-                        int x_step_qn, const int subpel_y_qn, int y_step_qn,
-                        ConvolveParams *conv_params) {
-  convolve_scale_helper(src, src_stride, dst, dst_stride, w, h, interp_filters,
-                        subpel_x_qn, x_step_qn, subpel_y_qn, y_step_qn,
-                        conv_params, av1_convolve_horiz_facade_scale,
-                        av1_convolve_vert_facade_scale);
-}
-
 void av1_highbd_convolve_horiz_c(const uint16_t *src, int src_stride,
                                  uint16_t *dst, int dst_stride, int w, int h,
                                  const InterpFilterParams filter_params,
@@ -1845,38 +1659,6 @@
   }
 }
 
-static void highbd_convolve_horiz_scale(const uint16_t *src, int src_stride,
-                                        uint16_t *dst, int dst_stride, int w,
-                                        int h,
-                                        const InterpFilterParams filter_params,
-                                        const int subpel_x_qn, int x_step_qn,
-                                        int avg, int bd) {
-  int filter_size = filter_params.taps;
-  src -= filter_size / 2 - 1;
-  for (int y = 0; y < h; ++y) {
-    int x_qn = subpel_x_qn;
-    for (int x = 0; x < w; ++x) {
-      const uint16_t *const src_x = &src[x_qn >> SCALE_SUBPEL_BITS];
-      const int x_filter_idx = (x_qn & SCALE_SUBPEL_MASK) >> SCALE_EXTRA_BITS;
-      assert(x_filter_idx < SUBPEL_SHIFTS);
-      const int16_t *x_filter =
-          av1_get_interp_filter_subpel_kernel(filter_params, x_filter_idx);
-      int sum = 0;
-      for (int k = 0; k < filter_size; ++k) sum += src_x[k] * x_filter[k];
-      if (avg)
-        dst[x] = ROUND_POWER_OF_TWO(
-            dst[x] +
-                clip_pixel_highbd(ROUND_POWER_OF_TWO(sum, FILTER_BITS), bd),
-            1);
-      else
-        dst[x] = clip_pixel_highbd(ROUND_POWER_OF_TWO(sum, FILTER_BITS), bd);
-      x_qn += x_step_qn;
-    }
-    src += src_stride;
-    dst += dst_stride;
-  }
-}
-
 void av1_highbd_convolve_vert_c(const uint16_t *src, int src_stride,
                                 uint16_t *dst, int dst_stride, int w, int h,
                                 const InterpFilterParams filter_params,
@@ -1910,43 +1692,6 @@
   }
 }
 
-static void highbd_convolve_vert_scale(const uint16_t *src, int src_stride,
-                                       uint16_t *dst, int dst_stride, int w,
-                                       int h,
-                                       const InterpFilterParams filter_params,
-                                       const int subpel_y_qn, int y_step_qn,
-                                       int avg, int bd) {
-  int filter_size = filter_params.taps;
-  src -= src_stride * (filter_size / 2 - 1);
-
-  for (int x = 0; x < w; ++x) {
-    int y_qn = subpel_y_qn;
-    for (int y = 0; y < h; ++y) {
-      const uint16_t *const src_y =
-          &src[(y_qn >> SCALE_SUBPEL_BITS) * src_stride];
-      const int y_filter_idx = (y_qn & SCALE_SUBPEL_MASK) >> SCALE_EXTRA_BITS;
-      assert(y_filter_idx < SUBPEL_SHIFTS);
-      const int16_t *y_filter =
-          av1_get_interp_filter_subpel_kernel(filter_params, y_filter_idx);
-      int sum = 0;
-      for (int k = 0; k < filter_size; ++k)
-        sum += src_y[k * src_stride] * y_filter[k];
-      if (avg) {
-        dst[y * dst_stride] = ROUND_POWER_OF_TWO(
-            dst[y * dst_stride] +
-                clip_pixel_highbd(ROUND_POWER_OF_TWO(sum, FILTER_BITS), bd),
-            1);
-      } else {
-        dst[y * dst_stride] =
-            clip_pixel_highbd(ROUND_POWER_OF_TWO(sum, FILTER_BITS), bd);
-      }
-      y_qn += y_step_qn;
-    }
-    ++src;
-    ++dst;
-  }
-}
-
 static void highbd_convolve_copy(const uint16_t *src, int src_stride,
                                  uint16_t *dst, int dst_stride, int w, int h,
                                  int avg, int bd) {
@@ -1990,18 +1735,6 @@
   }
 }
 
-static void highbd_convolve_horiz_facade_scale(
-    const uint8_t *src8, int src_stride, uint8_t *dst8, int dst_stride, int w,
-    int h, const InterpFilterParams filter_params, const int subpel_x_qn,
-    int x_step_qn, int avg, int bd) {
-  uint16_t *src = CONVERT_TO_SHORTPTR(src8);
-  uint16_t *dst = CONVERT_TO_SHORTPTR(dst8);
-  // TODO(debargha): Add special functions for filter_params.taps == SUBPEL_TAPS
-  // as in the function above.
-  highbd_convolve_horiz_scale(src, src_stride, dst, dst_stride, w, h,
-                              filter_params, subpel_x_qn, x_step_qn, avg, bd);
-}
-
 static void highbd_convolve_vert_facade(const uint8_t *src8, int src_stride,
                                         uint8_t *dst8, int dst_stride, int w,
                                         int h,
@@ -2027,18 +1760,6 @@
   }
 }
 
-static void highbd_convolve_vert_facade_scale(
-    const uint8_t *src8, int src_stride, uint8_t *dst8, int dst_stride, int w,
-    int h, const InterpFilterParams filter_params, const int subpel_y_qn,
-    int y_step_qn, int avg, int bd) {
-  uint16_t *src = CONVERT_TO_SHORTPTR(src8);
-  uint16_t *dst = CONVERT_TO_SHORTPTR(dst8);
-  // TODO(debargha): Add special functions for filter_params.taps == SUBPEL_TAPS
-  // as in the function above.
-  highbd_convolve_vert_scale(src, src_stride, dst, dst_stride, w, h,
-                             filter_params, subpel_y_qn, y_step_qn, avg, bd);
-}
-
 void av1_highbd_convolve(const uint8_t *src8, int src_stride, uint8_t *dst8,
                          int dst_stride, int w, int h,
                          InterpFilters interp_filters, const int subpel_x_q4,
@@ -2106,72 +1827,3 @@
         dst_stride, w, h, filter_params_y, subpel_y_q4, y_step_q4, ref_idx, bd);
   }
 }
-
-void av1_highbd_convolve_scale(const uint8_t *src8, int src_stride,
-                               uint8_t *dst8, int dst_stride, int w, int h,
-                               InterpFilters interp_filters,
-                               const int subpel_x_qn, int x_step_qn,
-                               const int subpel_y_qn, int y_step_qn,
-                               int ref_idx, int bd) {
-  int ignore_horiz = x_step_qn == SCALE_SUBPEL_SHIFTS && subpel_x_qn == 0;
-  int ignore_vert = y_step_qn == SCALE_SUBPEL_SHIFTS && subpel_y_qn == 0;
-
-  assert(w <= MAX_BLOCK_WIDTH);
-  assert(h <= MAX_BLOCK_HEIGHT);
-  assert(y_step_qn <= (MAX_STEP << SCALE_EXTRA_BITS));
-  assert(x_step_qn <= (MAX_STEP << SCALE_EXTRA_BITS));
-
-  if (ignore_horiz && ignore_vert) {
-    uint16_t *src = CONVERT_TO_SHORTPTR(src8);
-    uint16_t *dst = CONVERT_TO_SHORTPTR(dst8);
-    highbd_convolve_copy(src, src_stride, dst, dst_stride, w, h, ref_idx, bd);
-    return;
-  }
-
-  InterpFilterParams filter_params_x, filter_params_y;
-#if CONFIG_SHORT_FILTER
-  av1_get_convolve_filter_params(interp_filters, &filter_params_x,
-                                 &filter_params_y, w, h);
-#else
-  av1_get_convolve_filter_params(interp_filters, &filter_params_x,
-                                 &filter_params_y);
-#endif
-
-  if (ignore_vert) {
-    highbd_convolve_horiz_facade_scale(src8, src_stride, dst8, dst_stride, w, h,
-                                       filter_params_x, subpel_x_qn, x_step_qn,
-                                       ref_idx, bd);
-  } else if (ignore_horiz) {
-    highbd_convolve_vert_facade_scale(src8, src_stride, dst8, dst_stride, w, h,
-                                      filter_params_y, subpel_y_qn, y_step_qn,
-                                      ref_idx, bd);
-  } else {
-    // temp's size is set to a 256 aligned value to facilitate SIMD
-    // implementation. The value is greater than (maximum possible intermediate
-    // height or width) * MAX_SB_SIZE
-    DECLARE_ALIGNED(16, uint16_t,
-                    temp[((MAX_SB_SIZE * 2 + 16) + 16) * MAX_SB_SIZE]);
-    uint8_t *temp8 = CONVERT_TO_BYTEPTR(temp);
-    int max_intermediate_size = ((MAX_SB_SIZE * 2 + 16) + 16);
-    int filter_size;
-    const int temp_stride = MAX_SB_SIZE;
-    filter_size = filter_params_y.taps;
-    const int intermediate_height =
-        (((h - 1) * y_step_qn + subpel_y_qn) >> SCALE_SUBPEL_BITS) +
-        filter_size;
-    assert(intermediate_height <= max_intermediate_size);
-    (void)max_intermediate_size;
-
-    highbd_convolve_horiz_facade_scale(
-        src8 - src_stride * (filter_size / 2 - 1), src_stride, temp8,
-        temp_stride, w, intermediate_height, filter_params_x, subpel_x_qn,
-        x_step_qn, 0, bd);
-
-    filter_size = filter_params_y.taps;
-    assert(filter_params_y.taps <= MAX_FILTER_TAP);
-
-    highbd_convolve_vert_facade_scale(
-        temp8 + temp_stride * (filter_size / 2 - 1), temp_stride, dst8,
-        dst_stride, w, h, filter_params_y, subpel_y_qn, y_step_qn, ref_idx, bd);
-  }
-}
diff --git a/av1/common/convolve.h b/av1/common/convolve.h
index 554d144..555c671 100644
--- a/av1/common/convolve.h
+++ b/av1/common/convolve.h
@@ -138,23 +138,11 @@
                     const int subpel_x, int xstep, const int subpel_y,
                     int ystep, ConvolveParams *conv_params);
 
-void av1_convolve_scale(const uint8_t *src, int src_stride, uint8_t *dst,
-                        int dst_stride, int w, int h,
-                        InterpFilters interp_filters, const int subpel_x,
-                        int xstep, const int subpel_y, int ystep,
-                        ConvolveParams *conv_params);
-
 void av1_highbd_convolve(const uint8_t *src, int src_stride, uint8_t *dst,
                          int dst_stride, int w, int h,
                          InterpFilters interp_filters, const int subpel_x,
                          int xstep, const int subpel_y, int ystep, int avg,
                          int bd);
-
-void av1_highbd_convolve_scale(const uint8_t *src, int src_stride, uint8_t *dst,
-                               int dst_stride, int w, int h,
-                               InterpFilters interp_filters, const int subpel_x,
-                               int xstep, const int subpel_y, int ystep,
-                               int avg, int bd);
 #ifdef __cplusplus
 }  // extern "C"
 #endif