skip to content
==> tests/golden.c <==
1/* @ajax/mesh-abi-trace's functions against vectors the Rust computed (alpha-rust-mesh, the same inputs). */
2#include "mesh/abi/trace.h"
3#include "mesh/check.h"
4
5#include <stdint.h>
6
7int main(void) {
8    CHECK_U(mesh_trace_rec(0, 0), 106496u);
9    CHECK_U(mesh_trace_rec(0, 1), 106512u);
10    CHECK_U(mesh_trace_rec(0, 5), 106576u);
11    CHECK_U(mesh_trace_rec(0, 31), 106992u);
12    CHECK_U(mesh_trace_rec(0, 127), 108528u);
13    CHECK_U(mesh_trace_rec(0, 128), 106496u);
14    CHECK_U(mesh_trace_rec(0, 129), 106512u);
15    CHECK_U(mesh_trace_rec(0, 1000), 108160u);
16    CHECK_U(mesh_trace_rec(1, 0), 108544u);
17    CHECK_U(mesh_trace_rec(1, 1), 108560u);
18    CHECK_U(mesh_trace_rec(1, 5), 108624u);
19    CHECK_U(mesh_trace_rec(1, 31), 109040u);
20    CHECK_U(mesh_trace_rec(1, 127), 110576u);
21    CHECK_U(mesh_trace_rec(1, 128), 108544u);
22    CHECK_U(mesh_trace_rec(1, 129), 108560u);
23    CHECK_U(mesh_trace_rec(1, 1000), 110208u);
24    CHECK_U(mesh_trace_rec(2, 0), 110592u);
25    CHECK_U(mesh_trace_rec(2, 1), 110608u);
26    CHECK_U(mesh_trace_rec(2, 5), 110672u);
27    CHECK_U(mesh_trace_rec(2, 31), 111088u);
28    CHECK_U(mesh_trace_rec(2, 127), 112624u);
29    CHECK_U(mesh_trace_rec(2, 128), 110592u);
30    CHECK_U(mesh_trace_rec(2, 129), 110608u);
31    CHECK_U(mesh_trace_rec(2, 1000), 112256u);
32    CHECK_U(mesh_trace_rec(7, 0), 120832u);
33    CHECK_U(mesh_trace_rec(7, 1), 120848u);
34    CHECK_U(mesh_trace_rec(7, 5), 120912u);
35    CHECK_U(mesh_trace_rec(7, 31), 121328u);
36    CHECK_U(mesh_trace_rec(7, 127), 122864u);
37    CHECK_U(mesh_trace_rec(7, 128), 120832u);
38    CHECK_U(mesh_trace_rec(7, 129), 120848u);
39    CHECK_U(mesh_trace_rec(7, 1000), 122496u);
40    CHECK_U(mesh_trace_rec(31, 0), 169984u);
41    CHECK_U(mesh_trace_rec(31, 1), 170000u);
42    CHECK_U(mesh_trace_rec(31, 5), 170064u);
43    CHECK_U(mesh_trace_rec(31, 31), 170480u);
44    CHECK_U(mesh_trace_rec(31, 127), 172016u);
45    CHECK_U(mesh_trace_rec(31, 128), 169984u);
46    CHECK_U(mesh_trace_rec(31, 129), 170000u);
47    CHECK_U(mesh_trace_rec(31, 1000), 171648u);
48    CHECK_U(mesh_trace_rec(32, 0), 172032u);
49    CHECK_U(mesh_trace_rec(32, 1), 172048u);
50    CHECK_U(mesh_trace_rec(32, 5), 172112u);
51    CHECK_U(mesh_trace_rec(32, 31), 172528u);
52    CHECK_U(mesh_trace_rec(32, 127), 174064u);
53    CHECK_U(mesh_trace_rec(32, 128), 172032u);
54    CHECK_U(mesh_trace_rec(32, 129), 172048u);
55    CHECK_U(mesh_trace_rec(32, 1000), 173696u);
56    return mesh_check_done();
57}