diff options
author | Victorien Le Couviour--Tuffet <victorien@videolan.org> | 2021-09-23 11:09:26 +0300 |
---|---|---|
committer | Victorien Le Couviour--Tuffet <victorien@videolan.org> | 2021-10-29 23:18:20 +0300 |
commit | 609fbaba84b8e15a25de9efbc8b14988be6df94d (patch) | |
tree | 2e39c4a0eb40ce94085ed7c8d8747683e14be927 /tests | |
parent | 8e6d5214a356dfc91c09468ac7473d8a66bf26cd (diff) |
Allow CDEF and LR to run sbrows in parallel
Diffstat (limited to 'tests')
-rw-r--r-- | tests/checkasm/cdef.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/tests/checkasm/cdef.c b/tests/checkasm/cdef.c index 7259e1a..833fa4b 100644 --- a/tests/checkasm/cdef.c +++ b/tests/checkasm/cdef.c @@ -56,12 +56,14 @@ static void check_cdef_filter(const cdef_fn fn, const int w, const int h) { ALIGN_STK_64(pixel, c_src, 16 * 10 + 16, ), *const c_dst = c_src + 8; ALIGN_STK_64(pixel, a_src, 16 * 10 + 16, ), *const a_dst = a_src + 8; ALIGN_STK_64(pixel, top_buf, 16 * 2 + 16, ), *const top = top_buf + 8; + ALIGN_STK_64(pixel, bot_buf, 16 * 2 + 16, ), *const bot = bot_buf + 8; ALIGN_STK_16(pixel, left, 8,[2]); const ptrdiff_t stride = 16 * sizeof(pixel); declare_func(void, pixel *dst, ptrdiff_t dst_stride, const pixel (*left)[2], - const pixel *top, int pri_strength, int sec_strength, - int dir, int damping, enum CdefEdgeFlags edges HIGHBD_DECL_SUFFIX); + const pixel *top, const pixel *bot, int pri_strength, + int sec_strength, int dir, int damping, + enum CdefEdgeFlags edges HIGHBD_DECL_SUFFIX); if (check_func(fn, "cdef_filter_%dx%d_%dbpc", w, h, BITDEPTH)) { for (int dir = 0; dir < 8; dir++) { @@ -75,6 +77,7 @@ static void check_cdef_filter(const cdef_fn fn, const int w, const int h) { init_tmp(c_src, 16 * 10 + 16, bitdepth_max); init_tmp(top_buf, 16 * 2 + 16, bitdepth_max); + init_tmp(bot_buf, 16 * 2 + 16, bitdepth_max); init_tmp((pixel *) left, 8 * 2, bitdepth_max); memcpy(a_src, c_src, (16 * 10 + 16) * sizeof(pixel)); @@ -84,9 +87,9 @@ static void check_cdef_filter(const cdef_fn fn, const int w, const int h) { int sec_strength = lvl & 3; sec_strength += sec_strength == 3; sec_strength <<= bitdepth_min_8; - call_ref(c_dst, stride, left, top, pri_strength, sec_strength, + call_ref(c_dst, stride, left, top, bot, pri_strength, sec_strength, dir, damping, edges HIGHBD_TAIL_SUFFIX); - call_new(a_dst, stride, left, top, pri_strength, sec_strength, + call_new(a_dst, stride, left, top, bot, pri_strength, sec_strength, dir, damping, edges HIGHBD_TAIL_SUFFIX); if (checkasm_check_pixel(c_dst, stride, a_dst, stride, w, h, "dst")) { fprintf(stderr, "strength = %d:%d, dir = %d, damping = %d, edges = %04d\n", @@ -101,8 +104,8 @@ static void check_cdef_filter(const cdef_fn fn, const int w, const int h) { */ pri_strength = (edges & 1) << bitdepth_min_8; sec_strength = (edges & 2) << bitdepth_min_8; - bench_new(a_dst, stride, left, top, pri_strength, sec_strength, - dir, damping, edges HIGHBD_TAIL_SUFFIX); + bench_new(a_dst, stride, left, top, bot, pri_strength, + sec_strength, dir, damping, edges HIGHBD_TAIL_SUFFIX); } } } |