27 #define randomize_buffers(buf) \
29 for (size_t j = 0; j < FF_ARRAY_ELEMS(buf); ++j) \
33 #define randomize_mask_buffers(buf, buf2, nb_elems, nb_bits)\
35 for (size_t j = 0; j < nb_elems; ++j) \
36 buf[j] = buf2[j] = sign_extend(rnd(), nb_bits); \
39 #define randomize_buffer_range(buf, min, max) \
41 for (size_t j = 0; j < FF_ARRAY_ELEMS(buf); ++j) \
42 buf[j] = min + rnd() % (max - min + 1); \
56 ptrdiff_t dst_stride, ptrdiff_t src_stride,
57 ptrdiff_t
width, ptrdiff_t
height, ptrdiff_t log2_scale);
59 for (
int i = 0;
i < 2; ++
i) {
68 uint8_t *dst_new = dstbuf_new, *dst_ref = dstbuf_ref;
69 int16_t *src_ref, *src_new, *or_src_ref, *or_src_new;
70 ptrdiff_t
width = 1 +
rnd() % MAX_WIDTH;
79 or_src_ref = src_ref2;
80 or_src_new = src_new2;
83 src_ref = src_ref1 + 8 * src_stride;
84 src_new = src_new1 + 8 * src_stride;
85 or_src_ref = src_ref1;
86 or_src_new = src_new1;
90 dst_ref += dst_stride * (
height - 1);
91 dst_new += dst_stride * (
height - 1);
95 memcpy(dstbuf_ref, dstbuf_new,
sizeof(dstbuf_ref));
98 ptrdiff_t log2_scale =
rnd() & 1;
101 if (memcmp(dstbuf_new, dstbuf_ref,
sizeof(dstbuf_ref)) ||
102 memcmp(or_src_ref, or_src_new,
sizeof(*or_src_new) * nb_elems))
118 const int q = (uint8_t)
rnd();
119 declare_func(
void,
const int16_t *thr_adr_noq, int16_t *thr_adr,
int q);
127 if (memcmp(dst_ref, dst_new,
sizeof(dst_ref)))
140 int16_t *
output,
int cnt);
153 memcpy(dst_ref, dst_new,
sizeof(dst_ref));
158 if (memcmp(dst_new, dst_ref,
sizeof(dst_new)))