mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-23 04:50:28 +02:00
* module/language/cps/effects-analysis.scm (effects-clobber): New helper. (length): Only depend on &cdr. (synthesize-definition-effects!): New interface. * module/language/cps/cse.scm (compute-available-expressions): Don't count out constructors here -- we'll do that below. (compute-defs): Add a comment. (compute-equivalent-subexpressions): Synthesize getter calls at constructor/setter sites, so that (set-car! x y) can cause a future (car x) to just reference y. The equiv-labels set now stores the defined vars, so there is no need for the defs vector. (cse, apply-cse): Adapt to compute-equivalent-subexpressions change. |
||
---|---|---|
.. | ||
brainfuck | ||
bytecode | ||
cps | ||
ecmascript | ||
elisp | ||
scheme | ||
tree-il | ||
value | ||
bytecode.scm | ||
cps.scm | ||
tree-il.scm |