skip to content
==> tests/golden.c <==
1/* @ajax/mesh-abi-pipe-ring's functions against vectors the Rust computed (alpha-rust-mesh, the same inputs). */
2#include "mesh/abi/pipe_ring.h"
3#include "mesh/check.h"
4
5#include <stdint.h>
6
7int main(void) {
8    CHECK_U(mesh_pipe_owner_tag(0u), 2119671808u);
9    CHECK_U(mesh_pipe_owner_tag(1u), 2119671809u);
10    CHECK_U(mesh_pipe_owner_tag(5u), 2119671813u);
11    CHECK_U(mesh_pipe_owner_tag(4095u), 2119675903u);
12    CHECK_U(mesh_pipe_owner_tag(4096u), 2119671808u);
13    CHECK_U(mesh_pipe_owner_tag(4294967295u), 2119675903u);
14    CHECK_U(mesh_pipe_inbox_sums(2), 136u);
15    CHECK_U(mesh_pipe_inbox_data(2), 144u);
16    CHECK_U(mesh_pipe_ring_bytes(2, 4), 192u);
17    CHECK_U(mesh_pipe_inbox_bytes(2, 4), 384u);
18    CHECK_U(mesh_pipe_inbox_sums(2), 136u);
19    CHECK_U(mesh_pipe_inbox_data(2), 144u);
20    CHECK_U(mesh_pipe_ring_bytes(2, 8), 192u);
21    CHECK_U(mesh_pipe_inbox_bytes(2, 8), 384u);
22    CHECK_U(mesh_pipe_inbox_sums(2), 136u);
23    CHECK_U(mesh_pipe_inbox_data(2), 144u);
24    CHECK_U(mesh_pipe_ring_bytes(2, 32), 256u);
25    CHECK_U(mesh_pipe_inbox_bytes(2, 32), 384u);
26    CHECK_U(mesh_pipe_inbox_sums(2), 136u);
27    CHECK_U(mesh_pipe_inbox_data(2), 144u);
28    CHECK_U(mesh_pipe_ring_bytes(2, 48), 256u);
29    CHECK_U(mesh_pipe_inbox_bytes(2, 48), 384u);
30    CHECK_U(mesh_pipe_inbox_sums(2), 136u);
31    CHECK_U(mesh_pipe_inbox_data(2), 144u);
32    CHECK_U(mesh_pipe_ring_bytes(2, 64), 320u);
33    CHECK_U(mesh_pipe_inbox_bytes(2, 64), 512u);
34    CHECK_U(mesh_pipe_inbox_sums(2), 136u);
35    CHECK_U(mesh_pipe_inbox_data(2), 144u);
36    CHECK_U(mesh_pipe_ring_bytes(2, 4096), 8384u);
37    CHECK_U(mesh_pipe_inbox_bytes(2, 4096), 8576u);
38    CHECK_U(mesh_pipe_inbox_sums(4), 144u);
39    CHECK_U(mesh_pipe_inbox_data(4), 160u);
40    CHECK_U(mesh_pipe_ring_bytes(4, 4), 192u);
41    CHECK_U(mesh_pipe_inbox_bytes(4, 4), 384u);
42    CHECK_U(mesh_pipe_inbox_sums(4), 144u);
43    CHECK_U(mesh_pipe_inbox_data(4), 160u);
44    CHECK_U(mesh_pipe_ring_bytes(4, 8), 192u);
45    CHECK_U(mesh_pipe_inbox_bytes(4, 8), 384u);
46    CHECK_U(mesh_pipe_inbox_sums(4), 144u);
47    CHECK_U(mesh_pipe_inbox_data(4), 160u);
48    CHECK_U(mesh_pipe_ring_bytes(4, 32), 320u);
49    CHECK_U(mesh_pipe_inbox_bytes(4, 32), 512u);
50    CHECK_U(mesh_pipe_inbox_sums(4), 144u);
51    CHECK_U(mesh_pipe_inbox_data(4), 160u);
52    CHECK_U(mesh_pipe_ring_bytes(4, 48), 384u);
53    CHECK_U(mesh_pipe_inbox_bytes(4, 48), 512u);
54    CHECK_U(mesh_pipe_inbox_sums(4), 144u);
55    CHECK_U(mesh_pipe_inbox_data(4), 160u);
56    CHECK_U(mesh_pipe_ring_bytes(4, 64), 448u);
57    CHECK_U(mesh_pipe_inbox_bytes(4, 64), 640u);
58    CHECK_U(mesh_pipe_inbox_sums(4), 144u);
59    CHECK_U(mesh_pipe_inbox_data(4), 160u);
60    CHECK_U(mesh_pipe_ring_bytes(4, 4096), 16576u);
61    CHECK_U(mesh_pipe_inbox_bytes(4, 4096), 16768u);
62    CHECK_U(mesh_pipe_inbox_sums(8), 160u);
63    CHECK_U(mesh_pipe_inbox_data(8), 192u);
64    CHECK_U(mesh_pipe_ring_bytes(8, 4), 256u);
65    CHECK_U(mesh_pipe_inbox_bytes(8, 4), 384u);
66    CHECK_U(mesh_pipe_inbox_sums(8), 160u);
67    CHECK_U(mesh_pipe_inbox_data(8), 192u);
68    CHECK_U(mesh_pipe_ring_bytes(8, 8), 256u);
69    CHECK_U(mesh_pipe_inbox_bytes(8, 8), 384u);
70    CHECK_U(mesh_pipe_inbox_sums(8), 160u);
71    CHECK_U(mesh_pipe_inbox_data(8), 192u);
72    CHECK_U(mesh_pipe_ring_bytes(8, 32), 448u);
73    CHECK_U(mesh_pipe_inbox_bytes(8, 32), 640u);
74    CHECK_U(mesh_pipe_inbox_sums(8), 160u);
75    CHECK_U(mesh_pipe_inbox_data(8), 192u);
76    CHECK_U(mesh_pipe_ring_bytes(8, 48), 576u);
77    CHECK_U(mesh_pipe_inbox_bytes(8, 48), 768u);
78    CHECK_U(mesh_pipe_inbox_sums(8), 160u);
79    CHECK_U(mesh_pipe_inbox_data(8), 192u);
80    CHECK_U(mesh_pipe_ring_bytes(8, 64), 704u);
81    CHECK_U(mesh_pipe_inbox_bytes(8, 64), 896u);
82    CHECK_U(mesh_pipe_inbox_sums(8), 160u);
83    CHECK_U(mesh_pipe_inbox_data(8), 192u);
84    CHECK_U(mesh_pipe_ring_bytes(8, 4096), 32960u);
85    CHECK_U(mesh_pipe_inbox_bytes(8, 4096), 33152u);
86    CHECK_U(mesh_pipe_inbox_sums(64), 384u);
87    CHECK_U(mesh_pipe_inbox_data(64), 640u);
88    CHECK_U(mesh_pipe_ring_bytes(64, 4), 896u);
89    CHECK_U(mesh_pipe_inbox_bytes(64, 4), 1024u);
90    CHECK_U(mesh_pipe_inbox_sums(64), 384u);
91    CHECK_U(mesh_pipe_inbox_data(64), 640u);
92    CHECK_U(mesh_pipe_ring_bytes(64, 8), 1152u);
93    CHECK_U(mesh_pipe_inbox_bytes(64, 8), 1280u);
94    CHECK_U(mesh_pipe_inbox_sums(64), 384u);
95    CHECK_U(mesh_pipe_inbox_data(64), 640u);
96    CHECK_U(mesh_pipe_ring_bytes(64, 32), 2688u);
97    CHECK_U(mesh_pipe_inbox_bytes(64, 32), 2816u);
98    CHECK_U(mesh_pipe_inbox_sums(64), 384u);
99    CHECK_U(mesh_pipe_inbox_data(64), 640u);
100    CHECK_U(mesh_pipe_ring_bytes(64, 48), 3712u);
101    CHECK_U(mesh_pipe_inbox_bytes(64, 48), 3840u);
102    CHECK_U(mesh_pipe_inbox_sums(64), 384u);
103    CHECK_U(mesh_pipe_inbox_data(64), 640u);
104    CHECK_U(mesh_pipe_ring_bytes(64, 64), 4736u);
105    CHECK_U(mesh_pipe_inbox_bytes(64, 64), 4864u);
106    CHECK_U(mesh_pipe_inbox_sums(64), 384u);
107    CHECK_U(mesh_pipe_inbox_data(64), 640u);
108    CHECK_U(mesh_pipe_ring_bytes(64, 4096), 262784u);
109    CHECK_U(mesh_pipe_inbox_bytes(64, 4096), 262912u);
110    CHECK_U(mesh_pipe_inbox_sums(256), 1152u);
111    CHECK_U(mesh_pipe_inbox_data(256), 2176u);
112    CHECK_U(mesh_pipe_ring_bytes(256, 4), 3200u);
113    CHECK_U(mesh_pipe_inbox_bytes(256, 4), 3328u);
114    CHECK_U(mesh_pipe_inbox_sums(256), 1152u);
115    CHECK_U(mesh_pipe_inbox_data(256), 2176u);
116    CHECK_U(mesh_pipe_ring_bytes(256, 8), 4224u);
117    CHECK_U(mesh_pipe_inbox_bytes(256, 8), 4352u);
118    CHECK_U(mesh_pipe_inbox_sums(256), 1152u);
119    CHECK_U(mesh_pipe_inbox_data(256), 2176u);
120    CHECK_U(mesh_pipe_ring_bytes(256, 32), 10368u);
121    CHECK_U(mesh_pipe_inbox_bytes(256, 32), 10496u);
122    CHECK_U(mesh_pipe_inbox_sums(256), 1152u);
123    CHECK_U(mesh_pipe_inbox_data(256), 2176u);
124    CHECK_U(mesh_pipe_ring_bytes(256, 48), 14464u);
125    CHECK_U(mesh_pipe_inbox_bytes(256, 48), 14592u);
126    CHECK_U(mesh_pipe_inbox_sums(256), 1152u);
127    CHECK_U(mesh_pipe_inbox_data(256), 2176u);
128    CHECK_U(mesh_pipe_ring_bytes(256, 64), 18560u);
129    CHECK_U(mesh_pipe_inbox_bytes(256, 64), 18688u);
130    CHECK_U(mesh_pipe_inbox_sums(256), 1152u);
131    CHECK_U(mesh_pipe_inbox_data(256), 2176u);
132    CHECK_U(mesh_pipe_ring_bytes(256, 4096), 1050752u);
133    CHECK_U(mesh_pipe_inbox_bytes(256, 4096), 1050880u);
134    CHECK_U(mesh_pipe_inbox_sums(512), 2176u);
135    CHECK_U(mesh_pipe_inbox_data(512), 4224u);
136    CHECK_U(mesh_pipe_ring_bytes(512, 4), 6272u);
137    CHECK_U(mesh_pipe_inbox_bytes(512, 4), 6400u);
138    CHECK_U(mesh_pipe_inbox_sums(512), 2176u);
139    CHECK_U(mesh_pipe_inbox_data(512), 4224u);
140    CHECK_U(mesh_pipe_ring_bytes(512, 8), 8320u);
141    CHECK_U(mesh_pipe_inbox_bytes(512, 8), 8448u);
142    CHECK_U(mesh_pipe_inbox_sums(512), 2176u);
143    CHECK_U(mesh_pipe_inbox_data(512), 4224u);
144    CHECK_U(mesh_pipe_ring_bytes(512, 32), 20608u);
145    CHECK_U(mesh_pipe_inbox_bytes(512, 32), 20736u);
146    CHECK_U(mesh_pipe_inbox_sums(512), 2176u);
147    CHECK_U(mesh_pipe_inbox_data(512), 4224u);
148    CHECK_U(mesh_pipe_ring_bytes(512, 48), 28800u);
149    CHECK_U(mesh_pipe_inbox_bytes(512, 48), 28928u);
150    CHECK_U(mesh_pipe_inbox_sums(512), 2176u);
151    CHECK_U(mesh_pipe_inbox_data(512), 4224u);
152    CHECK_U(mesh_pipe_ring_bytes(512, 64), 36992u);
153    CHECK_U(mesh_pipe_inbox_bytes(512, 64), 37120u);
154    CHECK_U(mesh_pipe_inbox_sums(512), 2176u);
155    CHECK_U(mesh_pipe_inbox_data(512), 4224u);
156    CHECK_U(mesh_pipe_ring_bytes(512, 4096), 2101376u);
157    CHECK_U(mesh_pipe_inbox_bytes(512, 4096), 2101504u);
158    CHECK_U(mesh_pipe_inbox_sums(1024), 4224u);
159    CHECK_U(mesh_pipe_inbox_data(1024), 8320u);
160    CHECK_U(mesh_pipe_ring_bytes(1024, 4), 12416u);
161    CHECK_U(mesh_pipe_inbox_bytes(1024, 4), 12544u);
162    CHECK_U(mesh_pipe_inbox_sums(1024), 4224u);
163    CHECK_U(mesh_pipe_inbox_data(1024), 8320u);
164    CHECK_U(mesh_pipe_ring_bytes(1024, 8), 16512u);
165    CHECK_U(mesh_pipe_inbox_bytes(1024, 8), 16640u);
166    CHECK_U(mesh_pipe_inbox_sums(1024), 4224u);
167    CHECK_U(mesh_pipe_inbox_data(1024), 8320u);
168    CHECK_U(mesh_pipe_ring_bytes(1024, 32), 41088u);
169    CHECK_U(mesh_pipe_inbox_bytes(1024, 32), 41216u);
170    CHECK_U(mesh_pipe_inbox_sums(1024), 4224u);
171    CHECK_U(mesh_pipe_inbox_data(1024), 8320u);
172    CHECK_U(mesh_pipe_ring_bytes(1024, 48), 57472u);
173    CHECK_U(mesh_pipe_inbox_bytes(1024, 48), 57600u);
174    CHECK_U(mesh_pipe_inbox_sums(1024), 4224u);
175    CHECK_U(mesh_pipe_inbox_data(1024), 8320u);
176    CHECK_U(mesh_pipe_ring_bytes(1024, 64), 73856u);
177    CHECK_U(mesh_pipe_inbox_bytes(1024, 64), 73984u);
178    CHECK_U(mesh_pipe_inbox_sums(1024), 4224u);
179    CHECK_U(mesh_pipe_inbox_data(1024), 8320u);
180    CHECK_U(mesh_pipe_ring_bytes(1024, 4096), 4202624u);
181    CHECK_U(mesh_pipe_inbox_bytes(1024, 4096), 4202752u);
182    CHECK_U(mesh_pipe_inbox_sums(4096), 16512u);
183    CHECK_U(mesh_pipe_inbox_data(4096), 32896u);
184    CHECK_U(mesh_pipe_ring_bytes(4096, 4), 49280u);
185    CHECK_U(mesh_pipe_inbox_bytes(4096, 4), 49408u);
186    CHECK_U(mesh_pipe_inbox_sums(4096), 16512u);
187    CHECK_U(mesh_pipe_inbox_data(4096), 32896u);
188    CHECK_U(mesh_pipe_ring_bytes(4096, 8), 65664u);
189    CHECK_U(mesh_pipe_inbox_bytes(4096, 8), 65792u);
190    CHECK_U(mesh_pipe_inbox_sums(4096), 16512u);
191    CHECK_U(mesh_pipe_inbox_data(4096), 32896u);
192    CHECK_U(mesh_pipe_ring_bytes(4096, 32), 163968u);
193    CHECK_U(mesh_pipe_inbox_bytes(4096, 32), 164096u);
194    CHECK_U(mesh_pipe_inbox_sums(4096), 16512u);
195    CHECK_U(mesh_pipe_inbox_data(4096), 32896u);
196    CHECK_U(mesh_pipe_ring_bytes(4096, 48), 229504u);
197    CHECK_U(mesh_pipe_inbox_bytes(4096, 48), 229632u);
198    CHECK_U(mesh_pipe_inbox_sums(4096), 16512u);
199    CHECK_U(mesh_pipe_inbox_data(4096), 32896u);
200    CHECK_U(mesh_pipe_ring_bytes(4096, 64), 295040u);
201    CHECK_U(mesh_pipe_inbox_bytes(4096, 64), 295168u);
202    CHECK_U(mesh_pipe_inbox_sums(4096), 16512u);
203    CHECK_U(mesh_pipe_inbox_data(4096), 32896u);
204    CHECK_U(mesh_pipe_ring_bytes(4096, 4096), 16810112u);
205    CHECK_U(mesh_pipe_inbox_bytes(4096, 4096), 16810240u);
206    CHECK_U(mesh_pipe_inbox_sums(65536), 262272u);
207    CHECK_U(mesh_pipe_inbox_data(65536), 524416u);
208    CHECK_U(mesh_pipe_ring_bytes(65536, 4), 786560u);
209    CHECK_U(mesh_pipe_inbox_bytes(65536, 4), 786688u);
210    CHECK_U(mesh_pipe_inbox_sums(65536), 262272u);
211    CHECK_U(mesh_pipe_inbox_data(65536), 524416u);
212    CHECK_U(mesh_pipe_ring_bytes(65536, 8), 1048704u);
213    CHECK_U(mesh_pipe_inbox_bytes(65536, 8), 1048832u);
214    CHECK_U(mesh_pipe_inbox_sums(65536), 262272u);
215    CHECK_U(mesh_pipe_inbox_data(65536), 524416u);
216    CHECK_U(mesh_pipe_ring_bytes(65536, 32), 2621568u);
217    CHECK_U(mesh_pipe_inbox_bytes(65536, 32), 2621696u);
218    CHECK_U(mesh_pipe_inbox_sums(65536), 262272u);
219    CHECK_U(mesh_pipe_inbox_data(65536), 524416u);
220    CHECK_U(mesh_pipe_ring_bytes(65536, 48), 3670144u);
221    CHECK_U(mesh_pipe_inbox_bytes(65536, 48), 3670272u);
222    CHECK_U(mesh_pipe_inbox_sums(65536), 262272u);
223    CHECK_U(mesh_pipe_inbox_data(65536), 524416u);
224    CHECK_U(mesh_pipe_ring_bytes(65536, 64), 4718720u);
225    CHECK_U(mesh_pipe_inbox_bytes(65536, 64), 4718848u);
226    CHECK_U(mesh_pipe_inbox_sums(65536), 262272u);
227    CHECK_U(mesh_pipe_inbox_data(65536), 524416u);
228    CHECK_U(mesh_pipe_ring_bytes(65536, 4096), 268959872u);
229    CHECK_U(mesh_pipe_inbox_bytes(65536, 4096), 268960000u);
230    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 0u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 0u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 0u), 392u); CHECK_U(mesh_pipe_ring_cell(&r, 0u), 400u); }
231    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1u), 396u); CHECK_U(mesh_pipe_ring_cell(&r, 1u), 408u); }
232    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1u), 396u); CHECK_U(mesh_pipe_ring_cell(&r, 1u), 408u); }
233    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 2u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 2u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 2u), 392u); CHECK_U(mesh_pipe_ring_cell(&r, 2u), 400u); }
234    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 3u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 3u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 3u), 396u); CHECK_U(mesh_pipe_ring_cell(&r, 3u), 408u); }
235    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 8u), 8u); CHECK_U(mesh_pipe_ring_full(&r, 8u), 9u); CHECK_U(mesh_pipe_ring_sum(&r, 8u), 392u); CHECK_U(mesh_pipe_ring_cell(&r, 8u), 400u); }
236    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 2147483647u), 2147483646u); CHECK_U(mesh_pipe_ring_full(&r, 2147483647u), 2147483647u); CHECK_U(mesh_pipe_ring_sum(&r, 2147483647u), 396u); CHECK_U(mesh_pipe_ring_cell(&r, 2147483647u), 408u); }
237    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967294u), 4294967294u); CHECK_U(mesh_pipe_ring_full(&r, 4294967294u), 4294967295u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967294u), 392u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967294u), 400u); }
238    { mesh_pipe_ring r = {0x100, 2, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967295u), 4294967294u); CHECK_U(mesh_pipe_ring_full(&r, 4294967295u), 4294967295u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967295u), 396u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967295u), 408u); }
239    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 0u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 0u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 0u), 400u); CHECK_U(mesh_pipe_ring_cell(&r, 0u), 416u); }
240    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1u), 404u); CHECK_U(mesh_pipe_ring_cell(&r, 1u), 424u); }
241    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 3u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 3u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 3u), 412u); CHECK_U(mesh_pipe_ring_cell(&r, 3u), 440u); }
242    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 4u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 4u), 400u); CHECK_U(mesh_pipe_ring_cell(&r, 4u), 416u); }
243    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 5u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 5u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 5u), 404u); CHECK_U(mesh_pipe_ring_cell(&r, 5u), 424u); }
244    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 14u), 6u); CHECK_U(mesh_pipe_ring_full(&r, 14u), 7u); CHECK_U(mesh_pipe_ring_sum(&r, 14u), 408u); CHECK_U(mesh_pipe_ring_cell(&r, 14u), 432u); }
245    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 2147483647u), 1073741822u); CHECK_U(mesh_pipe_ring_full(&r, 2147483647u), 1073741823u); CHECK_U(mesh_pipe_ring_sum(&r, 2147483647u), 412u); CHECK_U(mesh_pipe_ring_cell(&r, 2147483647u), 440u); }
246    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967294u), 2147483646u); CHECK_U(mesh_pipe_ring_full(&r, 4294967294u), 2147483647u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967294u), 408u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967294u), 432u); }
247    { mesh_pipe_ring r = {0x100, 4, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967295u), 2147483646u); CHECK_U(mesh_pipe_ring_full(&r, 4294967295u), 2147483647u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967295u), 412u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967295u), 440u); }
248    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 0u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 0u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 0u), 416u); CHECK_U(mesh_pipe_ring_cell(&r, 0u), 448u); }
249    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1u), 420u); CHECK_U(mesh_pipe_ring_cell(&r, 1u), 456u); }
250    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 7u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 7u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 7u), 444u); CHECK_U(mesh_pipe_ring_cell(&r, 7u), 504u); }
251    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 8u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 8u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 8u), 416u); CHECK_U(mesh_pipe_ring_cell(&r, 8u), 448u); }
252    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 9u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 9u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 9u), 420u); CHECK_U(mesh_pipe_ring_cell(&r, 9u), 456u); }
253    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 26u), 6u); CHECK_U(mesh_pipe_ring_full(&r, 26u), 7u); CHECK_U(mesh_pipe_ring_sum(&r, 26u), 424u); CHECK_U(mesh_pipe_ring_cell(&r, 26u), 464u); }
254    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 2147483647u), 536870910u); CHECK_U(mesh_pipe_ring_full(&r, 2147483647u), 536870911u); CHECK_U(mesh_pipe_ring_sum(&r, 2147483647u), 444u); CHECK_U(mesh_pipe_ring_cell(&r, 2147483647u), 504u); }
255    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967294u), 1073741822u); CHECK_U(mesh_pipe_ring_full(&r, 4294967294u), 1073741823u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967294u), 440u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967294u), 496u); }
256    { mesh_pipe_ring r = {0x100, 8, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967295u), 1073741822u); CHECK_U(mesh_pipe_ring_full(&r, 4294967295u), 1073741823u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967295u), 444u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967295u), 504u); }
257    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 0u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 0u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 0u), 4480u); CHECK_U(mesh_pipe_ring_cell(&r, 0u), 8576u); }
258    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1u), 4484u); CHECK_U(mesh_pipe_ring_cell(&r, 1u), 8584u); }
259    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1023u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1023u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1023u), 8572u); CHECK_U(mesh_pipe_ring_cell(&r, 1023u), 16760u); }
260    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1024u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 1024u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 1024u), 4480u); CHECK_U(mesh_pipe_ring_cell(&r, 1024u), 8576u); }
261    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1025u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 1025u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 1025u), 4484u); CHECK_U(mesh_pipe_ring_cell(&r, 1025u), 8584u); }
262    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 3074u), 6u); CHECK_U(mesh_pipe_ring_full(&r, 3074u), 7u); CHECK_U(mesh_pipe_ring_sum(&r, 3074u), 4488u); CHECK_U(mesh_pipe_ring_cell(&r, 3074u), 8592u); }
263    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 2147483647u), 4194302u); CHECK_U(mesh_pipe_ring_full(&r, 2147483647u), 4194303u); CHECK_U(mesh_pipe_ring_sum(&r, 2147483647u), 8572u); CHECK_U(mesh_pipe_ring_cell(&r, 2147483647u), 16760u); }
264    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967294u), 8388606u); CHECK_U(mesh_pipe_ring_full(&r, 4294967294u), 8388607u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967294u), 8568u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967294u), 16752u); }
265    { mesh_pipe_ring r = {0x100, 1024, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967295u), 8388606u); CHECK_U(mesh_pipe_ring_full(&r, 4294967295u), 8388607u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967295u), 8572u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967295u), 16760u); }
266    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 0u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 0u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 0u), 262528u); CHECK_U(mesh_pipe_ring_cell(&r, 0u), 524672u); }
267    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 1u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 1u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 1u), 262532u); CHECK_U(mesh_pipe_ring_cell(&r, 1u), 524680u); }
268    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 65535u), 0u); CHECK_U(mesh_pipe_ring_full(&r, 65535u), 1u); CHECK_U(mesh_pipe_ring_sum(&r, 65535u), 524668u); CHECK_U(mesh_pipe_ring_cell(&r, 65535u), 1048952u); }
269    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 65536u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 65536u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 65536u), 262528u); CHECK_U(mesh_pipe_ring_cell(&r, 65536u), 524672u); }
270    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 65537u), 2u); CHECK_U(mesh_pipe_ring_full(&r, 65537u), 3u); CHECK_U(mesh_pipe_ring_sum(&r, 65537u), 262532u); CHECK_U(mesh_pipe_ring_cell(&r, 65537u), 524680u); }
271    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 196610u), 6u); CHECK_U(mesh_pipe_ring_full(&r, 196610u), 7u); CHECK_U(mesh_pipe_ring_sum(&r, 196610u), 262536u); CHECK_U(mesh_pipe_ring_cell(&r, 196610u), 524688u); }
272    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 2147483647u), 65534u); CHECK_U(mesh_pipe_ring_full(&r, 2147483647u), 65535u); CHECK_U(mesh_pipe_ring_sum(&r, 2147483647u), 524668u); CHECK_U(mesh_pipe_ring_cell(&r, 2147483647u), 1048952u); }
273    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967294u), 131070u); CHECK_U(mesh_pipe_ring_full(&r, 4294967294u), 131071u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967294u), 524664u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967294u), 1048944u); }
274    { mesh_pipe_ring r = {0x100, 65536, 8}; CHECK_U(mesh_pipe_ring_empty(&r, 4294967295u), 131070u); CHECK_U(mesh_pipe_ring_full(&r, 4294967295u), 131071u); CHECK_U(mesh_pipe_ring_sum(&r, 4294967295u), 524668u); CHECK_U(mesh_pipe_ring_cell(&r, 4294967295u), 1048952u); }
275    return mesh_check_done();
276}