do_test
if (do_test(d, "copy", m, n, es, y, z) != 0) \
if (do_test(d, "reversed", m, n, es, y, z) != 0) \
if (do_test(d, "front reversed", m, n, es, y, z) != 0) \
if (do_test(d, "back reversed", m, n, es, y, z) != 0) \
if (do_test(d, "sorted", m, n, es, y, x) != 0) \
if (do_test(d, "dithered", m, n, es, y, z) != 0) \
if (do_test(d, NULL, 0, n, sizeof(x[0]), y, z) != 0) \
do_test(16, 16);
do_test(24, 16);
do_test(32, 16);
do_test(24, 24);
do_test(32, 24);
do_test(32, 32);