1 /* Copyright (C) 2002 Free Software Foundation.
3 Test memset with various combinations of pointer alignments and lengths to
4 make sure any optimizations in the library are correct.
6 Written by Michael Meissner, March 9, 2002. */
11 #define MAX_OFFSET (sizeof (long long))
15 #define MAX_COPY (10 * sizeof (long long))
19 #define MAX_EXTRA (sizeof (long long))
22 #define MAX_LENGTH (MAX_OFFSET + MAX_COPY + MAX_EXTRA)
37 for (off = 0; off < MAX_OFFSET; off++)
38 for (len = 1; len < MAX_COPY; len++)
40 for (i = 0; i < MAX_LENGTH; i++)
43 p = memset (u.buf + off, '\0', len);
48 for (i = 0; i < off; i++, q++)
52 for (i = 0; i < len; i++, q++)
56 for (i = 0; i < MAX_EXTRA; i++, q++)
60 p = memset (u.buf + off, A, len);
65 for (i = 0; i < off; i++, q++)
69 for (i = 0; i < len; i++, q++)
73 for (i = 0; i < MAX_EXTRA; i++, q++)
77 p = memset (u.buf + off, 'B', len);
82 for (i = 0; i < off; i++, q++)
86 for (i = 0; i < len; i++, q++)
90 for (i = 0; i < MAX_EXTRA; i++, q++)