diff options
author | Linfeng Zhang <linfengz@google.com> | 2017-08-28 10:35:43 -0700 |
---|---|---|
committer | Linfeng Zhang <linfengz@google.com> | 2017-09-05 15:22:36 -0700 |
commit | d331e7a1c0c59d4055a3bfacd051268ec0832b48 (patch) | |
tree | 7309a0384415188af55340224c91d633ac608fbc /vpx_dsp/mips/convolve8_dspr2.c | |
parent | d49a1a5329ea43968faaf295f7da5f72b28f971e (diff) | |
download | libvpx-d331e7a1c0c59d4055a3bfacd051268ec0832b48.tar libvpx-d331e7a1c0c59d4055a3bfacd051268ec0832b48.tar.gz libvpx-d331e7a1c0c59d4055a3bfacd051268ec0832b48.tar.bz2 libvpx-d331e7a1c0c59d4055a3bfacd051268ec0832b48.zip |
Remove get_filter_base() and get_filter_offset() in convolve
so that the convolve functions are independent of table alignment.
Change-Id: Ieab132a30d72c6e75bbe9473544fbe2cf51541ee
Diffstat (limited to 'vpx_dsp/mips/convolve8_dspr2.c')
-rw-r--r-- | vpx_dsp/mips/convolve8_dspr2.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/vpx_dsp/mips/convolve8_dspr2.c b/vpx_dsp/mips/convolve8_dspr2.c index 8d35b6394..89f0f4196 100644 --- a/vpx_dsp/mips/convolve8_dspr2.c +++ b/vpx_dsp/mips/convolve8_dspr2.c @@ -1296,9 +1296,11 @@ void copy_horiz_transposed(const uint8_t *src, ptrdiff_t src_stride, } void vpx_convolve8_dspr2(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, + ptrdiff_t dst_stride, const InterpKernel *filter, + int x0_q4, int32_t x_step_q4, int y0_q4, int y_step_q4, int w, int h) { + const int16_t *const filter_x = filter[x0_q4]; + const int16_t *const filter_y = filter[y0_q4]; DECLARE_ALIGNED(32, uint8_t, temp[64 * 135]); int32_t intermediate_height = ((h * y_step_q4) >> 4) + 7; uint32_t pos = 38; @@ -1395,14 +1397,15 @@ void vpx_convolve8_dspr2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, void vpx_convolve_copy_dspr2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, - const int16_t *filter_x, int filter_x_stride, - const int16_t *filter_y, int filter_y_stride, - int w, int h) { + const InterpKernel *filter, int x0_q4, + int x_step_q4, int y0_q4, int y_step_q4, int w, + int h) { int x, y; - (void)filter_x; - (void)filter_x_stride; - (void)filter_y; - (void)filter_y_stride; + (void)filter; + (void)x0_q4; + (void)x_step_q4; + (void)y0_q4; + (void)y_step_q4; /* prefetch data to cache memory */ prefetch_load(src); |