1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-23 04:50:28 +02:00
guile/module/language/tree-il
Andy Wingo 9a1dfb7d2e Continuation labels and variable identifiers may be integers
* module/language/cps.scm (label-counter, var-counter): New parameters,
  for producing fresh label and var names.
  (fresh-label, fresh-var): New procedures.
  (let-fresh): New macro, will replace let-gensyms.
  (build-cps-term): Use let-fresh.

* module/language/tree-il/compile-cps.scm: Use let-fresh to generate
  fresh names.

* module/system/vm/assembler.scm (make-meta, begin-kw-arity): Allow
  exact integers as labels.
  (link-debug): Explicitly mark low-pc as being an "addr" value.
2014-03-31 18:20:55 +02:00
..
analyze.scm rtl-program? -> program? 2013-11-19 19:11:40 +01:00
canonicalize.scm Inline escape-only prompt bodies in the Tree-IL 2013-08-11 16:45:31 +02:00
compile-cps.scm Continuation labels and variable identifiers may be integers 2014-03-31 18:20:55 +02:00
cse.scm Inline escape-only prompt bodies in the Tree-IL 2013-08-11 16:45:31 +02:00
debug.scm <prompt> body and handler are lambdas; add escape-only? field 2013-07-06 20:27:21 +09:00
effects.scm Effects analysis distinguishes between struct fields 2013-11-10 12:05:35 +01:00
fix-letrec.scm Tree-il post-order rewriter no longer destructive 2013-06-10 22:46:08 +02:00
inline.scm separate peval and a new canonicalization pass into their own modules 2011-09-28 19:39:39 +02:00
optimize.scm Pre-order tree-il rewrites are now non-destructive 2013-06-10 22:46:08 +02:00
peval.scm Don't peval-penalize let-bound lambdas only referenced once 2014-02-17 22:23:40 +01:00
primitives.scm bytevector-length is an interesting primitive. 2014-02-13 17:51:20 +01:00
spec.scm Remove tree-il->glil compiler 2013-11-08 14:57:43 +01:00