Mercurial > vec
comparison test/test_compare.h @ 37:4b5a557aa64f
*: turns out extern is a practical joke. rewrite to be always inline again
the sample benchmark performs about 3x as well with optimizations
disabled :)
author | Paper <paper@tflc.us> |
---|---|
date | Sat, 26 Apr 2025 01:04:35 -0400 |
parents | 627d548b23c8 |
children |
comparison
equal
deleted
inserted
replaced
36:677c03c382b8 | 37:4b5a557aa64f |
---|---|
8 v##sign##int##bits##x##size##_store(a, orig_a); \ | 8 v##sign##int##bits##x##size##_store(a, orig_a); \ |
9 v##sign##int##bits##x##size##_store(b, orig_b); \ | 9 v##sign##int##bits##x##size##_store(b, orig_b); \ |
10 v##sign##int##bits##x##size##_store(c, orig_c); \ | 10 v##sign##int##bits##x##size##_store(c, orig_c); \ |
11 \ | 11 \ |
12 for (int i = 0; i < size; i++) { \ | 12 for (int i = 0; i < size; i++) { \ |
13 if ((sign##int##bits##_t)(((equiv) ? UINT##bits##_MAX : 0)) != orig_c[i]) { \ | 13 if ((vec_##sign##int##bits)(((equiv) ? UINT##bits##_MAX : 0)) != orig_c[i]) { \ |
14 printf("%lld %lld\n", (long long)(vec_##sign##int##bits)(((equiv) ? UINT##bits##_MAX : 0)), (long long)orig_c[i]); \ | |
14 fprintf(stderr, "v" #sign "int" #bits "x" #size "_" #op " test FAILED at index %d: (" #equiv ") [%d] does not equal result [%" PRI ## psign ## bits "]!\n", i, equiv, orig_c[i]); \ | 15 fprintf(stderr, "v" #sign "int" #bits "x" #size "_" #op " test FAILED at index %d: (" #equiv ") [%d] does not equal result [%" PRI ## psign ## bits "]!\n", i, equiv, orig_c[i]); \ |
15 print_v##sign##int##bits##x##size(stderr,a); \ | 16 print_v##sign##int##bits##x##size(stderr,a); \ |
16 print_v##sign##int##bits##x##size(stderr,b); \ | 17 print_v##sign##int##bits##x##size(stderr,b); \ |
17 print_v##sign##int##bits##x##size(stderr,c); \ | 18 print_v##sign##int##bits##x##size(stderr,c); \ |
18 fprintf(stderr, "\n"); \ | 19 fprintf(stderr, "\n"); \ |