[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 04/06: Small expression-effects tweak
From: |
Andy Wingo |
Subject: |
[Guile-commits] 04/06: Small expression-effects tweak |
Date: |
Fri, 24 Jul 2015 15:13:40 +0000 |
wingo pushed a commit to branch master
in repository guile.
commit bcfa9fe70ec26424ee5c229fbc4bc748f95ce953
Author: Andy Wingo <address@hidden>
Date: Fri Jul 24 12:21:00 2015 +0200
Small expression-effects tweak
* module/language/cps/effects-analysis.scm (expression-effects):
Closures with zero free vars don't allocate.
---
module/language/cps/effects-analysis.scm | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/module/language/cps/effects-analysis.scm
b/module/language/cps/effects-analysis.scm
index 874eb78..af1a529 100644
--- a/module/language/cps/effects-analysis.scm
+++ b/module/language/cps/effects-analysis.scm
@@ -438,6 +438,8 @@ is or might be a read or a write to the same location as A."
(match exp
((or ($ $const) ($ $prim) ($ $values))
&no-effects)
+ (($ $closure _ 0)
+ &no-effects)
((or ($ $fun) ($ $rec) ($ $closure))
(&allocate &unknown-memory-kinds))
(($ $prompt)
- [Guile-commits] branch master updated (4aabc20 -> ee85e29), Andy Wingo, 2015/07/24
- [Guile-commits] 01/06: Factor out compute-effects/elide-type-checks from dce.scm, Andy Wingo, 2015/07/24
- [Guile-commits] 04/06: Small expression-effects tweak,
Andy Wingo <=
- [Guile-commits] 02/06: Move solve-flow-equations to utils, Andy Wingo, 2015/07/24
- [Guile-commits] 05/06: Eliminate trampoline gotos when possible in compile-bytecode, Andy Wingo, 2015/07/24
- [Guile-commits] 03/06: Loop-invariant code motion, Andy Wingo, 2015/07/24
- [Guile-commits] 06/06: Rotate comparisons down to loop back-edges, Andy Wingo, 2015/07/24