summary refs log tree commit diff stats
path: root/compiler/vmgen.nim
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2014-05-25 21:20:11 +0200
committerAraq <rumpf_a@web.de>2014-05-25 21:20:11 +0200
commitb230303fd6dd1d593aecf792ee8f72552e7e5946 (patch)
treeff1feaecd19fd86f9b5e5f8e42f56fd67c1d3635 /compiler/vmgen.nim
parentbdb2d21f276c10aee122218384e568ef843690fa (diff)
downloadNim-b230303fd6dd1d593aecf792ee8f72552e7e5946.tar.gz
fixes the bug that keeps the template engine package from working
Diffstat (limited to 'compiler/vmgen.nim')
-rw-r--r--compiler/vmgen.nim6
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler/vmgen.nim b/compiler/vmgen.nim
index ba1b33e77..186d27ae4 100644
--- a/compiler/vmgen.nim
+++ b/compiler/vmgen.nim
@@ -969,7 +969,7 @@ const
 
 proc fitsRegister*(t: PType): bool =
   t.skipTypes(abstractInst-{tyTypeDesc}).kind in {
-    tyRange, tyEnum, tyBool, tyInt..tyUInt64}
+    tyRange, tyEnum, tyBool, tyInt..tyUInt64, tyChar}
 
 proc requiresCopy(n: PNode): bool =
   if n.typ.skipTypes(abstractInst-{tyTypeDesc}).kind in atomicTypes:
@@ -1191,6 +1191,8 @@ proc genArrAccess2(c: PCtx; n: PNode; dest: var TDest; opc: TOpcode;
     c.gABC(n, opcNodeToReg, dest, cc)
     c.freeTemp(cc)
   else:
+    #message(n.info, warnUser, "argh")
+    #echo "FLAGS ", flags, " ", fitsRegister(n.typ), " ", typeToString(n.typ)
     c.gABC(n, opc, dest, a, b)
   c.freeTemp(a)
   c.freeTemp(b)
@@ -1623,7 +1625,7 @@ proc genProc(c: PCtx; s: PSym): int =
     c.gABC(body, opcEof, eofInstr.regA)
     c.optimizeJumps(result)
     s.offset = c.prc.maxSlots
-    #if s.name.s == "parse_until_symbol":
+    #if s.name.s == "find":
     #  echo renderTree(body)
     #  c.echoCode(result)
     c.prc = oldPrc