@@ -2,7 +2,7 @@
3VAL idris_b8CopyForGC(VM *vm, VAL a) {
3VAL idris_b8CopyForGC(VM *vm, VAL a) {
4 uint8_t A = a->info.bits8;
4 uint8_t A = a->info.bits8;
5− VAL cl = allocate(vm, sizeof(Closure), 1);
5+ VAL cl = allocate(sizeof(Closure), 1);
6 SETTY(cl, BITS8);
6 SETTY(cl, BITS8);
7 cl->info.bits8 = A;
7 cl->info.bits8 = A;
@@ -10,7 +10,7 @@ VAL idris_b8CopyForGC(VM *vm, VAL a) {
11VAL idris_b16CopyForGC(VM *vm, VAL a) {
11VAL idris_b16CopyForGC(VM *vm, VAL a) {
12 uint16_t A = a->info.bits16;
12 uint16_t A = a->info.bits16;
13− VAL cl = allocate(vm, sizeof(Closure), 1);
13+ VAL cl = allocate(sizeof(Closure), 1);
14 SETTY(cl, BITS16);
14 SETTY(cl, BITS16);
15 cl->info.bits16 = A;
15 cl->info.bits16 = A;
16 return cl;
16 return cl;
@@ -18,7 +18,7 @@ VAL idris_b16CopyForGC(VM *vm, VAL a) {
19VAL idris_b32CopyForGC(VM *vm, VAL a) {
19VAL idris_b32CopyForGC(VM *vm, VAL a) {
20 uint32_t A = a->info.bits32;
20 uint32_t A = a->info.bits32;
21− VAL cl = allocate(vm, sizeof(Closure), 1);
21+ VAL cl = allocate(sizeof(Closure), 1);
22 SETTY(cl, BITS32);
22 SETTY(cl, BITS32);
23 cl->info.bits32 = A;
23 cl->info.bits32 = A;
24 return cl;
24 return cl;
@@ -26,7 +26,7 @@ VAL idris_b32CopyForGC(VM *vm, VAL a) {
27VAL idris_b64CopyForGC(VM *vm, VAL a) {
27VAL idris_b64CopyForGC(VM *vm, VAL a) {
28 uint64_t A = a->info.bits64;
28 uint64_t A = a->info.bits64;
29− VAL cl = allocate(vm, sizeof(Closure), 1);
29+ VAL cl = allocate(sizeof(Closure), 1);
30 SETTY(cl, BITS64);
30 SETTY(cl, BITS64);
31 cl->info.bits64 = A;
31 cl->info.bits64 = A;
32 return cl;
32 return cl;
@@ -34,7 +34,7 @@ VAL idris_b64CopyForGC(VM *vm, VAL a) {
35VAL idris_b8(VM *vm, VAL a) {
35VAL idris_b8(VM *vm, VAL a) {
36 uint8_t A = GETINT(a);
36 uint8_t A = GETINT(a);
37− VAL cl = allocate(vm, sizeof(Closure), 0);
37+ VAL cl = allocate(sizeof(Closure), 0);
38 SETTY(cl, BITS8);
38 SETTY(cl, BITS8);
39 cl->info.bits8 = (uint8_t) A;
39 cl->info.bits8 = (uint8_t) A;
40 return cl;
40 return cl;
@@ -42,7 +42,7 @@ VAL idris_b8(VM *vm, VAL a) {
43VAL idris_b16(VM *vm, VAL a) {
43VAL idris_b16(VM *vm, VAL a) {
44 uint16_t A = GETINT(a);
44 uint16_t A = GETINT(a);
45− VAL cl = allocate(vm, sizeof(Closure), 0);
45+ VAL cl = allocate(sizeof(Closure), 0);
46 SETTY(cl, BITS16);
46 SETTY(cl, BITS16);
47 cl->info.bits16 = (uint16_t) A;
47 cl->info.bits16 = (uint16_t) A;
48 return cl;
48 return cl;
@@ -50,7 +50,7 @@ VAL idris_b16(VM *vm, VAL a) {
51VAL idris_b32(VM *vm, VAL a) {
51VAL idris_b32(VM *vm, VAL a) {
52 uint32_t A = GETINT(a);
52 uint32_t A = GETINT(a);
53− VAL cl = allocate(vm, sizeof(Closure), 0);
53+ VAL cl = allocate(sizeof(Closure), 0);
54 SETTY(cl, BITS32);
54 SETTY(cl, BITS32);
55 cl->info.bits32 = (uint32_t) A;
55 cl->info.bits32 = (uint32_t) A;
56 return cl;
56 return cl;
@@ -58,7 +58,7 @@ VAL idris_b32(VM *vm, VAL a) {
59VAL idris_b64(VM *vm, VAL a) {
59VAL idris_b64(VM *vm, VAL a) {
60 uint64_t A = GETINT(a);
60 uint64_t A = GETINT(a);
61− VAL cl = allocate(vm, sizeof(Closure), 0);
61+ VAL cl = allocate(sizeof(Closure), 0);
62 SETTY(cl, BITS64);
62 SETTY(cl, BITS64);
63 cl->info.bits64 = (uint64_t) A;
63 cl->info.bits64 = (uint64_t) A;
64 return cl;
64 return cl;
@@ -69,28 +69,28 @@ VAL idris_castB32Int(VM *vm, VAL a) {
71VAL idris_b8const(VM *vm, uint8_t a) {
71VAL idris_b8const(VM *vm, uint8_t a) {
72− VAL cl = allocate(vm, sizeof(Closure), 0);
72+ VAL cl = allocate(sizeof(Closure), 0);
73 SETTY(cl, BITS8);
73 SETTY(cl, BITS8);
74 cl->info.bits8 = a;
74 cl->info.bits8 = a;
75 return cl;
75 return cl;
78VAL idris_b16const(VM *vm, uint16_t a) {
78VAL idris_b16const(VM *vm, uint16_t a) {
79− VAL cl = allocate(vm, sizeof(Closure), 0);
79+ VAL cl = allocate(sizeof(Closure), 0);
80 SETTY(cl, BITS16);
80 SETTY(cl, BITS16);
81 cl->info.bits16 = a;
81 cl->info.bits16 = a;
82 return cl;
82 return cl;
85VAL idris_b32const(VM *vm, uint32_t a) {
85VAL idris_b32const(VM *vm, uint32_t a) {
86− VAL cl = allocate(vm, sizeof(Closure), 0);
86+ VAL cl = allocate(sizeof(Closure), 0);
87 SETTY(cl, BITS32);
87 SETTY(cl, BITS32);
88 cl->info.bits32 = a;
88 cl->info.bits32 = a;
89 return cl;
89 return cl;
92VAL idris_b64const(VM *vm, uint64_t a) {
92VAL idris_b64const(VM *vm, uint64_t a) {
93− VAL cl = allocate(vm, sizeof(Closure), 0);
93+ VAL cl = allocate(sizeof(Closure), 0);
94 SETTY(cl, BITS64);
94 SETTY(cl, BITS64);
95 cl->info.bits64 = a;
95 cl->info.bits64 = a;
96 return cl;
96 return cl;
@@ -99,7 +99,7 @@ VAL idris_b64const(VM *vm, uint64_t a) {
99VAL idris_b8Plus(VM *vm, VAL a, VAL b) {
99VAL idris_b8Plus(VM *vm, VAL a, VAL b) {
100 uint8_t A = a->info.bits8;
100 uint8_t A = a->info.bits8;
101 uint8_t B = b->info.bits8;
101 uint8_t B = b->info.bits8;
102− VAL cl = allocate(vm, sizeof(Closure), 0);
102+ VAL cl = allocate(sizeof(Closure), 0);
103 SETTY(cl, BITS8);
103 SETTY(cl, BITS8);
104 cl->info.bits8 = A + B;
104 cl->info.bits8 = A + B;
105 return cl;
105 return cl;
@@ -108,7 +108,7 @@ VAL idris_b8Plus(VM *vm, VAL a, VAL b) {
108VAL idris_b8Minus(VM *vm, VAL a, VAL b) {
108VAL idris_b8Minus(VM *vm, VAL a, VAL b) {
109 uint8_t A = a->info.bits8;
109 uint8_t A = a->info.bits8;
110 uint8_t B = b->info.bits8;
110 uint8_t B = b->info.bits8;
111− VAL cl = allocate(vm, sizeof(Closure), 0);
111+ VAL cl = allocate(sizeof(Closure), 0);
112 SETTY(cl, BITS8);
112 SETTY(cl, BITS8);
113 cl->info.bits8 = A - B;
113 cl->info.bits8 = A - B;
114 return cl;
114 return cl;
@@ -117,7 +117,7 @@ VAL idris_b8Minus(VM *vm, VAL a, VAL b) {
117VAL idris_b8Times(VM *vm, VAL a, VAL b) {
117VAL idris_b8Times(VM *vm, VAL a, VAL b) {
118 uint8_t A = a->info.bits8;
118 uint8_t A = a->info.bits8;
119 uint8_t B = b->info.bits8;
119 uint8_t B = b->info.bits8;
120− VAL cl = allocate(vm, sizeof(Closure), 0);
120+ VAL cl = allocate(sizeof(Closure), 0);
121 SETTY(cl, BITS8);
121 SETTY(cl, BITS8);
122 cl->info.bits8 = A * B;
122 cl->info.bits8 = A * B;
123 return cl;
123 return cl;
@@ -126,7 +126,7 @@ VAL idris_b8Times(VM *vm, VAL a, VAL b) {
126VAL idris_b8UDiv(VM *vm, VAL a, VAL b) {
126VAL idris_b8UDiv(VM *vm, VAL a, VAL b) {
127 uint8_t A = a->info.bits8;
127 uint8_t A = a->info.bits8;
128 uint8_t B = b->info.bits8;
128 uint8_t B = b->info.bits8;
129− VAL cl = allocate(vm, sizeof(Closure), 0);
129+ VAL cl = allocate(sizeof(Closure), 0);
130 SETTY(cl, BITS8);
130 SETTY(cl, BITS8);
131 cl->info.bits8 = A / B;
131 cl->info.bits8 = A / B;
132 return cl;
132 return cl;
@@ -135,7 +135,7 @@ VAL idris_b8UDiv(VM *vm, VAL a, VAL b) {
135VAL idris_b8SDiv(VM *vm, VAL a, VAL b) {
135VAL idris_b8SDiv(VM *vm, VAL a, VAL b) {
136 uint8_t A = a->info.bits8;
136 uint8_t A = a->info.bits8;
137 uint8_t B = b->info.bits8;
137 uint8_t B = b->info.bits8;
138− VAL cl = allocate(vm, sizeof(Closure), 0);
138+ VAL cl = allocate(sizeof(Closure), 0);
139 SETTY(cl, BITS8);
139 SETTY(cl, BITS8);
140 cl->info.bits8 = (uint8_t) (((int8_t) A) / ((int8_t) B));
140 cl->info.bits8 = (uint8_t) (((int8_t) A) / ((int8_t) B));
141 return cl;
141 return cl;
@@ -144,7 +144,7 @@ VAL idris_b8SDiv(VM *vm, VAL a, VAL b) {
144VAL idris_b8URem(VM *vm, VAL a, VAL b) {
144VAL idris_b8URem(VM *vm, VAL a, VAL b) {
145 uint8_t A = a->info.bits8;
145 uint8_t A = a->info.bits8;
146 uint8_t B = b->info.bits8;
146 uint8_t B = b->info.bits8;
147− VAL cl = allocate(vm, sizeof(Closure), 0);
147+ VAL cl = allocate(sizeof(Closure), 0);
148 SETTY(cl, BITS8);
148 SETTY(cl, BITS8);
149 cl->info.bits8 = A % B;
149 cl->info.bits8 = A % B;
150 return cl;
150 return cl;
@@ -153,7 +153,7 @@ VAL idris_b8URem(VM *vm, VAL a, VAL b) {
153VAL idris_b8SRem(VM *vm, VAL a, VAL b) {
153VAL idris_b8SRem(VM *vm, VAL a, VAL b) {
154 uint8_t A = a->info.bits8;
154 uint8_t A = a->info.bits8;
155 uint8_t B = b->info.bits8;
155 uint8_t B = b->info.bits8;
156− VAL cl = allocate(vm, sizeof(Closure), 0);
156+ VAL cl = allocate(sizeof(Closure), 0);
157 SETTY(cl, BITS8);
157 SETTY(cl, BITS8);
158 cl->info.bits8 = (uint8_t) (((int8_t) A) % ((int8_t) B));
158 cl->info.bits8 = (uint8_t) (((int8_t) A) % ((int8_t) B));
159 return cl;
159 return cl;
@@ -181,7 +181,7 @@ VAL idris_b8Gte(VM *vm, VAL a, VAL b) {
182VAL idris_b8Compl(VM *vm, VAL a) {
182VAL idris_b8Compl(VM *vm, VAL a) {
183 uint8_t A = a->info.bits8;
183 uint8_t A = a->info.bits8;
184− VAL cl = allocate(vm, sizeof(Closure), 0);
184+ VAL cl = allocate(sizeof(Closure), 0);
185 SETTY(cl, BITS8);
185 SETTY(cl, BITS8);
186 cl->info.bits8 = ~ A;
186 cl->info.bits8 = ~ A;
187 return cl;
187 return cl;
@@ -190,7 +190,7 @@ VAL idris_b8Compl(VM *vm, VAL a) {
190VAL idris_b8And(VM *vm, VAL a, VAL b) {
190VAL idris_b8And(VM *vm, VAL a, VAL b) {
191 uint8_t A = a->info.bits8;
191 uint8_t A = a->info.bits8;
192 uint8_t B = b->info.bits8;
192 uint8_t B = b->info.bits8;
193− VAL cl = allocate(vm, sizeof(Closure), 0);
193+ VAL cl = allocate(sizeof(Closure), 0);
194 SETTY(cl, BITS8);
194 SETTY(cl, BITS8);
195 cl->info.bits8 = A & B;
195 cl->info.bits8 = A & B;
196 return cl;
196 return cl;
@@ -199,7 +199,7 @@ VAL idris_b8And(VM *vm, VAL a, VAL b) {
199VAL idris_b8Or(VM *vm, VAL a, VAL b) {
199VAL idris_b8Or(VM *vm, VAL a, VAL b) {
200 uint8_t A = a->info.bits8;
200 uint8_t A = a->info.bits8;
201 uint8_t B = b->info.bits8;
201 uint8_t B = b->info.bits8;
202− VAL cl = allocate(vm, sizeof(Closure), 0);
202+ VAL cl = allocate(sizeof(Closure), 0);
203 SETTY(cl, BITS8);
203 SETTY(cl, BITS8);
204 cl->info.bits8 = A | B;
204 cl->info.bits8 = A | B;
205 return cl;
205 return cl;
@@ -208,7 +208,7 @@ VAL idris_b8Or(VM *vm, VAL a, VAL b) {
208VAL idris_b8Xor(VM *vm, VAL a, VAL b) {
208VAL idris_b8Xor(VM *vm, VAL a, VAL b) {
209 uint8_t A = a->info.bits8;
209 uint8_t A = a->info.bits8;
210 uint8_t B = b->info.bits8;
210 uint8_t B = b->info.bits8;
211− VAL cl = allocate(vm, sizeof(Closure), 0);
211+ VAL cl = allocate(sizeof(Closure), 0);
212 SETTY(cl, BITS8);
212 SETTY(cl, BITS8);
213 cl->info.bits8 = A ^ B;
213 cl->info.bits8 = A ^ B;
214 return cl;
214 return cl;
@@ -217,7 +217,7 @@ VAL idris_b8Xor(VM *vm, VAL a, VAL b) {
217VAL idris_b8Shl(VM *vm, VAL a, VAL b) {
217VAL idris_b8Shl(VM *vm, VAL a, VAL b) {
218 uint8_t A = a->info.bits8;
218 uint8_t A = a->info.bits8;
219 uint8_t B = b->info.bits8;
219 uint8_t B = b->info.bits8;
220− VAL cl = allocate(vm, sizeof(Closure), 0);
220+ VAL cl = allocate(sizeof(Closure), 0);
221 SETTY(cl, BITS8);
221 SETTY(cl, BITS8);
222 cl->info.bits8 = A << B;
222 cl->info.bits8 = A << B;
223 return cl;
223 return cl;
@@ -226,7 +226,7 @@ VAL idris_b8Shl(VM *vm, VAL a, VAL b) {
226VAL idris_b8LShr(VM *vm, VAL a, VAL b) {
226VAL idris_b8LShr(VM *vm, VAL a, VAL b) {
227 uint8_t A = a->info.bits8;
227 uint8_t A = a->info.bits8;
228 uint8_t B = b->info.bits8;
228 uint8_t B = b->info.bits8;
229− VAL cl = allocate(vm, sizeof(Closure), 0);
229+ VAL cl = allocate(sizeof(Closure), 0);
230 SETTY(cl, BITS8);
230 SETTY(cl, BITS8);
231 cl->info.bits8 = A >> B;
231 cl->info.bits8 = A >> B;
232 return cl;
232 return cl;
@@ -235,7 +235,7 @@ VAL idris_b8LShr(VM *vm, VAL a, VAL b) {
235VAL idris_b8AShr(VM *vm, VAL a, VAL b) {
235VAL idris_b8AShr(VM *vm, VAL a, VAL b) {
236 uint8_t A = a->info.bits8;
236 uint8_t A = a->info.bits8;
237 uint8_t B = b->info.bits8;
237 uint8_t B = b->info.bits8;
238− VAL cl = allocate(vm, sizeof(Closure), 0);
238+ VAL cl = allocate(sizeof(Closure), 0);
239 SETTY(cl, BITS8);
239 SETTY(cl, BITS8);
240 cl->info.bits8 = (uint8_t) (((int8_t) A) >> ((int8_t) B));
240 cl->info.bits8 = (uint8_t) (((int8_t) A) >> ((int8_t) B));
241 return cl;
241 return cl;
@@ -244,7 +244,7 @@ VAL idris_b8AShr(VM *vm, VAL a, VAL b) {
244VAL idris_b16Plus(VM *vm, VAL a, VAL b) {
244VAL idris_b16Plus(VM *vm, VAL a, VAL b) {
245 uint16_t A = a->info.bits16;
245 uint16_t A = a->info.bits16;
246 uint16_t B = b->info.bits16;
246 uint16_t B = b->info.bits16;
247− VAL cl = allocate(vm, sizeof(Closure), 0);
247+ VAL cl = allocate(sizeof(Closure), 0);
248 SETTY(cl, BITS16);
248 SETTY(cl, BITS16);
249 cl->info.bits16 = A + B;
249 cl->info.bits16 = A + B;
250 return cl;
250 return cl;
@@ -253,7 +253,7 @@ VAL idris_b16Plus(VM *vm, VAL a, VAL b) {
253VAL idris_b16Minus(VM *vm, VAL a, VAL b) {
253VAL idris_b16Minus(VM *vm, VAL a, VAL b) {
254 uint16_t A = a->info.bits16;
254 uint16_t A = a->info.bits16;
255 uint16_t B = b->info.bits16;
255 uint16_t B = b->info.bits16;
256− VAL cl = allocate(vm, sizeof(Closure), 0);
256+ VAL cl = allocate(sizeof(Closure), 0);
257 SETTY(cl, BITS16);
257 SETTY(cl, BITS16);
258 cl->info.bits16 = A - B;
258 cl->info.bits16 = A - B;
259 return cl;
259 return cl;
@@ -262,7 +262,7 @@ VAL idris_b16Minus(VM *vm, VAL a, VAL b) {
262VAL idris_b16Times(VM *vm, VAL a, VAL b) {
262VAL idris_b16Times(VM *vm, VAL a, VAL b) {
263 uint16_t A = a->info.bits16;
263 uint16_t A = a->info.bits16;
264 uint16_t B = b->info.bits16;
264 uint16_t B = b->info.bits16;
265− VAL cl = allocate(vm, sizeof(Closure), 0);
265+ VAL cl = allocate(sizeof(Closure), 0);
266 SETTY(cl, BITS16);
266 SETTY(cl, BITS16);
267 cl->info.bits16 = A * B;
267 cl->info.bits16 = A * B;
268 return cl;
268 return cl;
@@ -271,7 +271,7 @@ VAL idris_b16Times(VM *vm, VAL a, VAL b) {
271VAL idris_b16UDiv(VM *vm, VAL a, VAL b) {
271VAL idris_b16UDiv(VM *vm, VAL a, VAL b) {
272 uint16_t A = a->info.bits16;
272 uint16_t A = a->info.bits16;
273 uint16_t B = b->info.bits16;
273 uint16_t B = b->info.bits16;
274− VAL cl = allocate(vm, sizeof(Closure), 0);
274+ VAL cl = allocate(sizeof(Closure), 0);
275 SETTY(cl, BITS16);
275 SETTY(cl, BITS16);
276 cl->info.bits16 = A / B;
276 cl->info.bits16 = A / B;
277 return cl;
277 return cl;
@@ -280,7 +280,7 @@ VAL idris_b16UDiv(VM *vm, VAL a, VAL b) {
280VAL idris_b16SDiv(VM *vm, VAL a, VAL b) {
280VAL idris_b16SDiv(VM *vm, VAL a, VAL b) {
281 uint16_t A = a->info.bits16;
281 uint16_t A = a->info.bits16;
282 uint16_t B = b->info.bits16;
282 uint16_t B = b->info.bits16;
283− VAL cl = allocate(vm, sizeof(Closure), 0);
283+ VAL cl = allocate(sizeof(Closure), 0);
284 SETTY(cl, BITS16);
284 SETTY(cl, BITS16);
285 cl->info.bits16 = (uint16_t) (((int16_t) A) / ((int16_t) B));
285 cl->info.bits16 = (uint16_t) (((int16_t) A) / ((int16_t) B));
286 return cl;
286 return cl;
@@ -289,7 +289,7 @@ VAL idris_b16SDiv(VM *vm, VAL a, VAL b) {
289VAL idris_b16URem(VM *vm, VAL a, VAL b) {
289VAL idris_b16URem(VM *vm, VAL a, VAL b) {
290 uint16_t A = a->info.bits16;
290 uint16_t A = a->info.bits16;
291 uint16_t B = b->info.bits16;
291 uint16_t B = b->info.bits16;
292− VAL cl = allocate(vm, sizeof(Closure), 0);
292+ VAL cl = allocate(sizeof(Closure), 0);
293 SETTY(cl, BITS16);
293 SETTY(cl, BITS16);
294 cl->info.bits16 = A % B;
294 cl->info.bits16 = A % B;
295 return cl;
295 return cl;
@@ -298,7 +298,7 @@ VAL idris_b16URem(VM *vm, VAL a, VAL b) {
298VAL idris_b16SRem(VM *vm, VAL a, VAL b) {
298VAL idris_b16SRem(VM *vm, VAL a, VAL b) {
299 uint16_t A = a->info.bits16;
299 uint16_t A = a->info.bits16;
300 uint16_t B = b->info.bits16;
300 uint16_t B = b->info.bits16;
301− VAL cl = allocate(vm, sizeof(Closure), 0);
301+ VAL cl = allocate(sizeof(Closure), 0);
302 SETTY(cl, BITS16);
302 SETTY(cl, BITS16);
303 cl->info.bits16 = (uint16_t) (((int16_t) A) % ((int16_t) B));
303 cl->info.bits16 = (uint16_t) (((int16_t) A) % ((int16_t) B));
304 return cl;
304 return cl;
@@ -326,7 +326,7 @@ VAL idris_b16Gte(VM *vm, VAL a, VAL b) {
327VAL idris_b16Compl(VM *vm, VAL a) {
327VAL idris_b16Compl(VM *vm, VAL a) {
328 uint16_t A = a->info.bits16;
328 uint16_t A = a->info.bits16;
329− VAL cl = allocate(vm, sizeof(Closure), 0);
329+ VAL cl = allocate(sizeof(Closure), 0);
330 SETTY(cl, BITS16);
330 SETTY(cl, BITS16);
331 cl->info.bits16 = ~ A;
331 cl->info.bits16 = ~ A;
332 return cl;
332 return cl;
@@ -335,7 +335,7 @@ VAL idris_b16Compl(VM *vm, VAL a) {
335VAL idris_b16And(VM *vm, VAL a, VAL b) {
335VAL idris_b16And(VM *vm, VAL a, VAL b) {
336 uint16_t A = a->info.bits16;
336 uint16_t A = a->info.bits16;
337 uint16_t B = b->info.bits16;
337 uint16_t B = b->info.bits16;
338− VAL cl = allocate(vm, sizeof(Closure), 0);
338+ VAL cl = allocate(sizeof(Closure), 0);
339 SETTY(cl, BITS16);
339 SETTY(cl, BITS16);
340 cl->info.bits16 = A & B;
340 cl->info.bits16 = A & B;
341 return cl;
341 return cl;
@@ -344,7 +344,7 @@ VAL idris_b16And(VM *vm, VAL a, VAL b) {
344VAL idris_b16Or(VM *vm, VAL a, VAL b) {
344VAL idris_b16Or(VM *vm, VAL a, VAL b) {
345 uint16_t A = a->info.bits16;
345 uint16_t A = a->info.bits16;
346 uint16_t B = b->info.bits16;
346 uint16_t B = b->info.bits16;
347− VAL cl = allocate(vm, sizeof(Closure), 0);
347+ VAL cl = allocate(sizeof(Closure), 0);
348 SETTY(cl, BITS16);
348 SETTY(cl, BITS16);
349 cl->info.bits16 = A | B;
349 cl->info.bits16 = A | B;
350 return cl;
350 return cl;
@@ -353,7 +353,7 @@ VAL idris_b16Or(VM *vm, VAL a, VAL b) {
353VAL idris_b16Xor(VM *vm, VAL a, VAL b) {
353VAL idris_b16Xor(VM *vm, VAL a, VAL b) {
354 uint16_t A = a->info.bits16;
354 uint16_t A = a->info.bits16;
355 uint16_t B = b->info.bits16;
355 uint16_t B = b->info.bits16;
356− VAL cl = allocate(vm, sizeof(Closure), 0);
356+ VAL cl = allocate(sizeof(Closure), 0);
357 SETTY(cl, BITS16);
357 SETTY(cl, BITS16);
358 cl->info.bits16 = A ^ B;
358 cl->info.bits16 = A ^ B;
359 return cl;
359 return cl;
@@ -362,7 +362,7 @@ VAL idris_b16Xor(VM *vm, VAL a, VAL b) {
362VAL idris_b16Shl(VM *vm, VAL a, VAL b) {
362VAL idris_b16Shl(VM *vm, VAL a, VAL b) {
363 uint16_t A = a->info.bits16;
363 uint16_t A = a->info.bits16;
364 uint16_t B = b->info.bits16;
364 uint16_t B = b->info.bits16;
365− VAL cl = allocate(vm, sizeof(Closure), 0);
365+ VAL cl = allocate(sizeof(Closure), 0);
366 SETTY(cl, BITS16);
366 SETTY(cl, BITS16);
367 cl->info.bits16 = A << B;
367 cl->info.bits16 = A << B;
368 return cl;
368 return cl;
@@ -371,7 +371,7 @@ VAL idris_b16Shl(VM *vm, VAL a, VAL b) {
371VAL idris_b16LShr(VM *vm, VAL a, VAL b) {
371VAL idris_b16LShr(VM *vm, VAL a, VAL b) {
372 uint16_t A = a->info.bits16;
372 uint16_t A = a->info.bits16;
373 uint16_t B = b->info.bits16;
373 uint16_t B = b->info.bits16;
374− VAL cl = allocate(vm, sizeof(Closure), 0);
374+ VAL cl = allocate(sizeof(Closure), 0);
375 SETTY(cl, BITS16);
375 SETTY(cl, BITS16);
376 cl->info.bits16 = A >> B;
376 cl->info.bits16 = A >> B;
377 return cl;
377 return cl;
@@ -380,7 +380,7 @@ VAL idris_b16LShr(VM *vm, VAL a, VAL b) {
380VAL idris_b16AShr(VM *vm, VAL a, VAL b) {
380VAL idris_b16AShr(VM *vm, VAL a, VAL b) {
381 uint16_t A = a->info.bits16;
381 uint16_t A = a->info.bits16;
382 uint16_t B = b->info.bits16;
382 uint16_t B = b->info.bits16;
383− VAL cl = allocate(vm, sizeof(Closure), 0);
383+ VAL cl = allocate(sizeof(Closure), 0);
384 SETTY(cl, BITS16);
384 SETTY(cl, BITS16);
385 cl->info.bits16 = (uint16_t) (((int16_t) A) >> ((int16_t) B));
385 cl->info.bits16 = (uint16_t) (((int16_t) A) >> ((int16_t) B));
386 return cl;
386 return cl;
@@ -389,7 +389,7 @@ VAL idris_b16AShr(VM *vm, VAL a, VAL b) {
389VAL idris_b32Plus(VM *vm, VAL a, VAL b) {
389VAL idris_b32Plus(VM *vm, VAL a, VAL b) {
390 uint32_t A = a->info.bits32;
390 uint32_t A = a->info.bits32;
391 uint32_t B = b->info.bits32;
391 uint32_t B = b->info.bits32;
392− VAL cl = allocate(vm, sizeof(Closure), 0);
392+ VAL cl = allocate(sizeof(Closure), 0);
393 SETTY(cl, BITS32);
393 SETTY(cl, BITS32);
394 cl->info.bits32 = A + B;
394 cl->info.bits32 = A + B;
395 return cl;
395 return cl;
@@ -398,7 +398,7 @@ VAL idris_b32Plus(VM *vm, VAL a, VAL b) {
398VAL idris_b32Minus(VM *vm, VAL a, VAL b) {
398VAL idris_b32Minus(VM *vm, VAL a, VAL b) {
399 uint32_t A = a->info.bits32;
399 uint32_t A = a->info.bits32;
400 uint32_t B = b->info.bits32;
400 uint32_t B = b->info.bits32;
401− VAL cl = allocate(vm, sizeof(Closure), 0);
401+ VAL cl = allocate(sizeof(Closure), 0);
402 SETTY(cl, BITS32);
402 SETTY(cl, BITS32);
403 cl->info.bits32 = A - B;
403 cl->info.bits32 = A - B;
404 return cl;
404 return cl;
@@ -407,7 +407,7 @@ VAL idris_b32Minus(VM *vm, VAL a, VAL b) {
407VAL idris_b32Times(VM *vm, VAL a, VAL b) {
407VAL idris_b32Times(VM *vm, VAL a, VAL b) {
408 uint32_t A = a->info.bits32;
408 uint32_t A = a->info.bits32;
409 uint32_t B = b->info.bits32;
409 uint32_t B = b->info.bits32;
410− VAL cl = allocate(vm, sizeof(Closure), 0);
410+ VAL cl = allocate(sizeof(Closure), 0);
411 SETTY(cl, BITS32);
411 SETTY(cl, BITS32);
412 cl->info.bits32 = A * B;
412 cl->info.bits32 = A * B;
413 return cl;
413 return cl;
@@ -416,7 +416,7 @@ VAL idris_b32Times(VM *vm, VAL a, VAL b) {
416VAL idris_b32UDiv(VM *vm, VAL a, VAL b) {
416VAL idris_b32UDiv(VM *vm, VAL a, VAL b) {
417 uint32_t A = a->info.bits32;
417 uint32_t A = a->info.bits32;
418 uint32_t B = b->info.bits32;
418 uint32_t B = b->info.bits32;
419− VAL cl = allocate(vm, sizeof(Closure), 0);
419+ VAL cl = allocate(sizeof(Closure), 0);
420 SETTY(cl, BITS32);
420 SETTY(cl, BITS32);
421 cl->info.bits32 = A / B;
421 cl->info.bits32 = A / B;
422 return cl;
422 return cl;
@@ -425,7 +425,7 @@ VAL idris_b32UDiv(VM *vm, VAL a, VAL b) {
425VAL idris_b32SDiv(VM *vm, VAL a, VAL b) {
425VAL idris_b32SDiv(VM *vm, VAL a, VAL b) {
426 uint32_t A = a->info.bits32;
426 uint32_t A = a->info.bits32;
427 uint32_t B = b->info.bits32;
427 uint32_t B = b->info.bits32;
428− VAL cl = allocate(vm, sizeof(Closure), 0);
428+ VAL cl = allocate(sizeof(Closure), 0);
429 SETTY(cl, BITS32);
429 SETTY(cl, BITS32);
430 cl->info.bits32 = (uint32_t) (((int32_t) A) / ((int32_t) B));
430 cl->info.bits32 = (uint32_t) (((int32_t) A) / ((int32_t) B));
431 return cl;
431 return cl;
@@ -434,7 +434,7 @@ VAL idris_b32SDiv(VM *vm, VAL a, VAL b) {
434VAL idris_b32URem(VM *vm, VAL a, VAL b) {
434VAL idris_b32URem(VM *vm, VAL a, VAL b) {
435 uint32_t A = a->info.bits32;
435 uint32_t A = a->info.bits32;
436 uint32_t B = b->info.bits32;
436 uint32_t B = b->info.bits32;
437− VAL cl = allocate(vm, sizeof(Closure), 0);
437+ VAL cl = allocate(sizeof(Closure), 0);
438 SETTY(cl, BITS32);
438 SETTY(cl, BITS32);
439 cl->info.bits32 = A % B;
439 cl->info.bits32 = A % B;
440 return cl;
440 return cl;
@@ -443,7 +443,7 @@ VAL idris_b32URem(VM *vm, VAL a, VAL b) {
443VAL idris_b32SRem(VM *vm, VAL a, VAL b) {
443VAL idris_b32SRem(VM *vm, VAL a, VAL b) {
444 uint32_t A = a->info.bits32;
444 uint32_t A = a->info.bits32;
445 uint32_t B = b->info.bits32;
445 uint32_t B = b->info.bits32;
446− VAL cl = allocate(vm, sizeof(Closure), 0);
446+ VAL cl = allocate(sizeof(Closure), 0);
447 SETTY(cl, BITS32);
447 SETTY(cl, BITS32);
448 cl->info.bits32 = (uint32_t) (((int32_t) A) % ((int32_t) B));
448 cl->info.bits32 = (uint32_t) (((int32_t) A) % ((int32_t) B));
449 return cl;
449 return cl;
@@ -471,7 +471,7 @@ VAL idris_b32Gte(VM *vm, VAL a, VAL b) {
472VAL idris_b32Compl(VM *vm, VAL a) {
472VAL idris_b32Compl(VM *vm, VAL a) {
473 uint32_t A = a->info.bits32;
473 uint32_t A = a->info.bits32;
474− VAL cl = allocate(vm, sizeof(Closure), 0);
474+ VAL cl = allocate(sizeof(Closure), 0);
475 SETTY(cl, BITS32);
475 SETTY(cl, BITS32);
476 cl->info.bits32 = ~ A;
476 cl->info.bits32 = ~ A;
477 return cl;
477 return cl;
@@ -480,7 +480,7 @@ VAL idris_b32Compl(VM *vm, VAL a) {
480VAL idris_b32And(VM *vm, VAL a, VAL b) {
480VAL idris_b32And(VM *vm, VAL a, VAL b) {
481 uint32_t A = a->info.bits32;
481 uint32_t A = a->info.bits32;
482 uint32_t B = b->info.bits32;
482 uint32_t B = b->info.bits32;
483− VAL cl = allocate(vm, sizeof(Closure), 0);
483+ VAL cl = allocate(sizeof(Closure), 0);
484 SETTY(cl, BITS32);
484 SETTY(cl, BITS32);
485 cl->info.bits32 = A & B;
485 cl->info.bits32 = A & B;
486 return cl;
486 return cl;
@@ -489,7 +489,7 @@ VAL idris_b32And(VM *vm, VAL a, VAL b) {
489VAL idris_b32Or(VM *vm, VAL a, VAL b) {
489VAL idris_b32Or(VM *vm, VAL a, VAL b) {
490 uint32_t A = a->info.bits32;
490 uint32_t A = a->info.bits32;
491 uint32_t B = b->info.bits32;
491 uint32_t B = b->info.bits32;
492− VAL cl = allocate(vm, sizeof(Closure), 0);
492+ VAL cl = allocate(sizeof(Closure), 0);
493 SETTY(cl, BITS32);
493 SETTY(cl, BITS32);
494 cl->info.bits32 = A | B;
494 cl->info.bits32 = A | B;
495 return cl;
495 return cl;
@@ -498,7 +498,7 @@ VAL idris_b32Or(VM *vm, VAL a, VAL b) {
498VAL idris_b32Xor(VM *vm, VAL a, VAL b) {
498VAL idris_b32Xor(VM *vm, VAL a, VAL b) {
499 uint32_t A = a->info.bits32;
499 uint32_t A = a->info.bits32;
500 uint32_t B = b->info.bits32;
500 uint32_t B = b->info.bits32;
501− VAL cl = allocate(vm, sizeof(Closure), 0);
501+ VAL cl = allocate(sizeof(Closure), 0);
502 SETTY(cl, BITS32);
502 SETTY(cl, BITS32);
503 cl->info.bits32 = A ^ B;
503 cl->info.bits32 = A ^ B;
504 return cl;
504 return cl;
@@ -507,7 +507,7 @@ VAL idris_b32Xor(VM *vm, VAL a, VAL b) {
507VAL idris_b32Shl(VM *vm, VAL a, VAL b) {
507VAL idris_b32Shl(VM *vm, VAL a, VAL b) {
508 uint32_t A = a->info.bits32;
508 uint32_t A = a->info.bits32;
509 uint32_t B = b->info.bits32;
509 uint32_t B = b->info.bits32;
510− VAL cl = allocate(vm, sizeof(Closure), 0);
510+ VAL cl = allocate(sizeof(Closure), 0);
511 SETTY(cl, BITS32);
511 SETTY(cl, BITS32);
512 cl->info.bits32 = A << B;
512 cl->info.bits32 = A << B;
513 return cl;
513 return cl;
@@ -516,7 +516,7 @@ VAL idris_b32Shl(VM *vm, VAL a, VAL b) {
516VAL idris_b32LShr(VM *vm, VAL a, VAL b) {
516VAL idris_b32LShr(VM *vm, VAL a, VAL b) {
517 uint32_t A = a->info.bits32;
517 uint32_t A = a->info.bits32;
518 uint32_t B = b->info.bits32;
518 uint32_t B = b->info.bits32;
519− VAL cl = allocate(vm, sizeof(Closure), 0);
519+ VAL cl = allocate(sizeof(Closure), 0);
520 SETTY(cl, BITS32);
520 SETTY(cl, BITS32);
521 cl->info.bits32 = A >> B;
521 cl->info.bits32 = A >> B;
522 return cl;
522 return cl;
@@ -525,7 +525,7 @@ VAL idris_b32LShr(VM *vm, VAL a, VAL b) {
525VAL idris_b32AShr(VM *vm, VAL a, VAL b) {
525VAL idris_b32AShr(VM *vm, VAL a, VAL b) {
526 uint32_t A = a->info.bits32;
526 uint32_t A = a->info.bits32;
527 uint32_t B = b->info.bits32;
527 uint32_t B = b->info.bits32;
528− VAL cl = allocate(vm, sizeof(Closure), 0);
528+ VAL cl = allocate(sizeof(Closure), 0);
529 SETTY(cl, BITS32);
529 SETTY(cl, BITS32);
530 cl->info.bits32 = (uint32_t) (((int32_t)A) >> ((int32_t)B));
530 cl->info.bits32 = (uint32_t) (((int32_t)A) >> ((int32_t)B));
531 return cl;
531 return cl;
@@ -534,7 +534,7 @@ VAL idris_b32AShr(VM *vm, VAL a, VAL b) {
534VAL idris_b64Plus(VM *vm, VAL a, VAL b) {
534VAL idris_b64Plus(VM *vm, VAL a, VAL b) {
535 uint64_t A = a->info.bits64;
535 uint64_t A = a->info.bits64;
536 uint64_t B = b->info.bits64;
536 uint64_t B = b->info.bits64;
537− VAL cl = allocate(vm, sizeof(Closure), 0);
537+ VAL cl = allocate(sizeof(Closure), 0);
538 SETTY(cl, BITS64);
538 SETTY(cl, BITS64);
539 cl->info.bits64 = A + B;
539 cl->info.bits64 = A + B;
540 return cl;
540 return cl;
@@ -543,7 +543,7 @@ VAL idris_b64Plus(VM *vm, VAL a, VAL b) {
543VAL idris_b64Minus(VM *vm, VAL a, VAL b) {
543VAL idris_b64Minus(VM *vm, VAL a, VAL b) {
544 uint64_t A = a->info.bits64;
544 uint64_t A = a->info.bits64;
545 uint64_t B = b->info.bits64;
545 uint64_t B = b->info.bits64;
546− VAL cl = allocate(vm, sizeof(Closure), 0);
546+ VAL cl = allocate(sizeof(Closure), 0);
547 SETTY(cl, BITS64);
547 SETTY(cl, BITS64);
548 cl->info.bits64 = A - B;
548 cl->info.bits64 = A - B;
549 return cl;
549 return cl;
@@ -552,7 +552,7 @@ VAL idris_b64Minus(VM *vm, VAL a, VAL b) {
552VAL idris_b64Times(VM *vm, VAL a, VAL b) {
552VAL idris_b64Times(VM *vm, VAL a, VAL b) {
553 uint64_t A = a->info.bits64;
553 uint64_t A = a->info.bits64;
554 uint64_t B = b->info.bits64;
554 uint64_t B = b->info.bits64;
555− VAL cl = allocate(vm, sizeof(Closure), 0);
555+ VAL cl = allocate(sizeof(Closure), 0);
556 SETTY(cl, BITS64);
556 SETTY(cl, BITS64);
557 cl->info.bits64 = A * B;
557 cl->info.bits64 = A * B;
558 return cl;
558 return cl;
@@ -561,7 +561,7 @@ VAL idris_b64Times(VM *vm, VAL a, VAL b) {
561VAL idris_b64UDiv(VM *vm, VAL a, VAL b) {
561VAL idris_b64UDiv(VM *vm, VAL a, VAL b) {
562 uint64_t A = a->info.bits64;
562 uint64_t A = a->info.bits64;
563 uint64_t B = b->info.bits64;
563 uint64_t B = b->info.bits64;
564− VAL cl = allocate(vm, sizeof(Closure), 0);
564+ VAL cl = allocate(sizeof(Closure), 0);
565 SETTY(cl, BITS64);
565 SETTY(cl, BITS64);
566 cl->info.bits64 = A / B;
566 cl->info.bits64 = A / B;
567 return cl;
567 return cl;
@@ -570,7 +570,7 @@ VAL idris_b64UDiv(VM *vm, VAL a, VAL b) {
570VAL idris_b64SDiv(VM *vm, VAL a, VAL b) {
570VAL idris_b64SDiv(VM *vm, VAL a, VAL b) {
571 uint64_t A = a->info.bits64;
571 uint64_t A = a->info.bits64;
572 uint64_t B = b->info.bits64;
572 uint64_t B = b->info.bits64;
573− VAL cl = allocate(vm, sizeof(Closure), 0);
573+ VAL cl = allocate(sizeof(Closure), 0);
574 SETTY(cl, BITS64);
574 SETTY(cl, BITS64);
575 cl->info.bits64 = (uint64_t) (((int64_t) A) / ((int64_t) B));
575 cl->info.bits64 = (uint64_t) (((int64_t) A) / ((int64_t) B));
576 return cl;
576 return cl;
@@ -579,7 +579,7 @@ VAL idris_b64SDiv(VM *vm, VAL a, VAL b) {
579VAL idris_b64URem(VM *vm, VAL a, VAL b) {
579VAL idris_b64URem(VM *vm, VAL a, VAL b) {
580 uint64_t A = a->info.bits64;
580 uint64_t A = a->info.bits64;
581 uint64_t B = b->info.bits64;
581 uint64_t B = b->info.bits64;
582− VAL cl = allocate(vm, sizeof(Closure), 0);
582+ VAL cl = allocate(sizeof(Closure), 0);
583 SETTY(cl, BITS64);
583 SETTY(cl, BITS64);
584 cl->info.bits64 = A % B;
584 cl->info.bits64 = A % B;
585 return cl;
585 return cl;
@@ -588,7 +588,7 @@ VAL idris_b64URem(VM *vm, VAL a, VAL b) {
588VAL idris_b64SRem(VM *vm, VAL a, VAL b) {
588VAL idris_b64SRem(VM *vm, VAL a, VAL b) {
589 uint64_t A = a->info.bits64;
589 uint64_t A = a->info.bits64;
590 uint64_t B = b->info.bits64;
590 uint64_t B = b->info.bits64;
591− VAL cl = allocate(vm, sizeof(Closure), 0);
591+ VAL cl = allocate(sizeof(Closure), 0);
592 SETTY(cl, BITS64);
592 SETTY(cl, BITS64);
593 cl->info.bits64 = (uint64_t) (((int64_t) A) % ((int64_t) B));
593 cl->info.bits64 = (uint64_t) (((int64_t) A) % ((int64_t) B));
594 return cl;
594 return cl;
@@ -616,7 +616,7 @@ VAL idris_b64Gte(VM *vm, VAL a, VAL b) {
617VAL idris_b64Compl(VM *vm, VAL a) {
617VAL idris_b64Compl(VM *vm, VAL a) {
618 uint64_t A = a->info.bits64;
618 uint64_t A = a->info.bits64;
619− VAL cl = allocate(vm, sizeof(Closure), 0);
619+ VAL cl = allocate(sizeof(Closure), 0);
620 SETTY(cl, BITS64);
620 SETTY(cl, BITS64);
621 cl->info.bits64 = ~ A;
621 cl->info.bits64 = ~ A;
622 return cl;
622 return cl;
@@ -625,7 +625,7 @@ VAL idris_b64Compl(VM *vm, VAL a) {
625VAL idris_b64And(VM *vm, VAL a, VAL b) {
625VAL idris_b64And(VM *vm, VAL a, VAL b) {
626 uint64_t A = a->info.bits64;
626 uint64_t A = a->info.bits64;
627 uint64_t B = b->info.bits64;
627 uint64_t B = b->info.bits64;
628− VAL cl = allocate(vm, sizeof(Closure), 0);
628+ VAL cl = allocate(sizeof(Closure), 0);
629 SETTY(cl, BITS64);
629 SETTY(cl, BITS64);
630 cl->info.bits64 = A & B;
630 cl->info.bits64 = A & B;
631 return cl;
631 return cl;
@@ -634,7 +634,7 @@ VAL idris_b64And(VM *vm, VAL a, VAL b) {
634VAL idris_b64Or(VM *vm, VAL a, VAL b) {
634VAL idris_b64Or(VM *vm, VAL a, VAL b) {
635 uint64_t A = a->info.bits64;
635 uint64_t A = a->info.bits64;
636 uint64_t B = b->info.bits64;
636 uint64_t B = b->info.bits64;
637− VAL cl = allocate(vm, sizeof(Closure), 0);
637+ VAL cl = allocate(sizeof(Closure), 0);
638 SETTY(cl, BITS64);
638 SETTY(cl, BITS64);
639 cl->info.bits64 = A | B;
639 cl->info.bits64 = A | B;
640 return cl;
640 return cl;
@@ -643,7 +643,7 @@ VAL idris_b64Or(VM *vm, VAL a, VAL b) {
643VAL idris_b64Xor(VM *vm, VAL a, VAL b) {
643VAL idris_b64Xor(VM *vm, VAL a, VAL b) {
644 uint64_t A = a->info.bits64;
644 uint64_t A = a->info.bits64;
645 uint64_t B = b->info.bits64;
645 uint64_t B = b->info.bits64;
646− VAL cl = allocate(vm, sizeof(Closure), 0);
646+ VAL cl = allocate(sizeof(Closure), 0);
647 SETTY(cl, BITS64);
647 SETTY(cl, BITS64);
648 cl->info.bits64 = A ^ B;
648 cl->info.bits64 = A ^ B;
649 return cl;
649 return cl;
@@ -652,7 +652,7 @@ VAL idris_b64Xor(VM *vm, VAL a, VAL b) {
652VAL idris_b64Shl(VM *vm, VAL a, VAL b) {
652VAL idris_b64Shl(VM *vm, VAL a, VAL b) {
653 uint64_t A = a->info.bits64;
653 uint64_t A = a->info.bits64;
654 uint64_t B = b->info.bits64;
654 uint64_t B = b->info.bits64;
655− VAL cl = allocate(vm, sizeof(Closure), 0);
655+ VAL cl = allocate(sizeof(Closure), 0);
656 SETTY(cl, BITS64);
656 SETTY(cl, BITS64);
657 cl->info.bits64 = A << B;
657 cl->info.bits64 = A << B;
658 return cl;
658 return cl;
@@ -661,7 +661,7 @@ VAL idris_b64Shl(VM *vm, VAL a, VAL b) {
661VAL idris_b64LShr(VM *vm, VAL a, VAL b) {
661VAL idris_b64LShr(VM *vm, VAL a, VAL b) {
662 uint64_t A = a->info.bits64;
662 uint64_t A = a->info.bits64;
663 uint64_t B = b->info.bits64;
663 uint64_t B = b->info.bits64;
664− VAL cl = allocate(vm, sizeof(Closure), 0);
664+ VAL cl = allocate(sizeof(Closure), 0);
665 SETTY(cl, BITS64);
665 SETTY(cl, BITS64);
666 cl->info.bits64 = A >> B;
666 cl->info.bits64 = A >> B;
667 return cl;
667 return cl;
@@ -670,7 +670,7 @@ VAL idris_b64LShr(VM *vm, VAL a, VAL b) {
670VAL idris_b64AShr(VM *vm, VAL a, VAL b) {
670VAL idris_b64AShr(VM *vm, VAL a, VAL b) {
671 uint64_t A = a->info.bits64;
671 uint64_t A = a->info.bits64;
672 uint64_t B = b->info.bits64;
672 uint64_t B = b->info.bits64;
673− VAL cl = allocate(vm, sizeof(Closure), 0);
673+ VAL cl = allocate(sizeof(Closure), 0);
674 SETTY(cl, BITS64);
674 SETTY(cl, BITS64);
675 cl->info.bits64 = (uint64_t) (((int64_t) A) >> ((int64_t) B));
675 cl->info.bits64 = (uint64_t) (((int64_t) A) >> ((int64_t) B));
676 return cl;
676 return cl;
@@ -678,7 +678,7 @@ VAL idris_b64AShr(VM *vm, VAL a, VAL b) {
679VAL idris_b8Z16(VM *vm, VAL a) {
679VAL idris_b8Z16(VM *vm, VAL a) {
680 uint8_t A = a->info.bits8;
680 uint8_t A = a->info.bits8;
681− VAL cl = allocate(vm, sizeof(Closure), 0);
681+ VAL cl = allocate(sizeof(Closure), 0);
682 SETTY(cl, BITS16);
682 SETTY(cl, BITS16);
683 cl->info.bits16 = (uint16_t) A;
683 cl->info.bits16 = (uint16_t) A;
684 return cl;
684 return cl;
@@ -686,7 +686,7 @@ VAL idris_b8Z16(VM *vm, VAL a) {
687VAL idris_b8Z32(VM *vm, VAL a) {
687VAL idris_b8Z32(VM *vm, VAL a) {
688 uint8_t A = a->info.bits8;
688 uint8_t A = a->info.bits8;
689− VAL cl = allocate(vm, sizeof(Closure), 0);
689+ VAL cl = allocate(sizeof(Closure), 0);
690 SETTY(cl, BITS32);
690 SETTY(cl, BITS32);
691 cl->info.bits32 = (uint32_t) A;
691 cl->info.bits32 = (uint32_t) A;
692 return cl;
692 return cl;
@@ -694,7 +694,7 @@ VAL idris_b8Z32(VM *vm, VAL a) {
695VAL idris_b8Z64(VM *vm, VAL a) {
695VAL idris_b8Z64(VM *vm, VAL a) {
696 uint8_t A = a->info.bits8;
696 uint8_t A = a->info.bits8;
697− VAL cl = allocate(vm, sizeof(Closure), 0);
697+ VAL cl = allocate(sizeof(Closure), 0);
698 SETTY(cl, BITS64);
698 SETTY(cl, BITS64);
699 cl->info.bits64 = (uint64_t) A;
699 cl->info.bits64 = (uint64_t) A;
700 return cl;
700 return cl;
@@ -702,7 +702,7 @@ VAL idris_b8Z64(VM *vm, VAL a) {
703VAL idris_b8S16(VM *vm, VAL a) {
703VAL idris_b8S16(VM *vm, VAL a) {
704 uint8_t A = a->info.bits8;
704 uint8_t A = a->info.bits8;
705− VAL cl = allocate(vm, sizeof(Closure), 0);
705+ VAL cl = allocate(sizeof(Closure), 0);
706 SETTY(cl, BITS16);
706 SETTY(cl, BITS16);
707 cl->info.bits16 = (uint16_t) (int16_t) (int8_t) A;
707 cl->info.bits16 = (uint16_t) (int16_t) (int8_t) A;
708 return cl;
708 return cl;
@@ -710,7 +710,7 @@ VAL idris_b8S16(VM *vm, VAL a) {
711VAL idris_b8S32(VM *vm, VAL a) {
711VAL idris_b8S32(VM *vm, VAL a) {
712 uint8_t A = a->info.bits8;
712 uint8_t A = a->info.bits8;
713− VAL cl = allocate(vm, sizeof(Closure), 0);
713+ VAL cl = allocate(sizeof(Closure), 0);
714 SETTY(cl, BITS32);
714 SETTY(cl, BITS32);
715 cl->info.bits32 = (uint32_t) (int32_t) (int8_t) A;
715 cl->info.bits32 = (uint32_t) (int32_t) (int8_t) A;
716 return cl;
716 return cl;
@@ -718,7 +718,7 @@ VAL idris_b8S32(VM *vm, VAL a) {
719VAL idris_b8S64(VM *vm, VAL a) {
719VAL idris_b8S64(VM *vm, VAL a) {
720 uint8_t A = a->info.bits8;
720 uint8_t A = a->info.bits8;
721− VAL cl = allocate(vm, sizeof(Closure), 0);
721+ VAL cl = allocate(sizeof(Closure), 0);
722 SETTY(cl, BITS64);
722 SETTY(cl, BITS64);
723 cl->info.bits64 = (uint64_t) (int64_t) (int8_t) A;
723 cl->info.bits64 = (uint64_t) (int64_t) (int8_t) A;
724 return cl;
724 return cl;
@@ -726,7 +726,7 @@ VAL idris_b8S64(VM *vm, VAL a) {
727VAL idris_b16Z32(VM *vm, VAL a) {
727VAL idris_b16Z32(VM *vm, VAL a) {
728 uint16_t A = a->info.bits16;
728 uint16_t A = a->info.bits16;
729− VAL cl = allocate(vm, sizeof(Closure), 0);
729+ VAL cl = allocate(sizeof(Closure), 0);
730 SETTY(cl, BITS32);
730 SETTY(cl, BITS32);
731 cl->info.bits32 = (uint32_t) A;
731 cl->info.bits32 = (uint32_t) A;
732 return cl;
732 return cl;
@@ -734,7 +734,7 @@ VAL idris_b16Z32(VM *vm, VAL a) {
735VAL idris_b16Z64(VM *vm, VAL a) {
735VAL idris_b16Z64(VM *vm, VAL a) {
736 uint16_t A = a->info.bits16;
736 uint16_t A = a->info.bits16;
737− VAL cl = allocate(vm, sizeof(Closure), 0);
737+ VAL cl = allocate(sizeof(Closure), 0);
738 SETTY(cl, BITS64);
738 SETTY(cl, BITS64);
739 cl->info.bits64 = (uint64_t) A;
739 cl->info.bits64 = (uint64_t) A;
740 return cl;
740 return cl;
@@ -742,7 +742,7 @@ VAL idris_b16Z64(VM *vm, VAL a) {
743VAL idris_b16S32(VM *vm, VAL a) {
743VAL idris_b16S32(VM *vm, VAL a) {
744 uint16_t A = a->info.bits16;
744 uint16_t A = a->info.bits16;
745− VAL cl = allocate(vm, sizeof(Closure), 0);
745+ VAL cl = allocate(sizeof(Closure), 0);
746 SETTY(cl, BITS32);
746 SETTY(cl, BITS32);
747 cl->info.bits32 = (uint32_t) (int32_t) (int16_t) A;
747 cl->info.bits32 = (uint32_t) (int32_t) (int16_t) A;
748 return cl;
748 return cl;
@@ -750,7 +750,7 @@ VAL idris_b16S32(VM *vm, VAL a) {
751VAL idris_b16S64(VM *vm, VAL a) {
751VAL idris_b16S64(VM *vm, VAL a) {
752 uint16_t A = a->info.bits16;
752 uint16_t A = a->info.bits16;
753− VAL cl = allocate(vm, sizeof(Closure), 0);
753+ VAL cl = allocate(sizeof(Closure), 0);
754 SETTY(cl, BITS64);
754 SETTY(cl, BITS64);
755 cl->info.bits64 = (uint64_t) (int64_t) (int16_t) A;
755 cl->info.bits64 = (uint64_t) (int64_t) (int16_t) A;
756 return cl;
756 return cl;
@@ -758,7 +758,7 @@ VAL idris_b16S64(VM *vm, VAL a) {
759VAL idris_b16T8(VM *vm, VAL a) {
759VAL idris_b16T8(VM *vm, VAL a) {
760 uint16_t A = a->info.bits16;
760 uint16_t A = a->info.bits16;
761− VAL cl = allocate(vm, sizeof(Closure), 0);
761+ VAL cl = allocate(sizeof(Closure), 0);
762 SETTY(cl, BITS8);
762 SETTY(cl, BITS8);
763 cl->info.bits8 = (uint8_t) A;
763 cl->info.bits8 = (uint8_t) A;
764 return cl;
764 return cl;
@@ -766,7 +766,7 @@ VAL idris_b16T8(VM *vm, VAL a) {
767VAL idris_b32Z64(VM *vm, VAL a) {
767VAL idris_b32Z64(VM *vm, VAL a) {
768 uint32_t A = a->info.bits32;
768 uint32_t A = a->info.bits32;
769− VAL cl = allocate(vm, sizeof(Closure), 0);
769+ VAL cl = allocate(sizeof(Closure), 0);
770 SETTY(cl, BITS64);
770 SETTY(cl, BITS64);
771 cl->info.bits64 = (uint64_t) A;
771 cl->info.bits64 = (uint64_t) A;
772 return cl;
772 return cl;
@@ -774,7 +774,7 @@ VAL idris_b32Z64(VM *vm, VAL a) {
775VAL idris_b32S64(VM *vm, VAL a) {
775VAL idris_b32S64(VM *vm, VAL a) {
776 uint32_t A = a->info.bits32;
776 uint32_t A = a->info.bits32;
777− VAL cl = allocate(vm, sizeof(Closure), 0);
777+ VAL cl = allocate(sizeof(Closure), 0);
778 SETTY(cl, BITS64);
778 SETTY(cl, BITS64);
779 cl->info.bits64 = (uint64_t) (int64_t) (int32_t) A;
779 cl->info.bits64 = (uint64_t) (int64_t) (int32_t) A;
780 return cl;
780 return cl;
@@ -782,7 +782,7 @@ VAL idris_b32S64(VM *vm, VAL a) {
783VAL idris_b32T8(VM *vm, VAL a) {
783VAL idris_b32T8(VM *vm, VAL a) {
784 uint32_t A = a->info.bits32;
784 uint32_t A = a->info.bits32;
785− VAL cl = allocate(vm, sizeof(Closure), 0);
785+ VAL cl = allocate(sizeof(Closure), 0);
786 SETTY(cl, BITS8);
786 SETTY(cl, BITS8);
787 cl->info.bits8 = (uint8_t) A;
787 cl->info.bits8 = (uint8_t) A;
788 return cl;
788 return cl;
@@ -790,7 +790,7 @@ VAL idris_b32T8(VM *vm, VAL a) {
791VAL idris_b32T16(VM *vm, VAL a) {
791VAL idris_b32T16(VM *vm, VAL a) {
792 uint32_t A = a->info.bits32;
792 uint32_t A = a->info.bits32;
793− VAL cl = allocate(vm, sizeof(Closure), 0);
793+ VAL cl = allocate(sizeof(Closure), 0);
794 SETTY(cl, BITS16);
794 SETTY(cl, BITS16);
795 cl->info.bits16 = (uint16_t) A;
795 cl->info.bits16 = (uint16_t) A;
796 return cl;
796 return cl;
@@ -798,7 +798,7 @@ VAL idris_b32T16(VM *vm, VAL a) {
799VAL idris_b64T8(VM *vm, VAL a) {
799VAL idris_b64T8(VM *vm, VAL a) {
800 uint64_t A = a->info.bits64;
800 uint64_t A = a->info.bits64;
801− VAL cl = allocate(vm, sizeof(Closure), 0);
801+ VAL cl = allocate(sizeof(Closure), 0);
802 SETTY(cl, BITS8);
802 SETTY(cl, BITS8);
803 cl->info.bits8 = (uint8_t) A;
803 cl->info.bits8 = (uint8_t) A;
804 return cl;
804 return cl;
@@ -806,7 +806,7 @@ VAL idris_b64T8(VM *vm, VAL a) {
807VAL idris_b64T16(VM *vm, VAL a) {
807VAL idris_b64T16(VM *vm, VAL a) {
808 uint64_t A = a->info.bits64;
808 uint64_t A = a->info.bits64;
809− VAL cl = allocate(vm, sizeof(Closure), 0);
809+ VAL cl = allocate(sizeof(Closure), 0);
810 SETTY(cl, BITS16);
810 SETTY(cl, BITS16);
811 cl->info.bits16 = (uint16_t) A;
811 cl->info.bits16 = (uint16_t) A;
812 return cl;
812 return cl;
@@ -814,7 +814,7 @@ VAL idris_b64T16(VM *vm, VAL a) {
815VAL idris_b64T32(VM *vm, VAL a) {
815VAL idris_b64T32(VM *vm, VAL a) {
816 uint64_t A = a->info.bits64;
816 uint64_t A = a->info.bits64;
817− VAL cl = allocate(vm, sizeof(Closure), 0);
817+ VAL cl = allocate(sizeof(Closure), 0);
818 SETTY(cl, BITS32);
818 SETTY(cl, BITS32);
819 cl->info.bits32 = (uint32_t) A;
819 cl->info.bits32 = (uint32_t) A;
820 return cl;
820 return cl;