1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-03 05:20:16 +02:00
guile/module/language/tree-il
Andy Wingo 82490a665c Don't peval-penalize let-bound lambdas only referenced once
* module/language/tree-il/peval.scm (peval): When going to peval a call
  whose operator isn't just a lambda but is a let-bound lambda, as one
  bound via define-inlinable, don't create a new counter if the lambda
  is only referenced once in the source.  Avoids needless failure to
  inline once-referenced procedures.

* test-suite/tests/peval.test ("partial evaluation"): Wheeeee
2014-02-17 22:23:40 +01: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 Rename $ktrunc to $kreceive 2014-01-12 12:37:05 +01: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