summaryrefslogtreecommitdiff
path: root/tests/checkasm/vp8dsp.c
diff options
context:
space:
mode:
authorHendrik Leppkes <h.leppkes@gmail.com>2016-11-17 15:05:25 +0100
committerHendrik Leppkes <h.leppkes@gmail.com>2016-11-17 15:05:25 +0100
commit4fe013fc701acb9a4f0f567604e9f0a0460e9b77 (patch)
tree345a49d6fefe1ddbf766c83df004c9647c732dda /tests/checkasm/vp8dsp.c
parent2818aaaba09da380639a1ed51e4f3ece8cb3b2ec (diff)
parentec32574209f36467ef0d22c21a7e811ba98c15b6 (diff)
Merge commit 'ec32574209f36467ef0d22c21a7e811ba98c15b6'
* commit 'ec32574209f36467ef0d22c21a7e811ba98c15b6': checkasm: vp8: mc: test unequal width/height for partitions Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
Diffstat (limited to 'tests/checkasm/vp8dsp.c')
-rw-r--r--tests/checkasm/vp8dsp.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/tests/checkasm/vp8dsp.c b/tests/checkasm/vp8dsp.c
index 76abe4cef8..1e64481d28 100644
--- a/tests/checkasm/vp8dsp.c
+++ b/tests/checkasm/vp8dsp.c
@@ -268,15 +268,17 @@ static void check_mc(void)
LOCAL_ALIGNED_16(uint8_t, dst0, [16 * 16]);
LOCAL_ALIGNED_16(uint8_t, dst1, [16 * 16]);
VP8DSPContext d;
- int type, hsize, dx, dy;
+ int type, k, dx, dy;
declare_func_emms(AV_CPU_FLAG_MMX, void, uint8_t *, ptrdiff_t, uint8_t *, ptrdiff_t, int, int, int);
ff_vp78dsp_init(&d);
for (type = 0; type < 2; type++) {
vp8_mc_func (*tab)[3][3] = type ? d.put_vp8_bilinear_pixels_tab : d.put_vp8_epel_pixels_tab;
- for (hsize = 0; hsize < 3; hsize++) {
- int size = 16 >> hsize;
+ for (k = 1; k < 8; k++) {
+ int hsize = k / 3;
+ int size = 16 >> hsize;
+ int height = (size << 1) >> (k % 3);
for (dy = 0; dy < 3; dy++) {
for (dx = 0; dx < 3; dx++) {
char str[100];
@@ -309,11 +311,11 @@ static void check_mc(void)
src[i ] = val;
src[i * SRC_BUF_STRIDE] = val;
}
- call_ref(dst0, size, src, SRC_BUF_STRIDE, size, mx, my);
- call_new(dst1, size, src, SRC_BUF_STRIDE, size, mx, my);
- if (memcmp(dst0, dst1, size * size))
+ call_ref(dst0, size, src, SRC_BUF_STRIDE, height, mx, my);
+ call_new(dst1, size, src, SRC_BUF_STRIDE, height, mx, my);
+ if (memcmp(dst0, dst1, size * height))
fail();
- bench_new(dst1, size, src, SRC_BUF_STRIDE, size, mx, my);
+ bench_new(dst1, size, src, SRC_BUF_STRIDE, height, mx, my);
}
}
}