First steps in optimizer.

Still WIP, though, but it already optimizes e.g. this:

default { timer() { 2+2; } }

to this:

default { timer() { 4; } }
This commit is contained in:
Sei Lisa 2014-07-26 21:29:35 +02:00
parent e8e411ad04
commit a3354fae0e
3 changed files with 137 additions and 2 deletions

View file

@ -161,7 +161,7 @@ class outscript(object):
else:
ret += self.OutIndented(code[4])
return ret
if node == 'EXPR':
if node in ('EXPR', 'CONSTANT', 'IDENT'): # FIXME: Hack!
return self.dent() + self.OutExpr(code) + ';\n'
if node == 'WHILE':
ret = self.dent() + 'while (' + self.OutExpr(code[2]) + ')\n'