summaryrefslogtreecommitdiff
path: root/vpx_dsp/arm/vpx_convolve8_neon.c
diff options
context:
space:
mode:
authorScott LaVarnway <slavarnway@google.com>2015-08-12 16:14:53 -0700
committerJohann <johannkoenig@google.com>2015-08-12 16:46:53 -0700
commitfa472129334e197f0a977fd8ccd0bf2a145d0935 (patch)
tree037b4519a2876a52238e0ec2dbb0558c5cb8f456 /vpx_dsp/arm/vpx_convolve8_neon.c
parent9cc8995f46e423002e43eb6dab4a3fc140b9cb0b (diff)
downloadlibvpx-fa472129334e197f0a977fd8ccd0bf2a145d0935.tar
libvpx-fa472129334e197f0a977fd8ccd0bf2a145d0935.tar.gz
libvpx-fa472129334e197f0a977fd8ccd0bf2a145d0935.tar.bz2
libvpx-fa472129334e197f0a977fd8ccd0bf2a145d0935.zip
VPX: removed step checks from neon convolve code
The check is handled by the predictor table. Change-Id: I42479f843e77a2d40cdcdfc9e2e6c48a05a36561
Diffstat (limited to 'vpx_dsp/arm/vpx_convolve8_neon.c')
-rw-r--r--vpx_dsp/arm/vpx_convolve8_neon.c26
1 files changed, 3 insertions, 23 deletions
diff --git a/vpx_dsp/arm/vpx_convolve8_neon.c b/vpx_dsp/arm/vpx_convolve8_neon.c
index 6f634b3c7..9bd715e2c 100644
--- a/vpx_dsp/arm/vpx_convolve8_neon.c
+++ b/vpx_dsp/arm/vpx_convolve8_neon.c
@@ -9,23 +9,13 @@
*/
#include <arm_neon.h>
+#include <assert.h>
#include "./vpx_config.h"
#include "./vpx_dsp_rtcd.h"
#include "vpx/vpx_integer.h"
#include "vpx_ports/mem.h"
-void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride,
- uint8_t *dst, ptrdiff_t dst_stride,
- const int16_t *filter_x, int x_step_q4,
- const int16_t *filter_y, int y_step_q4,
- int w, int h);
-void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride,
- uint8_t *dst, ptrdiff_t dst_stride,
- const int16_t *filter_x, int x_step_q4,
- const int16_t *filter_y, int y_step_q4,
- int w, int h);
-
static INLINE int32x4_t MULTIPLY_BY_Q0(
int16x4_t dsrc0,
int16x4_t dsrc1,
@@ -82,12 +72,7 @@ void vpx_convolve8_horiz_neon(
uint16x4x2_t d0x2u16, d1x2u16;
uint32x4x2_t q0x2u32;
- if (x_step_q4 != 16) {
- vpx_convolve8_horiz_c(src, src_stride, dst, dst_stride,
- filter_x, x_step_q4,
- filter_y, y_step_q4, w, h);
- return;
- }
+ assert(x_step_q4 == 16);
q0s16 = vld1q_s16(filter_x);
@@ -255,12 +240,7 @@ void vpx_convolve8_vert_neon(
uint16x8_t q1u16, q2u16, q8u16, q9u16, q10u16, q11u16, q12u16, q13u16;
int32x4_t q1s32, q2s32, q14s32, q15s32;
- if (y_step_q4 != 16) {
- vpx_convolve8_vert_c(src, src_stride, dst, dst_stride,
- filter_x, x_step_q4,
- filter_y, y_step_q4, w, h);
- return;
- }
+ assert(y_step_q4 == 16);
src -= src_stride * 3;
q0s16 = vld1q_s16(filter_y);