on master help sign in
Add missing VM arguments
commiteff298e040ed98737e9a814d8ff25bfa53db87b3 authorBenjamin Saunders <besaunde@sfu.ca> dateSun 13 Jan 2013, 15:59 (14 years ago) parent70cc9cd
1 file changed+104−104
src/IRTS/CodegenC.hs+104−104
src/IRTS/CodegenC.hs+104−104
@@ -297,129 +297,129 @@ doOp v LReadStr [x] = v ++ "idris_readStr(vm, GETPTR(" ++ creg x ++ "))"
297297doOp _ LPrintNum [x] = "printf(\"%ld\\n\", GETINT(" ++ creg x ++ "))"
298298doOp _ LPrintStr [x] = "fputs(GETSTR(" ++ creg x ++ "), stdout)"
299299
300−doOp v LIntB8 [x] = v ++ "idris_b8(" ++ creg x ++ ")"
301−doOp v LIntB16 [x] = v ++ "idris_b16(" ++ creg x ++ ")"
302−doOp v LIntB32 [x] = v ++ "idris_b32(" ++ creg x ++ ")"
303−doOp v LIntB64 [x] = v ++ "idris_b64(" ++ creg x ++ ")"
304−
305−doOp v LB32Int [x] = v ++ "idris_castB32Int(" ++ creg x ++ ")"
306−
307−doOp v LB8Lt [x, y] = v ++ "idris_b8Lt(" ++ creg x ++ "," ++ creg y ++ ")"
308−doOp v LB8Lte [x, y] = v ++ "idris_b8Lte(" ++ creg x ++ "," ++ creg y ++ ")"
309−doOp v LB8Eq [x, y] = v ++ "idris_b8Eq(" ++ creg x ++ "," ++ creg y ++ ")"
310−doOp v LB8Gte [x, y] = v ++ "idris_b8Gte(" ++ creg x ++ "," ++ creg y ++ ")"
311−doOp v LB8Gt [x, y] = v ++ "idris_b8Gt(" ++ creg x ++ "," ++ creg y ++ ")"
312−
313−doOp v LB8Shl [x, y] = v ++ "idris_b8Shl(" ++ creg x ++ "," ++ creg y ++ ")"
314−doOp v LB8LShr [x, y] = v ++ "idris_b8Shr(" ++ creg x ++ "," ++ creg y ++ ")"
315−doOp v LB8AShr [x, y] = v ++ "idris_b8AShr(" ++ creg x ++ "," ++ creg y ++ ")"
316−doOp v LB8And [x, y] = v ++ "idris_b8And(" ++ creg x ++ "," ++ creg y ++ ")"
317−doOp v LB8Or [x, y] = v ++ "idris_b8Or(" ++ creg x ++ "," ++ creg y ++ ")"
318−doOp v LB8Xor [x, y] = v ++ "idris_b8Xor(" ++ creg x ++ "," ++ creg y ++ ")"
319−doOp v LB8Compl [x, y] = v ++ "idris_b8Compl(" ++ creg x ++ "," ++ creg y ++ ")"
320−
321−doOp v LB8Plus [x, y] = v ++ "idris_b8Plus(" ++ creg x ++ "," ++ creg y ++ ")"
322−doOp v LB8Minus [x, y] = v ++ "idris_b8Minus(" ++ creg x ++ "," ++ creg y ++ ")"
323−doOp v LB8Times [x, y] = v ++ "idris_b8Times(" ++ creg x ++ "," ++ creg y ++ ")"
324−doOp v LB8UDiv [x, y] = v ++ "idris_b8UDiv(" ++ creg x ++ "," ++ creg y ++ ")"
325−doOp v LB8SDiv [x, y] = v ++ "idris_b8SDiv(" ++ creg x ++ "," ++ creg y ++ ")"
326−
327−doOp v LB8Z16 [x] = v ++ "idris_b8Z16(" ++ creg x ++ ")"
328−doOp v LB8Z32 [x] = v ++ "idris_b8Z32(" ++ creg x ++ ")"
329−doOp v LB8Z64 [x] = v ++ "idris_b8Z64(" ++ creg x ++ ")"
330−doOp v LB8S16 [x] = v ++ "idris_b8S16(" ++ creg x ++ ")"
331−doOp v LB8S32 [x] = v ++ "idris_b8S32(" ++ creg x ++ ")"
332−doOp v LB8S64 [x] = v ++ "idris_b8S64(" ++ creg x ++ ")"
333−
334−doOp v LB16Lt [x, y] = v ++ "idris_b16Lt(" ++ creg x ++ "," ++ creg y ++ ")"
335−doOp v LB16Lte [x, y] = v ++ "idris_b16Lte(" ++ creg x ++ "," ++ creg y ++ ")"
336−doOp v LB16Eq [x, y] = v ++ "idris_b16Eq(" ++ creg x ++ "," ++ creg y ++ ")"
337−doOp v LB16Gte [x, y] = v ++ "idris_b16Gte(" ++ creg x ++ "," ++ creg y ++ ")"
338−doOp v LB16Gt [x, y] = v ++ "idris_b16Gt(" ++ creg x ++ "," ++ creg y ++ ")"
339−
340−doOp v LB16Shl [x, y] = v ++ "idris_b16Shl(" ++ creg x ++ "," ++ creg y ++ ")"
341−doOp v LB16LShr [x, y] = v ++ "idris_b16Shr(" ++ creg x ++ "," ++ creg y ++ ")"
342−doOp v LB16AShr [x, y] = v ++ "idris_b16AShr(" ++ creg x ++ "," ++ creg y ++ ")"
343−doOp v LB16And [x, y] = v ++ "idris_b16And(" ++ creg x ++ "," ++ creg y ++ ")"
344−doOp v LB16Or [x, y] = v ++ "idris_b16Or(" ++ creg x ++ "," ++ creg y ++ ")"
345−doOp v LB16Xor [x, y] = v ++ "idris_b16Xor(" ++ creg x ++ "," ++ creg y ++ ")"
346−doOp v LB16Compl [x, y] = v ++ "idris_b16Compl(" ++ creg x ++ "," ++ creg y ++ ")"
300+doOp v LIntB8 [x] = v ++ "idris_b8(vm, " ++ creg x ++ ")"
301+doOp v LIntB16 [x] = v ++ "idris_b16(vm, " ++ creg x ++ ")"
302+doOp v LIntB32 [x] = v ++ "idris_b32(vm, " ++ creg x ++ ")"
303+doOp v LIntB64 [x] = v ++ "idris_b64(vm, " ++ creg x ++ ")"
304+
305+doOp v LB32Int [x] = v ++ "idris_castB32Int(vm, " ++ creg x ++ ")"
306+
307+doOp v LB8Lt [x, y] = v ++ "idris_b8Lt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
308+doOp v LB8Lte [x, y] = v ++ "idris_b8Lte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
309+doOp v LB8Eq [x, y] = v ++ "idris_b8Eq(vm, " ++ creg x ++ "," ++ creg y ++ ")"
310+doOp v LB8Gte [x, y] = v ++ "idris_b8Gte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
311+doOp v LB8Gt [x, y] = v ++ "idris_b8Gt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
312+
313+doOp v LB8Shl [x, y] = v ++ "idris_b8Shl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
314+doOp v LB8LShr [x, y] = v ++ "idris_b8Shr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
315+doOp v LB8AShr [x, y] = v ++ "idris_b8AShr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
316+doOp v LB8And [x, y] = v ++ "idris_b8And(vm, " ++ creg x ++ "," ++ creg y ++ ")"
317+doOp v LB8Or [x, y] = v ++ "idris_b8Or(vm, " ++ creg x ++ "," ++ creg y ++ ")"
318+doOp v LB8Xor [x, y] = v ++ "idris_b8Xor(vm, " ++ creg x ++ "," ++ creg y ++ ")"
319+doOp v LB8Compl [x, y] = v ++ "idris_b8Compl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
320+
321+doOp v LB8Plus [x, y] = v ++ "idris_b8Plus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
322+doOp v LB8Minus [x, y] = v ++ "idris_b8Minus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
323+doOp v LB8Times [x, y] = v ++ "idris_b8Times(vm, " ++ creg x ++ "," ++ creg y ++ ")"
324+doOp v LB8UDiv [x, y] = v ++ "idris_b8UDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
325+doOp v LB8SDiv [x, y] = v ++ "idris_b8SDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
326+
327+doOp v LB8Z16 [x] = v ++ "idris_b8Z16(vm, " ++ creg x ++ ")"
328+doOp v LB8Z32 [x] = v ++ "idris_b8Z32(vm, " ++ creg x ++ ")"
329+doOp v LB8Z64 [x] = v ++ "idris_b8Z64(vm, " ++ creg x ++ ")"
330+doOp v LB8S16 [x] = v ++ "idris_b8S16(vm, " ++ creg x ++ ")"
331+doOp v LB8S32 [x] = v ++ "idris_b8S32(vm, " ++ creg x ++ ")"
332+doOp v LB8S64 [x] = v ++ "idris_b8S64(vm, " ++ creg x ++ ")"
333+
334+doOp v LB16Lt [x, y] = v ++ "idris_b16Lt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
335+doOp v LB16Lte [x, y] = v ++ "idris_b16Lte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
336+doOp v LB16Eq [x, y] = v ++ "idris_b16Eq(vm, " ++ creg x ++ "," ++ creg y ++ ")"
337+doOp v LB16Gte [x, y] = v ++ "idris_b16Gte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
338+doOp v LB16Gt [x, y] = v ++ "idris_b16Gt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
339+
340+doOp v LB16Shl [x, y] = v ++ "idris_b16Shl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
341+doOp v LB16LShr [x, y] = v ++ "idris_b16Shr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
342+doOp v LB16AShr [x, y] = v ++ "idris_b16AShr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
343+doOp v LB16And [x, y] = v ++ "idris_b16And(vm, " ++ creg x ++ "," ++ creg y ++ ")"
344+doOp v LB16Or [x, y] = v ++ "idris_b16Or(vm, " ++ creg x ++ "," ++ creg y ++ ")"
345+doOp v LB16Xor [x, y] = v ++ "idris_b16Xor(vm, " ++ creg x ++ "," ++ creg y ++ ")"
346+doOp v LB16Compl [x, y] = v ++ "idris_b16Compl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
347347
348348doOp v LB16Plus [x, y] =
349− v ++ "idris_b16Plus(" ++ creg x ++ "," ++ creg y ++ ")"
349+ v ++ "idris_b16Plus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
350350doOp v LB16Minus [x, y] =
351− v ++ "idris_b16Minus(" ++ creg x ++ "," ++ creg y ++ ")"
351+ v ++ "idris_b16Minus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
352352doOp v LB16Times [x, y] =
353− v ++ "idris_b16Times(" ++ creg x ++ "," ++ creg y ++ ")"
353+ v ++ "idris_b16Times(vm, " ++ creg x ++ "," ++ creg y ++ ")"
354354doOp v LB16UDiv [x, y] =
355− v ++ "idris_b16UDiv(" ++ creg x ++ "," ++ creg y ++ ")"
355+ v ++ "idris_b16UDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
356356doOp v LB16SDiv [x, y] =
357− v ++ "idris_b16SDiv(" ++ creg x ++ "," ++ creg y ++ ")"
358−
359−doOp v LB16Z32 [x] = v ++ "idris_b16Z32(" ++ creg x ++ ")"
360−doOp v LB16Z64 [x] = v ++ "idris_b16Z64(" ++ creg x ++ ")"
361−doOp v LB16S32 [x] = v ++ "idris_b16S32(" ++ creg x ++ ")"
362−doOp v LB16S64 [x] = v ++ "idris_b16S64(" ++ creg x ++ ")"
363−doOp v LB16T8 [x] = v ++ "idris_b16T8(" ++ creg x ++ ")"
364−
365−doOp v LB32Lt [x, y] = v ++ "idris_b32Lt(" ++ creg x ++ "," ++ creg y ++ ")"
366−doOp v LB32Lte [x, y] = v ++ "idris_b32Lte(" ++ creg x ++ "," ++ creg y ++ ")"
367−doOp v LB32Eq [x, y] = v ++ "idris_b32Eq(" ++ creg x ++ "," ++ creg y ++ ")"
368−doOp v LB32Gte [x, y] = v ++ "idris_b32Gte(" ++ creg x ++ "," ++ creg y ++ ")"
369−doOp v LB32Gt [x, y] = v ++ "idris_b32Gt(" ++ creg x ++ "," ++ creg y ++ ")"
370−
371−doOp v LB32Shl [x, y] = v ++ "idris_b32Shl(" ++ creg x ++ "," ++ creg y ++ ")"
372−doOp v LB32LShr [x, y] = v ++ "idris_b32Shr(" ++ creg x ++ "," ++ creg y ++ ")"
373−doOp v LB32AShr [x, y] = v ++ "idris_b32AShr(" ++ creg x ++ "," ++ creg y ++ ")"
374−doOp v LB32And [x, y] = v ++ "idris_b32And(" ++ creg x ++ "," ++ creg y ++ ")"
375−doOp v LB32Or [x, y] = v ++ "idris_b32Or(" ++ creg x ++ "," ++ creg y ++ ")"
376−doOp v LB32Xor [x, y] = v ++ "idris_b32Xor(" ++ creg x ++ "," ++ creg y ++ ")"
377−doOp v LB32Compl [x, y] = v ++ "idris_b32Compl(" ++ creg x ++ "," ++ creg y ++ ")"
357+ v ++ "idris_b16SDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
358+
359+doOp v LB16Z32 [x] = v ++ "idris_b16Z32(vm, " ++ creg x ++ ")"
360+doOp v LB16Z64 [x] = v ++ "idris_b16Z64(vm, " ++ creg x ++ ")"
361+doOp v LB16S32 [x] = v ++ "idris_b16S32(vm, " ++ creg x ++ ")"
362+doOp v LB16S64 [x] = v ++ "idris_b16S64(vm, " ++ creg x ++ ")"
363+doOp v LB16T8 [x] = v ++ "idris_b16T8(vm, " ++ creg x ++ ")"
364+
365+doOp v LB32Lt [x, y] = v ++ "idris_b32Lt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
366+doOp v LB32Lte [x, y] = v ++ "idris_b32Lte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
367+doOp v LB32Eq [x, y] = v ++ "idris_b32Eq(vm, " ++ creg x ++ "," ++ creg y ++ ")"
368+doOp v LB32Gte [x, y] = v ++ "idris_b32Gte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
369+doOp v LB32Gt [x, y] = v ++ "idris_b32Gt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
370+
371+doOp v LB32Shl [x, y] = v ++ "idris_b32Shl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
372+doOp v LB32LShr [x, y] = v ++ "idris_b32Shr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
373+doOp v LB32AShr [x, y] = v ++ "idris_b32AShr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
374+doOp v LB32And [x, y] = v ++ "idris_b32And(vm, " ++ creg x ++ "," ++ creg y ++ ")"
375+doOp v LB32Or [x, y] = v ++ "idris_b32Or(vm, " ++ creg x ++ "," ++ creg y ++ ")"
376+doOp v LB32Xor [x, y] = v ++ "idris_b32Xor(vm, " ++ creg x ++ "," ++ creg y ++ ")"
377+doOp v LB32Compl [x, y] = v ++ "idris_b32Compl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
378378
379379doOp v LB32Plus [x, y] =
380− v ++ "idris_b32Plus(" ++ creg x ++ "," ++ creg y ++ ")"
380+ v ++ "idris_b32Plus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
381381doOp v LB32Minus [x, y] =
382− v ++ "idris_b32Minus(" ++ creg x ++ "," ++ creg y ++ ")"
382+ v ++ "idris_b32Minus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
383383doOp v LB32Times [x, y] =
384− v ++ "idris_b32Times(" ++ creg x ++ "," ++ creg y ++ ")"
384+ v ++ "idris_b32Times(vm, " ++ creg x ++ "," ++ creg y ++ ")"
385385doOp v LB32UDiv [x, y] =
386− v ++ "idris_b32UDiv(" ++ creg x ++ "," ++ creg y ++ ")"
386+ v ++ "idris_b32UDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
387387doOp v LB32SDiv [x, y] =
388− v ++ "idris_b32SDiv(" ++ creg x ++ "," ++ creg y ++ ")"
389−
390−doOp v LB32Z64 [x] = v ++ "idris_b32Z64(" ++ creg x ++ ")"
391−doOp v LB32S64 [x] = v ++ "idris_b32S64(" ++ creg x ++ ")"
392−doOp v LB32T8 [x] = v ++ "idris_b32T8(" ++ creg x ++ ")"
393−doOp v LB32T16 [x] = v ++ "idris_b32T16(" ++ creg x ++ ")"
394−
395−doOp v LB64Lt [x, y] = v ++ "idris_b64Lt(" ++ creg x ++ "," ++ creg y ++ ")"
396−doOp v LB64Lte [x, y] = v ++ "idris_b64Lte(" ++ creg x ++ "," ++ creg y ++ ")"
397−doOp v LB64Eq [x, y] = v ++ "idris_b64Eq(" ++ creg x ++ "," ++ creg y ++ ")"
398−doOp v LB64Gte [x, y] = v ++ "idris_b64Gte(" ++ creg x ++ "," ++ creg y ++ ")"
399−doOp v LB64Gt [x, y] = v ++ "idris_b64Gt(" ++ creg x ++ "," ++ creg y ++ ")"
400−
401−doOp v LB64Shl [x, y] = v ++ "idris_b64Shl(" ++ creg x ++ "," ++ creg y ++ ")"
402−doOp v LB64LShr [x, y] = v ++ "idris_b64Shr(" ++ creg x ++ "," ++ creg y ++ ")"
403−doOp v LB64AShr [x, y] = v ++ "idris_b64AShr(" ++ creg x ++ "," ++ creg y ++ ")"
404−doOp v LB64And [x, y] = v ++ "idris_b64And(" ++ creg x ++ "," ++ creg y ++ ")"
405−doOp v LB64Or [x, y] = v ++ "idris_b64Or(" ++ creg x ++ "," ++ creg y ++ ")"
406−doOp v LB64Xor [x, y] = v ++ "idris_b64Xor(" ++ creg x ++ "," ++ creg y ++ ")"
407−doOp v LB64Compl [x, y] = v ++ "idris_b64Compl(" ++ creg x ++ "," ++ creg y ++ ")"
388+ v ++ "idris_b32SDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
389+
390+doOp v LB32Z64 [x] = v ++ "idris_b32Z64(vm, " ++ creg x ++ ")"
391+doOp v LB32S64 [x] = v ++ "idris_b32S64(vm, " ++ creg x ++ ")"
392+doOp v LB32T8 [x] = v ++ "idris_b32T8(vm, " ++ creg x ++ ")"
393+doOp v LB32T16 [x] = v ++ "idris_b32T16(vm, " ++ creg x ++ ")"
394+
395+doOp v LB64Lt [x, y] = v ++ "idris_b64Lt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
396+doOp v LB64Lte [x, y] = v ++ "idris_b64Lte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
397+doOp v LB64Eq [x, y] = v ++ "idris_b64Eq(vm, " ++ creg x ++ "," ++ creg y ++ ")"
398+doOp v LB64Gte [x, y] = v ++ "idris_b64Gte(vm, " ++ creg x ++ "," ++ creg y ++ ")"
399+doOp v LB64Gt [x, y] = v ++ "idris_b64Gt(vm, " ++ creg x ++ "," ++ creg y ++ ")"
400+
401+doOp v LB64Shl [x, y] = v ++ "idris_b64Shl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
402+doOp v LB64LShr [x, y] = v ++ "idris_b64Shr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
403+doOp v LB64AShr [x, y] = v ++ "idris_b64AShr(vm, " ++ creg x ++ "," ++ creg y ++ ")"
404+doOp v LB64And [x, y] = v ++ "idris_b64And(vm, " ++ creg x ++ "," ++ creg y ++ ")"
405+doOp v LB64Or [x, y] = v ++ "idris_b64Or(vm, " ++ creg x ++ "," ++ creg y ++ ")"
406+doOp v LB64Xor [x, y] = v ++ "idris_b64Xor(vm, " ++ creg x ++ "," ++ creg y ++ ")"
407+doOp v LB64Compl [x, y] = v ++ "idris_b64Compl(vm, " ++ creg x ++ "," ++ creg y ++ ")"
408408
409409doOp v LB64Plus [x, y] =
410− v ++ "idris_b64Plus(" ++ creg x ++ "," ++ creg y ++ ")"
410+ v ++ "idris_b64Plus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
411411doOp v LB64Minus [x, y] =
412− v ++ "idris_b64Minus(" ++ creg x ++ "," ++ creg y ++ ")"
412+ v ++ "idris_b64Minus(vm, " ++ creg x ++ "," ++ creg y ++ ")"
413413doOp v LB64Times [x, y] =
414− v ++ "idris_b64Times(" ++ creg x ++ "," ++ creg y ++ ")"
414+ v ++ "idris_b64Times(vm, " ++ creg x ++ "," ++ creg y ++ ")"
415415doOp v LB64UDiv [x, y] =
416− v ++ "idris_b64UDiv(" ++ creg x ++ "," ++ creg y ++ ")"
416+ v ++ "idris_b64UDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
417417doOp v LB64SDiv [x, y] =
418− v ++ "idris_b64SDiv(" ++ creg x ++ "," ++ creg y ++ ")"
418+ v ++ "idris_b64SDiv(vm, " ++ creg x ++ "," ++ creg y ++ ")"
419419
420−doOp v LB64T8 [x] = v ++ "idris_b64T8(" ++ creg x ++ ")"
421−doOp v LB64T16 [x] = v ++ "idris_b64T16(" ++ creg x ++ ")"
422−doOp v LB64T32 [x] = v ++ "idris_b64T32(" ++ creg x ++ ")"
420+doOp v LB64T8 [x] = v ++ "idris_b64T8(vm, " ++ creg x ++ ")"
421+doOp v LB64T16 [x] = v ++ "idris_b64T16(vm, " ++ creg x ++ ")"
422+doOp v LB64T32 [x] = v ++ "idris_b64T32(vm, " ++ creg x ++ ")"
423423
424424doOp v LFExp [x] = v ++ "MKFLOAT(exp(GETFLOAT(" ++ creg x ++ ")))"
425425doOp v LFLog [x] = v ++ "MKFLOAT(log(GETFLOAT(" ++ creg x ++ ")))"