rosella/libcompiler
Jesse D. McDonald be48535995 Change bytecode from 'frame' vars to 'transient' values.
Each transient identifies the value of the corresponding previous bytecode.
This change (a) frees up many bytecodes formerly used by the conditional
expression (if c t f); (b) regularizes the bytecode by always placing opcodes
before operands; and (c) causes the bytecode to conform to the Single Static
Assignment (SSA) form preferred by e.g. LLVM.

Includes updates to the hand-assembled files (*.rla) and the bytecode compiler.
2012-07-14 13:47:28 -05:00
..
compiler.scm Lots of misc. cleanup, and a few bug fixes. 2012-07-14 13:45:22 -05:00
mapper.scm Change bytecode from 'frame' vars to 'transient' values. 2012-07-14 13:47:28 -05:00
optimizer.scm Refactor (define) parser to work in (let), (lambda), (begin), etc. 2012-07-14 13:45:54 -05:00
primitives.scm Change bytecode from 'frame' vars to 'transient' values. 2012-07-14 13:47:28 -05:00
reader.scm Refactor (define) parser to work in (let), (lambda), (begin), etc. 2012-07-14 13:45:54 -05:00
simplifier.scm Change bytecode from 'frame' vars to 'transient' values. 2012-07-14 13:47:28 -05:00
utilities.scm Change bytecode from 'frame' vars to 'transient' values. 2012-07-14 13:47:28 -05:00
writer.scm Change bytecode from 'frame' vars to 'transient' values. 2012-07-14 13:47:28 -05:00