summaryrefslogtreecommitdiff
path: root/module/system
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2021-04-01 14:46:01 +0200
committerAndy Wingo <wingo@pobox.com>2021-05-11 21:39:07 +0200
commita892791b43a68a80f2caeab49b123bc828324969 (patch)
tree1f3279ef50372b92171417867afe411de5aa601c /module/system
parent809b1651289b330fbcc30d539e1b3c5c20bc83af (diff)
downloadguile-a892791b43a68a80f2caeab49b123bc828324969.tar.gz
Add pass to resolve free toplevel references in declarative modules
* am/bootstrap.am (SOURCES): * module/Makefile.am (SOURCES): * module/language/tree-il/optimize.scm (make-optimizer): Wire up the new pass. * module/language/tree-il/resolve-free-vars.scm: New pass. * module/system/base/optimize.scm (available-optimizations): Enable new pass at -O1.
Diffstat (limited to 'module/system')
-rw-r--r--module/system/base/optimize.scm1
1 files changed, 1 insertions, 0 deletions
diff --git a/module/system/base/optimize.scm b/module/system/base/optimize.scm
index 03c57bf1b..1fd666376 100644
--- a/module/system/base/optimize.scm
+++ b/module/system/base/optimize.scm
@@ -28,6 +28,7 @@
(match lang-name
('tree-il
'((#:cps? 2)
+ (#:resolve-free-vars? 1)
(#:resolve-primitives? 1)
(#:expand-primitives? 1)
(#:letrectify? 2)