From a7911addf71fdfbf5008afd938b49116d462d908 Mon Sep 17 00:00:00 2001
From: Araq <rumpf_a@web.de>
Date: Wed, 16 Jul 2014 00:41:03 +0200
Subject: parseBiggestFloat is now builtin

---
 compiler/vmgen.nim | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

(limited to 'compiler/vmgen.nim')

diff --git a/compiler/vmgen.nim b/compiler/vmgen.nim
index c1ec637dd..fd0c3fc69 100644
--- a/compiler/vmgen.nim
+++ b/compiler/vmgen.nim
@@ -852,6 +852,24 @@ proc genMagic(c: PCtx; n: PNode; dest: var TDest) =
     c.freeTemp(tmp1)
     c.freeTemp(tmp2)
     c.freeTemp(tmp3)
+  of mParseBiggestFloat:
+    if dest < 0: dest = c.getTemp(n.typ)
+    var d2: TRegister
+    # skip 'nkHiddenAddr':
+    let d2AsNode = n.sons[2].sons[0]
+    if needsAsgnPatch(d2AsNode):
+      d2 = c.getTemp(getSysType(tyFloat))
+    else:
+      d2 = c.genx(d2AsNode)
+    var
+      tmp1 = c.genx(n.sons[1])
+      tmp3 = c.genx(n.sons[3])
+    c.gABC(n, opcParseFloat, dest, tmp1, d2)
+    c.gABC(n, opcParseFloat, tmp3)
+    c.freeTemp(tmp1)
+    c.freeTemp(tmp3)
+    c.genAsgnPatch(d2AsNode, d2)
+    c.freeTemp(d2)    
   of mReset:
     unused(n, dest)
     var d = c.genx(n.sons[1])
-- 
cgit 1.4.1-2-gfad0