diff options
Diffstat (limited to 'module/language/tree-il/optimize.scm')
-rw-r--r-- | module/language/tree-il/optimize.scm | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/module/language/tree-il/optimize.scm b/module/language/tree-il/optimize.scm index 52baddb08..14460ebab 100644 --- a/module/language/tree-il/optimize.scm +++ b/module/language/tree-il/optimize.scm @@ -22,7 +22,14 @@ (define-module (language tree-il optimize) #:use-module (system base syntax) #:use-module (language tree-il) - #:export (resolve-primitives!)) + #:use-module (language tree-il inline) + #:export (optimize!)) + +(define (env-module e) + (if e (car e) (current-module))) + +(define (optimize! x env opts) + (expand-primitives! (resolve-primitives! x (env-module env)))) ;; Possible optimizations: ;; * constant folding, propagation |