@@ -2,7 +2,7 @@
22
33VAL idris_b8CopyForGC(VM *vm, VAL a) {
44 uint8_t A = a->info.bits8;
5− VAL cl = allocate(vm, sizeof(Closure), 1);
5+ VAL cl = allocate(sizeof(Closure), 1);
66 SETTY(cl, BITS8);
77 cl->info.bits8 = A;
88 return cl;
@@ -10,7 +10,7 @@ VAL idris_b8CopyForGC(VM *vm, VAL a) {
1010
1111VAL idris_b16CopyForGC(VM *vm, VAL a) {
1212 uint16_t A = a->info.bits16;
13− VAL cl = allocate(vm, sizeof(Closure), 1);
13+ VAL cl = allocate(sizeof(Closure), 1);
1414 SETTY(cl, BITS16);
1515 cl->info.bits16 = A;
1616 return cl;
@@ -18,7 +18,7 @@ VAL idris_b16CopyForGC(VM *vm, VAL a) {
1818
1919VAL idris_b32CopyForGC(VM *vm, VAL a) {
2020 uint32_t A = a->info.bits32;
21− VAL cl = allocate(vm, sizeof(Closure), 1);
21+ VAL cl = allocate(sizeof(Closure), 1);
2222 SETTY(cl, BITS32);
2323 cl->info.bits32 = A;
2424 return cl;
@@ -26,7 +26,7 @@ VAL idris_b32CopyForGC(VM *vm, VAL a) {
2626
2727VAL idris_b64CopyForGC(VM *vm, VAL a) {
2828 uint64_t A = a->info.bits64;
29− VAL cl = allocate(vm, sizeof(Closure), 1);
29+ VAL cl = allocate(sizeof(Closure), 1);
3030 SETTY(cl, BITS64);
3131 cl->info.bits64 = A;
3232 return cl;
@@ -34,7 +34,7 @@ VAL idris_b64CopyForGC(VM *vm, VAL a) {
3434
3535VAL idris_b8(VM *vm, VAL a) {
3636 uint8_t A = GETINT(a);
37− VAL cl = allocate(vm, sizeof(Closure), 0);
37+ VAL cl = allocate(sizeof(Closure), 0);
3838 SETTY(cl, BITS8);
3939 cl->info.bits8 = (uint8_t) A;
4040 return cl;
@@ -42,7 +42,7 @@ VAL idris_b8(VM *vm, VAL a) {
4242
4343VAL idris_b16(VM *vm, VAL a) {
4444 uint16_t A = GETINT(a);
45− VAL cl = allocate(vm, sizeof(Closure), 0);
45+ VAL cl = allocate(sizeof(Closure), 0);
4646 SETTY(cl, BITS16);
4747 cl->info.bits16 = (uint16_t) A;
4848 return cl;
@@ -50,7 +50,7 @@ VAL idris_b16(VM *vm, VAL a) {
5050
5151VAL idris_b32(VM *vm, VAL a) {
5252 uint32_t A = GETINT(a);
53− VAL cl = allocate(vm, sizeof(Closure), 0);
53+ VAL cl = allocate(sizeof(Closure), 0);
5454 SETTY(cl, BITS32);
5555 cl->info.bits32 = (uint32_t) A;
5656 return cl;
@@ -58,7 +58,7 @@ VAL idris_b32(VM *vm, VAL a) {
5858
5959VAL idris_b64(VM *vm, VAL a) {
6060 uint64_t A = GETINT(a);
61− VAL cl = allocate(vm, sizeof(Closure), 0);
61+ VAL cl = allocate(sizeof(Closure), 0);
6262 SETTY(cl, BITS64);
6363 cl->info.bits64 = (uint64_t) A;
6464 return cl;
@@ -69,28 +69,28 @@ VAL idris_castB32Int(VM *vm, VAL a) {
6969}
7070
7171VAL idris_b8const(VM *vm, uint8_t a) {
72− VAL cl = allocate(vm, sizeof(Closure), 0);
72+ VAL cl = allocate(sizeof(Closure), 0);
7373 SETTY(cl, BITS8);
7474 cl->info.bits8 = a;
7575 return cl;
7676}
7777
7878VAL idris_b16const(VM *vm, uint16_t a) {
79− VAL cl = allocate(vm, sizeof(Closure), 0);
79+ VAL cl = allocate(sizeof(Closure), 0);
8080 SETTY(cl, BITS16);
8181 cl->info.bits16 = a;
8282 return cl;
8383}
8484
8585VAL idris_b32const(VM *vm, uint32_t a) {
86− VAL cl = allocate(vm, sizeof(Closure), 0);
86+ VAL cl = allocate(sizeof(Closure), 0);
8787 SETTY(cl, BITS32);
8888 cl->info.bits32 = a;
8989 return cl;
9090}
9191
9292VAL idris_b64const(VM *vm, uint64_t a) {
93− VAL cl = allocate(vm, sizeof(Closure), 0);
93+ VAL cl = allocate(sizeof(Closure), 0);
9494 SETTY(cl, BITS64);
9595 cl->info.bits64 = a;
9696 return cl;
@@ -99,7 +99,7 @@ VAL idris_b64const(VM *vm, uint64_t a) {
9999VAL idris_b8Plus(VM *vm, VAL a, VAL b) {
100100 uint8_t A = a->info.bits8;
101101 uint8_t B = b->info.bits8;
102− VAL cl = allocate(vm, sizeof(Closure), 0);
102+ VAL cl = allocate(sizeof(Closure), 0);
103103 SETTY(cl, BITS8);
104104 cl->info.bits8 = A + B;
105105 return cl;
@@ -108,7 +108,7 @@ VAL idris_b8Plus(VM *vm, VAL a, VAL b) {
108108VAL idris_b8Minus(VM *vm, VAL a, VAL b) {
109109 uint8_t A = a->info.bits8;
110110 uint8_t B = b->info.bits8;
111− VAL cl = allocate(vm, sizeof(Closure), 0);
111+ VAL cl = allocate(sizeof(Closure), 0);
112112 SETTY(cl, BITS8);
113113 cl->info.bits8 = A - B;
114114 return cl;
@@ -117,7 +117,7 @@ VAL idris_b8Minus(VM *vm, VAL a, VAL b) {
117117VAL idris_b8Times(VM *vm, VAL a, VAL b) {
118118 uint8_t A = a->info.bits8;
119119 uint8_t B = b->info.bits8;
120− VAL cl = allocate(vm, sizeof(Closure), 0);
120+ VAL cl = allocate(sizeof(Closure), 0);
121121 SETTY(cl, BITS8);
122122 cl->info.bits8 = A * B;
123123 return cl;
@@ -126,7 +126,7 @@ VAL idris_b8Times(VM *vm, VAL a, VAL b) {
126126VAL idris_b8UDiv(VM *vm, VAL a, VAL b) {
127127 uint8_t A = a->info.bits8;
128128 uint8_t B = b->info.bits8;
129− VAL cl = allocate(vm, sizeof(Closure), 0);
129+ VAL cl = allocate(sizeof(Closure), 0);
130130 SETTY(cl, BITS8);
131131 cl->info.bits8 = A / B;
132132 return cl;
@@ -135,7 +135,7 @@ VAL idris_b8UDiv(VM *vm, VAL a, VAL b) {
135135VAL idris_b8SDiv(VM *vm, VAL a, VAL b) {
136136 uint8_t A = a->info.bits8;
137137 uint8_t B = b->info.bits8;
138− VAL cl = allocate(vm, sizeof(Closure), 0);
138+ VAL cl = allocate(sizeof(Closure), 0);
139139 SETTY(cl, BITS8);
140140 cl->info.bits8 = (uint8_t) (((int8_t) A) / ((int8_t) B));
141141 return cl;
@@ -144,7 +144,7 @@ VAL idris_b8SDiv(VM *vm, VAL a, VAL b) {
144144VAL idris_b8URem(VM *vm, VAL a, VAL b) {
145145 uint8_t A = a->info.bits8;
146146 uint8_t B = b->info.bits8;
147− VAL cl = allocate(vm, sizeof(Closure), 0);
147+ VAL cl = allocate(sizeof(Closure), 0);
148148 SETTY(cl, BITS8);
149149 cl->info.bits8 = A % B;
150150 return cl;
@@ -153,7 +153,7 @@ VAL idris_b8URem(VM *vm, VAL a, VAL b) {
153153VAL idris_b8SRem(VM *vm, VAL a, VAL b) {
154154 uint8_t A = a->info.bits8;
155155 uint8_t B = b->info.bits8;
156− VAL cl = allocate(vm, sizeof(Closure), 0);
156+ VAL cl = allocate(sizeof(Closure), 0);
157157 SETTY(cl, BITS8);
158158 cl->info.bits8 = (uint8_t) (((int8_t) A) % ((int8_t) B));
159159 return cl;
@@ -181,7 +181,7 @@ VAL idris_b8Gte(VM *vm, VAL a, VAL b) {
181181
182182VAL idris_b8Compl(VM *vm, VAL a) {
183183 uint8_t A = a->info.bits8;
184− VAL cl = allocate(vm, sizeof(Closure), 0);
184+ VAL cl = allocate(sizeof(Closure), 0);
185185 SETTY(cl, BITS8);
186186 cl->info.bits8 = ~ A;
187187 return cl;
@@ -190,7 +190,7 @@ VAL idris_b8Compl(VM *vm, VAL a) {
190190VAL idris_b8And(VM *vm, VAL a, VAL b) {
191191 uint8_t A = a->info.bits8;
192192 uint8_t B = b->info.bits8;
193− VAL cl = allocate(vm, sizeof(Closure), 0);
193+ VAL cl = allocate(sizeof(Closure), 0);
194194 SETTY(cl, BITS8);
195195 cl->info.bits8 = A & B;
196196 return cl;
@@ -199,7 +199,7 @@ VAL idris_b8And(VM *vm, VAL a, VAL b) {
199199VAL idris_b8Or(VM *vm, VAL a, VAL b) {
200200 uint8_t A = a->info.bits8;
201201 uint8_t B = b->info.bits8;
202− VAL cl = allocate(vm, sizeof(Closure), 0);
202+ VAL cl = allocate(sizeof(Closure), 0);
203203 SETTY(cl, BITS8);
204204 cl->info.bits8 = A | B;
205205 return cl;
@@ -208,7 +208,7 @@ VAL idris_b8Or(VM *vm, VAL a, VAL b) {
208208VAL idris_b8Xor(VM *vm, VAL a, VAL b) {
209209 uint8_t A = a->info.bits8;
210210 uint8_t B = b->info.bits8;
211− VAL cl = allocate(vm, sizeof(Closure), 0);
211+ VAL cl = allocate(sizeof(Closure), 0);
212212 SETTY(cl, BITS8);
213213 cl->info.bits8 = A ^ B;
214214 return cl;
@@ -217,7 +217,7 @@ VAL idris_b8Xor(VM *vm, VAL a, VAL b) {
217217VAL idris_b8Shl(VM *vm, VAL a, VAL b) {
218218 uint8_t A = a->info.bits8;
219219 uint8_t B = b->info.bits8;
220− VAL cl = allocate(vm, sizeof(Closure), 0);
220+ VAL cl = allocate(sizeof(Closure), 0);
221221 SETTY(cl, BITS8);
222222 cl->info.bits8 = A << B;
223223 return cl;
@@ -226,7 +226,7 @@ VAL idris_b8Shl(VM *vm, VAL a, VAL b) {
226226VAL idris_b8LShr(VM *vm, VAL a, VAL b) {
227227 uint8_t A = a->info.bits8;
228228 uint8_t B = b->info.bits8;
229− VAL cl = allocate(vm, sizeof(Closure), 0);
229+ VAL cl = allocate(sizeof(Closure), 0);
230230 SETTY(cl, BITS8);
231231 cl->info.bits8 = A >> B;
232232 return cl;
@@ -235,7 +235,7 @@ VAL idris_b8LShr(VM *vm, VAL a, VAL b) {
235235VAL idris_b8AShr(VM *vm, VAL a, VAL b) {
236236 uint8_t A = a->info.bits8;
237237 uint8_t B = b->info.bits8;
238− VAL cl = allocate(vm, sizeof(Closure), 0);
238+ VAL cl = allocate(sizeof(Closure), 0);
239239 SETTY(cl, BITS8);
240240 cl->info.bits8 = (uint8_t) (((int8_t) A) >> ((int8_t) B));
241241 return cl;
@@ -244,7 +244,7 @@ VAL idris_b8AShr(VM *vm, VAL a, VAL b) {
244244VAL idris_b16Plus(VM *vm, VAL a, VAL b) {
245245 uint16_t A = a->info.bits16;
246246 uint16_t B = b->info.bits16;
247− VAL cl = allocate(vm, sizeof(Closure), 0);
247+ VAL cl = allocate(sizeof(Closure), 0);
248248 SETTY(cl, BITS16);
249249 cl->info.bits16 = A + B;
250250 return cl;
@@ -253,7 +253,7 @@ VAL idris_b16Plus(VM *vm, VAL a, VAL b) {
253253VAL idris_b16Minus(VM *vm, VAL a, VAL b) {
254254 uint16_t A = a->info.bits16;
255255 uint16_t B = b->info.bits16;
256− VAL cl = allocate(vm, sizeof(Closure), 0);
256+ VAL cl = allocate(sizeof(Closure), 0);
257257 SETTY(cl, BITS16);
258258 cl->info.bits16 = A - B;
259259 return cl;
@@ -262,7 +262,7 @@ VAL idris_b16Minus(VM *vm, VAL a, VAL b) {
262262VAL idris_b16Times(VM *vm, VAL a, VAL b) {
263263 uint16_t A = a->info.bits16;
264264 uint16_t B = b->info.bits16;
265− VAL cl = allocate(vm, sizeof(Closure), 0);
265+ VAL cl = allocate(sizeof(Closure), 0);
266266 SETTY(cl, BITS16);
267267 cl->info.bits16 = A * B;
268268 return cl;
@@ -271,7 +271,7 @@ VAL idris_b16Times(VM *vm, VAL a, VAL b) {
271271VAL idris_b16UDiv(VM *vm, VAL a, VAL b) {
272272 uint16_t A = a->info.bits16;
273273 uint16_t B = b->info.bits16;
274− VAL cl = allocate(vm, sizeof(Closure), 0);
274+ VAL cl = allocate(sizeof(Closure), 0);
275275 SETTY(cl, BITS16);
276276 cl->info.bits16 = A / B;
277277 return cl;
@@ -280,7 +280,7 @@ VAL idris_b16UDiv(VM *vm, VAL a, VAL b) {
280280VAL idris_b16SDiv(VM *vm, VAL a, VAL b) {
281281 uint16_t A = a->info.bits16;
282282 uint16_t B = b->info.bits16;
283− VAL cl = allocate(vm, sizeof(Closure), 0);
283+ VAL cl = allocate(sizeof(Closure), 0);
284284 SETTY(cl, BITS16);
285285 cl->info.bits16 = (uint16_t) (((int16_t) A) / ((int16_t) B));
286286 return cl;
@@ -289,7 +289,7 @@ VAL idris_b16SDiv(VM *vm, VAL a, VAL b) {
289289VAL idris_b16URem(VM *vm, VAL a, VAL b) {
290290 uint16_t A = a->info.bits16;
291291 uint16_t B = b->info.bits16;
292− VAL cl = allocate(vm, sizeof(Closure), 0);
292+ VAL cl = allocate(sizeof(Closure), 0);
293293 SETTY(cl, BITS16);
294294 cl->info.bits16 = A % B;
295295 return cl;
@@ -298,7 +298,7 @@ VAL idris_b16URem(VM *vm, VAL a, VAL b) {
298298VAL idris_b16SRem(VM *vm, VAL a, VAL b) {
299299 uint16_t A = a->info.bits16;
300300 uint16_t B = b->info.bits16;
301− VAL cl = allocate(vm, sizeof(Closure), 0);
301+ VAL cl = allocate(sizeof(Closure), 0);
302302 SETTY(cl, BITS16);
303303 cl->info.bits16 = (uint16_t) (((int16_t) A) % ((int16_t) B));
304304 return cl;
@@ -326,7 +326,7 @@ VAL idris_b16Gte(VM *vm, VAL a, VAL b) {
326326
327327VAL idris_b16Compl(VM *vm, VAL a) {
328328 uint16_t A = a->info.bits16;
329− VAL cl = allocate(vm, sizeof(Closure), 0);
329+ VAL cl = allocate(sizeof(Closure), 0);
330330 SETTY(cl, BITS16);
331331 cl->info.bits16 = ~ A;
332332 return cl;
@@ -335,7 +335,7 @@ VAL idris_b16Compl(VM *vm, VAL a) {
335335VAL idris_b16And(VM *vm, VAL a, VAL b) {
336336 uint16_t A = a->info.bits16;
337337 uint16_t B = b->info.bits16;
338− VAL cl = allocate(vm, sizeof(Closure), 0);
338+ VAL cl = allocate(sizeof(Closure), 0);
339339 SETTY(cl, BITS16);
340340 cl->info.bits16 = A & B;
341341 return cl;
@@ -344,7 +344,7 @@ VAL idris_b16And(VM *vm, VAL a, VAL b) {
344344VAL idris_b16Or(VM *vm, VAL a, VAL b) {
345345 uint16_t A = a->info.bits16;
346346 uint16_t B = b->info.bits16;
347− VAL cl = allocate(vm, sizeof(Closure), 0);
347+ VAL cl = allocate(sizeof(Closure), 0);
348348 SETTY(cl, BITS16);
349349 cl->info.bits16 = A | B;
350350 return cl;
@@ -353,7 +353,7 @@ VAL idris_b16Or(VM *vm, VAL a, VAL b) {
353353VAL idris_b16Xor(VM *vm, VAL a, VAL b) {
354354 uint16_t A = a->info.bits16;
355355 uint16_t B = b->info.bits16;
356− VAL cl = allocate(vm, sizeof(Closure), 0);
356+ VAL cl = allocate(sizeof(Closure), 0);
357357 SETTY(cl, BITS16);
358358 cl->info.bits16 = A ^ B;
359359 return cl;
@@ -362,7 +362,7 @@ VAL idris_b16Xor(VM *vm, VAL a, VAL b) {
362362VAL idris_b16Shl(VM *vm, VAL a, VAL b) {
363363 uint16_t A = a->info.bits16;
364364 uint16_t B = b->info.bits16;
365− VAL cl = allocate(vm, sizeof(Closure), 0);
365+ VAL cl = allocate(sizeof(Closure), 0);
366366 SETTY(cl, BITS16);
367367 cl->info.bits16 = A << B;
368368 return cl;
@@ -371,7 +371,7 @@ VAL idris_b16Shl(VM *vm, VAL a, VAL b) {
371371VAL idris_b16LShr(VM *vm, VAL a, VAL b) {
372372 uint16_t A = a->info.bits16;
373373 uint16_t B = b->info.bits16;
374− VAL cl = allocate(vm, sizeof(Closure), 0);
374+ VAL cl = allocate(sizeof(Closure), 0);
375375 SETTY(cl, BITS16);
376376 cl->info.bits16 = A >> B;
377377 return cl;
@@ -380,7 +380,7 @@ VAL idris_b16LShr(VM *vm, VAL a, VAL b) {
380380VAL idris_b16AShr(VM *vm, VAL a, VAL b) {
381381 uint16_t A = a->info.bits16;
382382 uint16_t B = b->info.bits16;
383− VAL cl = allocate(vm, sizeof(Closure), 0);
383+ VAL cl = allocate(sizeof(Closure), 0);
384384 SETTY(cl, BITS16);
385385 cl->info.bits16 = (uint16_t) (((int16_t) A) >> ((int16_t) B));
386386 return cl;
@@ -389,7 +389,7 @@ VAL idris_b16AShr(VM *vm, VAL a, VAL b) {
389389VAL idris_b32Plus(VM *vm, VAL a, VAL b) {
390390 uint32_t A = a->info.bits32;
391391 uint32_t B = b->info.bits32;
392− VAL cl = allocate(vm, sizeof(Closure), 0);
392+ VAL cl = allocate(sizeof(Closure), 0);
393393 SETTY(cl, BITS32);
394394 cl->info.bits32 = A + B;
395395 return cl;
@@ -398,7 +398,7 @@ VAL idris_b32Plus(VM *vm, VAL a, VAL b) {
398398VAL idris_b32Minus(VM *vm, VAL a, VAL b) {
399399 uint32_t A = a->info.bits32;
400400 uint32_t B = b->info.bits32;
401− VAL cl = allocate(vm, sizeof(Closure), 0);
401+ VAL cl = allocate(sizeof(Closure), 0);
402402 SETTY(cl, BITS32);
403403 cl->info.bits32 = A - B;
404404 return cl;
@@ -407,7 +407,7 @@ VAL idris_b32Minus(VM *vm, VAL a, VAL b) {
407407VAL idris_b32Times(VM *vm, VAL a, VAL b) {
408408 uint32_t A = a->info.bits32;
409409 uint32_t B = b->info.bits32;
410− VAL cl = allocate(vm, sizeof(Closure), 0);
410+ VAL cl = allocate(sizeof(Closure), 0);
411411 SETTY(cl, BITS32);
412412 cl->info.bits32 = A * B;
413413 return cl;
@@ -416,7 +416,7 @@ VAL idris_b32Times(VM *vm, VAL a, VAL b) {
416416VAL idris_b32UDiv(VM *vm, VAL a, VAL b) {
417417 uint32_t A = a->info.bits32;
418418 uint32_t B = b->info.bits32;
419− VAL cl = allocate(vm, sizeof(Closure), 0);
419+ VAL cl = allocate(sizeof(Closure), 0);
420420 SETTY(cl, BITS32);
421421 cl->info.bits32 = A / B;
422422 return cl;
@@ -425,7 +425,7 @@ VAL idris_b32UDiv(VM *vm, VAL a, VAL b) {
425425VAL idris_b32SDiv(VM *vm, VAL a, VAL b) {
426426 uint32_t A = a->info.bits32;
427427 uint32_t B = b->info.bits32;
428− VAL cl = allocate(vm, sizeof(Closure), 0);
428+ VAL cl = allocate(sizeof(Closure), 0);
429429 SETTY(cl, BITS32);
430430 cl->info.bits32 = (uint32_t) (((int32_t) A) / ((int32_t) B));
431431 return cl;
@@ -434,7 +434,7 @@ VAL idris_b32SDiv(VM *vm, VAL a, VAL b) {
434434VAL idris_b32URem(VM *vm, VAL a, VAL b) {
435435 uint32_t A = a->info.bits32;
436436 uint32_t B = b->info.bits32;
437− VAL cl = allocate(vm, sizeof(Closure), 0);
437+ VAL cl = allocate(sizeof(Closure), 0);
438438 SETTY(cl, BITS32);
439439 cl->info.bits32 = A % B;
440440 return cl;
@@ -443,7 +443,7 @@ VAL idris_b32URem(VM *vm, VAL a, VAL b) {
443443VAL idris_b32SRem(VM *vm, VAL a, VAL b) {
444444 uint32_t A = a->info.bits32;
445445 uint32_t B = b->info.bits32;
446− VAL cl = allocate(vm, sizeof(Closure), 0);
446+ VAL cl = allocate(sizeof(Closure), 0);
447447 SETTY(cl, BITS32);
448448 cl->info.bits32 = (uint32_t) (((int32_t) A) % ((int32_t) B));
449449 return cl;
@@ -471,7 +471,7 @@ VAL idris_b32Gte(VM *vm, VAL a, VAL b) {
471471
472472VAL idris_b32Compl(VM *vm, VAL a) {
473473 uint32_t A = a->info.bits32;
474− VAL cl = allocate(vm, sizeof(Closure), 0);
474+ VAL cl = allocate(sizeof(Closure), 0);
475475 SETTY(cl, BITS32);
476476 cl->info.bits32 = ~ A;
477477 return cl;
@@ -480,7 +480,7 @@ VAL idris_b32Compl(VM *vm, VAL a) {
480480VAL idris_b32And(VM *vm, VAL a, VAL b) {
481481 uint32_t A = a->info.bits32;
482482 uint32_t B = b->info.bits32;
483− VAL cl = allocate(vm, sizeof(Closure), 0);
483+ VAL cl = allocate(sizeof(Closure), 0);
484484 SETTY(cl, BITS32);
485485 cl->info.bits32 = A & B;
486486 return cl;
@@ -489,7 +489,7 @@ VAL idris_b32And(VM *vm, VAL a, VAL b) {
489489VAL idris_b32Or(VM *vm, VAL a, VAL b) {
490490 uint32_t A = a->info.bits32;
491491 uint32_t B = b->info.bits32;
492− VAL cl = allocate(vm, sizeof(Closure), 0);
492+ VAL cl = allocate(sizeof(Closure), 0);
493493 SETTY(cl, BITS32);
494494 cl->info.bits32 = A | B;
495495 return cl;
@@ -498,7 +498,7 @@ VAL idris_b32Or(VM *vm, VAL a, VAL b) {
498498VAL idris_b32Xor(VM *vm, VAL a, VAL b) {
499499 uint32_t A = a->info.bits32;
500500 uint32_t B = b->info.bits32;
501− VAL cl = allocate(vm, sizeof(Closure), 0);
501+ VAL cl = allocate(sizeof(Closure), 0);
502502 SETTY(cl, BITS32);
503503 cl->info.bits32 = A ^ B;
504504 return cl;
@@ -507,7 +507,7 @@ VAL idris_b32Xor(VM *vm, VAL a, VAL b) {
507507VAL idris_b32Shl(VM *vm, VAL a, VAL b) {
508508 uint32_t A = a->info.bits32;
509509 uint32_t B = b->info.bits32;
510− VAL cl = allocate(vm, sizeof(Closure), 0);
510+ VAL cl = allocate(sizeof(Closure), 0);
511511 SETTY(cl, BITS32);
512512 cl->info.bits32 = A << B;
513513 return cl;
@@ -516,7 +516,7 @@ VAL idris_b32Shl(VM *vm, VAL a, VAL b) {
516516VAL idris_b32LShr(VM *vm, VAL a, VAL b) {
517517 uint32_t A = a->info.bits32;
518518 uint32_t B = b->info.bits32;
519− VAL cl = allocate(vm, sizeof(Closure), 0);
519+ VAL cl = allocate(sizeof(Closure), 0);
520520 SETTY(cl, BITS32);
521521 cl->info.bits32 = A >> B;
522522 return cl;
@@ -525,7 +525,7 @@ VAL idris_b32LShr(VM *vm, VAL a, VAL b) {
525525VAL idris_b32AShr(VM *vm, VAL a, VAL b) {
526526 uint32_t A = a->info.bits32;
527527 uint32_t B = b->info.bits32;
528− VAL cl = allocate(vm, sizeof(Closure), 0);
528+ VAL cl = allocate(sizeof(Closure), 0);
529529 SETTY(cl, BITS32);
530530 cl->info.bits32 = (uint32_t) (((int32_t)A) >> ((int32_t)B));
531531 return cl;
@@ -534,7 +534,7 @@ VAL idris_b32AShr(VM *vm, VAL a, VAL b) {
534534VAL idris_b64Plus(VM *vm, VAL a, VAL b) {
535535 uint64_t A = a->info.bits64;
536536 uint64_t B = b->info.bits64;
537− VAL cl = allocate(vm, sizeof(Closure), 0);
537+ VAL cl = allocate(sizeof(Closure), 0);
538538 SETTY(cl, BITS64);
539539 cl->info.bits64 = A + B;
540540 return cl;
@@ -543,7 +543,7 @@ VAL idris_b64Plus(VM *vm, VAL a, VAL b) {
543543VAL idris_b64Minus(VM *vm, VAL a, VAL b) {
544544 uint64_t A = a->info.bits64;
545545 uint64_t B = b->info.bits64;
546− VAL cl = allocate(vm, sizeof(Closure), 0);
546+ VAL cl = allocate(sizeof(Closure), 0);
547547 SETTY(cl, BITS64);
548548 cl->info.bits64 = A - B;
549549 return cl;
@@ -552,7 +552,7 @@ VAL idris_b64Minus(VM *vm, VAL a, VAL b) {
552552VAL idris_b64Times(VM *vm, VAL a, VAL b) {
553553 uint64_t A = a->info.bits64;
554554 uint64_t B = b->info.bits64;
555− VAL cl = allocate(vm, sizeof(Closure), 0);
555+ VAL cl = allocate(sizeof(Closure), 0);
556556 SETTY(cl, BITS64);
557557 cl->info.bits64 = A * B;
558558 return cl;
@@ -561,7 +561,7 @@ VAL idris_b64Times(VM *vm, VAL a, VAL b) {
561561VAL idris_b64UDiv(VM *vm, VAL a, VAL b) {
562562 uint64_t A = a->info.bits64;
563563 uint64_t B = b->info.bits64;
564− VAL cl = allocate(vm, sizeof(Closure), 0);
564+ VAL cl = allocate(sizeof(Closure), 0);
565565 SETTY(cl, BITS64);
566566 cl->info.bits64 = A / B;
567567 return cl;
@@ -570,7 +570,7 @@ VAL idris_b64UDiv(VM *vm, VAL a, VAL b) {
570570VAL idris_b64SDiv(VM *vm, VAL a, VAL b) {
571571 uint64_t A = a->info.bits64;
572572 uint64_t B = b->info.bits64;
573− VAL cl = allocate(vm, sizeof(Closure), 0);
573+ VAL cl = allocate(sizeof(Closure), 0);
574574 SETTY(cl, BITS64);
575575 cl->info.bits64 = (uint64_t) (((int64_t) A) / ((int64_t) B));
576576 return cl;
@@ -579,7 +579,7 @@ VAL idris_b64SDiv(VM *vm, VAL a, VAL b) {
579579VAL idris_b64URem(VM *vm, VAL a, VAL b) {
580580 uint64_t A = a->info.bits64;
581581 uint64_t B = b->info.bits64;
582− VAL cl = allocate(vm, sizeof(Closure), 0);
582+ VAL cl = allocate(sizeof(Closure), 0);
583583 SETTY(cl, BITS64);
584584 cl->info.bits64 = A % B;
585585 return cl;
@@ -588,7 +588,7 @@ VAL idris_b64URem(VM *vm, VAL a, VAL b) {
588588VAL idris_b64SRem(VM *vm, VAL a, VAL b) {
589589 uint64_t A = a->info.bits64;
590590 uint64_t B = b->info.bits64;
591− VAL cl = allocate(vm, sizeof(Closure), 0);
591+ VAL cl = allocate(sizeof(Closure), 0);
592592 SETTY(cl, BITS64);
593593 cl->info.bits64 = (uint64_t) (((int64_t) A) % ((int64_t) B));
594594 return cl;
@@ -616,7 +616,7 @@ VAL idris_b64Gte(VM *vm, VAL a, VAL b) {
616616
617617VAL idris_b64Compl(VM *vm, VAL a) {
618618 uint64_t A = a->info.bits64;
619− VAL cl = allocate(vm, sizeof(Closure), 0);
619+ VAL cl = allocate(sizeof(Closure), 0);
620620 SETTY(cl, BITS64);
621621 cl->info.bits64 = ~ A;
622622 return cl;
@@ -625,7 +625,7 @@ VAL idris_b64Compl(VM *vm, VAL a) {
625625VAL idris_b64And(VM *vm, VAL a, VAL b) {
626626 uint64_t A = a->info.bits64;
627627 uint64_t B = b->info.bits64;
628− VAL cl = allocate(vm, sizeof(Closure), 0);
628+ VAL cl = allocate(sizeof(Closure), 0);
629629 SETTY(cl, BITS64);
630630 cl->info.bits64 = A & B;
631631 return cl;
@@ -634,7 +634,7 @@ VAL idris_b64And(VM *vm, VAL a, VAL b) {
634634VAL idris_b64Or(VM *vm, VAL a, VAL b) {
635635 uint64_t A = a->info.bits64;
636636 uint64_t B = b->info.bits64;
637− VAL cl = allocate(vm, sizeof(Closure), 0);
637+ VAL cl = allocate(sizeof(Closure), 0);
638638 SETTY(cl, BITS64);
639639 cl->info.bits64 = A | B;
640640 return cl;
@@ -643,7 +643,7 @@ VAL idris_b64Or(VM *vm, VAL a, VAL b) {
643643VAL idris_b64Xor(VM *vm, VAL a, VAL b) {
644644 uint64_t A = a->info.bits64;
645645 uint64_t B = b->info.bits64;
646− VAL cl = allocate(vm, sizeof(Closure), 0);
646+ VAL cl = allocate(sizeof(Closure), 0);
647647 SETTY(cl, BITS64);
648648 cl->info.bits64 = A ^ B;
649649 return cl;
@@ -652,7 +652,7 @@ VAL idris_b64Xor(VM *vm, VAL a, VAL b) {
652652VAL idris_b64Shl(VM *vm, VAL a, VAL b) {
653653 uint64_t A = a->info.bits64;
654654 uint64_t B = b->info.bits64;
655− VAL cl = allocate(vm, sizeof(Closure), 0);
655+ VAL cl = allocate(sizeof(Closure), 0);
656656 SETTY(cl, BITS64);
657657 cl->info.bits64 = A << B;
658658 return cl;
@@ -661,7 +661,7 @@ VAL idris_b64Shl(VM *vm, VAL a, VAL b) {
661661VAL idris_b64LShr(VM *vm, VAL a, VAL b) {
662662 uint64_t A = a->info.bits64;
663663 uint64_t B = b->info.bits64;
664− VAL cl = allocate(vm, sizeof(Closure), 0);
664+ VAL cl = allocate(sizeof(Closure), 0);
665665 SETTY(cl, BITS64);
666666 cl->info.bits64 = A >> B;
667667 return cl;
@@ -670,7 +670,7 @@ VAL idris_b64LShr(VM *vm, VAL a, VAL b) {
670670VAL idris_b64AShr(VM *vm, VAL a, VAL b) {
671671 uint64_t A = a->info.bits64;
672672 uint64_t B = b->info.bits64;
673− VAL cl = allocate(vm, sizeof(Closure), 0);
673+ VAL cl = allocate(sizeof(Closure), 0);
674674 SETTY(cl, BITS64);
675675 cl->info.bits64 = (uint64_t) (((int64_t) A) >> ((int64_t) B));
676676 return cl;
@@ -678,7 +678,7 @@ VAL idris_b64AShr(VM *vm, VAL a, VAL b) {
678678
679679VAL idris_b8Z16(VM *vm, VAL a) {
680680 uint8_t A = a->info.bits8;
681− VAL cl = allocate(vm, sizeof(Closure), 0);
681+ VAL cl = allocate(sizeof(Closure), 0);
682682 SETTY(cl, BITS16);
683683 cl->info.bits16 = (uint16_t) A;
684684 return cl;
@@ -686,7 +686,7 @@ VAL idris_b8Z16(VM *vm, VAL a) {
686686
687687VAL idris_b8Z32(VM *vm, VAL a) {
688688 uint8_t A = a->info.bits8;
689− VAL cl = allocate(vm, sizeof(Closure), 0);
689+ VAL cl = allocate(sizeof(Closure), 0);
690690 SETTY(cl, BITS32);
691691 cl->info.bits32 = (uint32_t) A;
692692 return cl;
@@ -694,7 +694,7 @@ VAL idris_b8Z32(VM *vm, VAL a) {
694694
695695VAL idris_b8Z64(VM *vm, VAL a) {
696696 uint8_t A = a->info.bits8;
697− VAL cl = allocate(vm, sizeof(Closure), 0);
697+ VAL cl = allocate(sizeof(Closure), 0);
698698 SETTY(cl, BITS64);
699699 cl->info.bits64 = (uint64_t) A;
700700 return cl;
@@ -702,7 +702,7 @@ VAL idris_b8Z64(VM *vm, VAL a) {
702702
703703VAL idris_b8S16(VM *vm, VAL a) {
704704 uint8_t A = a->info.bits8;
705− VAL cl = allocate(vm, sizeof(Closure), 0);
705+ VAL cl = allocate(sizeof(Closure), 0);
706706 SETTY(cl, BITS16);
707707 cl->info.bits16 = (uint16_t) (int16_t) (int8_t) A;
708708 return cl;
@@ -710,7 +710,7 @@ VAL idris_b8S16(VM *vm, VAL a) {
710710
711711VAL idris_b8S32(VM *vm, VAL a) {
712712 uint8_t A = a->info.bits8;
713− VAL cl = allocate(vm, sizeof(Closure), 0);
713+ VAL cl = allocate(sizeof(Closure), 0);
714714 SETTY(cl, BITS32);
715715 cl->info.bits32 = (uint32_t) (int32_t) (int8_t) A;
716716 return cl;
@@ -718,7 +718,7 @@ VAL idris_b8S32(VM *vm, VAL a) {
718718
719719VAL idris_b8S64(VM *vm, VAL a) {
720720 uint8_t A = a->info.bits8;
721− VAL cl = allocate(vm, sizeof(Closure), 0);
721+ VAL cl = allocate(sizeof(Closure), 0);
722722 SETTY(cl, BITS64);
723723 cl->info.bits64 = (uint64_t) (int64_t) (int8_t) A;
724724 return cl;
@@ -726,7 +726,7 @@ VAL idris_b8S64(VM *vm, VAL a) {
726726
727727VAL idris_b16Z32(VM *vm, VAL a) {
728728 uint16_t A = a->info.bits16;
729− VAL cl = allocate(vm, sizeof(Closure), 0);
729+ VAL cl = allocate(sizeof(Closure), 0);
730730 SETTY(cl, BITS32);
731731 cl->info.bits32 = (uint32_t) A;
732732 return cl;
@@ -734,7 +734,7 @@ VAL idris_b16Z32(VM *vm, VAL a) {
734734
735735VAL idris_b16Z64(VM *vm, VAL a) {
736736 uint16_t A = a->info.bits16;
737− VAL cl = allocate(vm, sizeof(Closure), 0);
737+ VAL cl = allocate(sizeof(Closure), 0);
738738 SETTY(cl, BITS64);
739739 cl->info.bits64 = (uint64_t) A;
740740 return cl;
@@ -742,7 +742,7 @@ VAL idris_b16Z64(VM *vm, VAL a) {
742742
743743VAL idris_b16S32(VM *vm, VAL a) {
744744 uint16_t A = a->info.bits16;
745− VAL cl = allocate(vm, sizeof(Closure), 0);
745+ VAL cl = allocate(sizeof(Closure), 0);
746746 SETTY(cl, BITS32);
747747 cl->info.bits32 = (uint32_t) (int32_t) (int16_t) A;
748748 return cl;
@@ -750,7 +750,7 @@ VAL idris_b16S32(VM *vm, VAL a) {
750750
751751VAL idris_b16S64(VM *vm, VAL a) {
752752 uint16_t A = a->info.bits16;
753− VAL cl = allocate(vm, sizeof(Closure), 0);
753+ VAL cl = allocate(sizeof(Closure), 0);
754754 SETTY(cl, BITS64);
755755 cl->info.bits64 = (uint64_t) (int64_t) (int16_t) A;
756756 return cl;
@@ -758,7 +758,7 @@ VAL idris_b16S64(VM *vm, VAL a) {
758758
759759VAL idris_b16T8(VM *vm, VAL a) {
760760 uint16_t A = a->info.bits16;
761− VAL cl = allocate(vm, sizeof(Closure), 0);
761+ VAL cl = allocate(sizeof(Closure), 0);
762762 SETTY(cl, BITS8);
763763 cl->info.bits8 = (uint8_t) A;
764764 return cl;
@@ -766,7 +766,7 @@ VAL idris_b16T8(VM *vm, VAL a) {
766766
767767VAL idris_b32Z64(VM *vm, VAL a) {
768768 uint32_t A = a->info.bits32;
769− VAL cl = allocate(vm, sizeof(Closure), 0);
769+ VAL cl = allocate(sizeof(Closure), 0);
770770 SETTY(cl, BITS64);
771771 cl->info.bits64 = (uint64_t) A;
772772 return cl;
@@ -774,7 +774,7 @@ VAL idris_b32Z64(VM *vm, VAL a) {
774774
775775VAL idris_b32S64(VM *vm, VAL a) {
776776 uint32_t A = a->info.bits32;
777− VAL cl = allocate(vm, sizeof(Closure), 0);
777+ VAL cl = allocate(sizeof(Closure), 0);
778778 SETTY(cl, BITS64);
779779 cl->info.bits64 = (uint64_t) (int64_t) (int32_t) A;
780780 return cl;
@@ -782,7 +782,7 @@ VAL idris_b32S64(VM *vm, VAL a) {
782782
783783VAL idris_b32T8(VM *vm, VAL a) {
784784 uint32_t A = a->info.bits32;
785− VAL cl = allocate(vm, sizeof(Closure), 0);
785+ VAL cl = allocate(sizeof(Closure), 0);
786786 SETTY(cl, BITS8);
787787 cl->info.bits8 = (uint8_t) A;
788788 return cl;
@@ -790,7 +790,7 @@ VAL idris_b32T8(VM *vm, VAL a) {
790790
791791VAL idris_b32T16(VM *vm, VAL a) {
792792 uint32_t A = a->info.bits32;
793− VAL cl = allocate(vm, sizeof(Closure), 0);
793+ VAL cl = allocate(sizeof(Closure), 0);
794794 SETTY(cl, BITS16);
795795 cl->info.bits16 = (uint16_t) A;
796796 return cl;
@@ -798,7 +798,7 @@ VAL idris_b32T16(VM *vm, VAL a) {
798798
799799VAL idris_b64T8(VM *vm, VAL a) {
800800 uint64_t A = a->info.bits64;
801− VAL cl = allocate(vm, sizeof(Closure), 0);
801+ VAL cl = allocate(sizeof(Closure), 0);
802802 SETTY(cl, BITS8);
803803 cl->info.bits8 = (uint8_t) A;
804804 return cl;
@@ -806,7 +806,7 @@ VAL idris_b64T8(VM *vm, VAL a) {
806806
807807VAL idris_b64T16(VM *vm, VAL a) {
808808 uint64_t A = a->info.bits64;
809− VAL cl = allocate(vm, sizeof(Closure), 0);
809+ VAL cl = allocate(sizeof(Closure), 0);
810810 SETTY(cl, BITS16);
811811 cl->info.bits16 = (uint16_t) A;
812812 return cl;
@@ -814,7 +814,7 @@ VAL idris_b64T16(VM *vm, VAL a) {
814814
815815VAL idris_b64T32(VM *vm, VAL a) {
816816 uint64_t A = a->info.bits64;
817− VAL cl = allocate(vm, sizeof(Closure), 0);
817+ VAL cl = allocate(sizeof(Closure), 0);
818818 SETTY(cl, BITS32);
819819 cl->info.bits32 = (uint32_t) A;
820820 return cl;