33#define randomize_buffers(buf, size, mask) \
35 for (size_t j = 0; j < size; ++j) \
36 buf[j] = rnd() & mask; \
42 static const int bpps[] = { 9, 16, };
46 const uint16_t *
src2,
unsigned mask,
int w,
int *
left,
int *left_top);
49 const int bpp = bpps[
i];
53 if (
check_func(
c.sub_hfyu_median_pred_int16,
"sub_hfyu_median_pred_int16_%dbpp%s", bpp,
aligned)) {
58 const unsigned mask = (1 << bpp) - 1;
66 if (l1 != l2 || lt1 != lt2 || memcmp(dst0, dst1,
width *
sizeof(dst0[0])))
79 report(
"sub_hfyu_median_pred_int16_aligned");
82 report(
"sub_hfyu_median_pred_int16");
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
static const uint8_t *BS_FUNC align(BSCTX *bc)
Skip bits to a byte boundary.
static int BS_FUNC left(const BSCTX *bc)
Return the number of the bits left in a buffer.
#define i(width, name, range_min, range_max)
static int aligned(int val)
av_cold void ff_huffyuvencdsp_init(HuffYUVEncDSPContext *c, int bpp, int width)
size_t av_cpu_max_align(void)
Get the maximum data alignment that may be required by FFmpeg.
static const uint16_t mask[17]
Utility Preprocessor macros.
#define DECLARE_ALIGNED(n, t, v)
Declare a variable that is aligned in memory.
#define FF_ARRAY_ELEMS(a)
@ MAX_WIDTH
arbitrary limit used for the tests
void checkasm_check_huffyuvencdsp(void)
#define randomize_buffers(buf, size, mask)
static void check_sub_hfyu_median_pred_int16(const char *aligned, unsigned width)