printf("LFSR specs\n");
printf("==========================\n");
printf("Size is %u\n", 64 - __builtin_clzl(fl->cached_bit));
- printf("Max val is %lu\n", fl->max_val);
- printf("XOR-mask is 0x%lX\n", fl->xormask);
- printf("Seed is %lu\n", fl->last_val);
+ printf("Max val is %lu\n", (unsigned long) fl->max_val);
+ printf("XOR-mask is 0x%lX\n", (unsigned long) fl->xormask);
+ printf("Seed is %lu\n", (unsigned long) fl->last_val);
printf("Spin is %u\n", fl->spin);
- printf("Cycle length is %lu\n", fl->cycle_length);
+ printf("Cycle length is %lu\n", (unsigned long) fl->cycle_length);
/* Create verification table */
if (verify) {
* negligible overhead.
*/
fprintf(stderr, "\nTest initiated... ");
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &start);
+ fio_gettime(&start, NULL);
while (!lfsr_next(fl, &i, fl->max_val)) {
if (verify)
*(uint8_t *)(v + i) += 1;
}
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &end);
+ fio_gettime(&end, NULL);
fprintf(stderr, "finished.\n");
+
/* Check if all expected numbers within range have been calculated */
r = 0;
if (verify) {
fprintf(stderr, "Verifying results... ");
for (i = 0; i < numbers; i++) {
- if (*(uint8_t *)(v + 1) != 1) {
- fprintf(stderr, "failed.\n");
+ if (*(uint8_t *)(v + i) != 1) {
+ fprintf(stderr, "failed (%lu = %d).\n",
+ (unsigned long) i,
+ *(uint8_t *)(v + i));
r = 1;
break;
}