34 #define FUNC(s, d, n) { s, d, #n, n }
36 int main(
int argc,
char **argv)
44 if (!srcBuffer || !dstBuffer)
50 for (funcNum = 0; ; funcNum++) {
55 void (*func)(
const uint8_t *src, uint8_t *dst,
int src_size);
92 if (!func_info[funcNum].func)
98 for (width = 63; width > 0; width--) {
100 for (dstOffset = 128; dstOffset < 196; dstOffset += 4) {
104 for (srcOffset = 128; srcOffset < 196; srcOffset += 4) {
105 uint8_t *src = srcBuffer + srcOffset;
106 uint8_t *dst = dstBuffer + dstOffset;
113 srcBpp = func_info[funcNum].src_bpp;
114 dstBpp = func_info[funcNum].dst_bpp;
115 name = func_info[funcNum].name;
117 func_info[funcNum].func(src, dst, width * srcBpp);
122 for (i = 0; i <
SIZE; i++) {
125 "src damaged at %d w:%d src:%d dst:%d %s\n",
126 i, width, srcOffset, dstOffset, name);
131 for (i = 0; i < dstOffset; i++) {
134 "dst damaged at %d w:%d src:%d dst:%d %s\n",
135 i, width, srcOffset, dstOffset, name);
140 for (i = dstOffset + width * dstBpp; i <
SIZE; i++) {
143 "dst damaged at %d w:%d src:%d dst:%d %s\n",
144 i, width, srcOffset, dstOffset, name);
159 "\n%d converters passed, %d converters randomly overwrote memory\n",
160 passedNum, failedNum);