mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-15 08:10:17 +02:00
Add prune-top-level-scopes pass
* module/language/cps/prune-top-level-scopes.scm: New pass, to prune unneeded "cache-current-module!" forms. * module/language/cps/compile-bytecode.scm: * module/Makefile.am: Add the new pass to the build and enable by default.
This commit is contained in:
parent
9253198baf
commit
dd692618b8
3 changed files with 116 additions and 0 deletions
|
@ -35,6 +35,7 @@
|
|||
#:use-module (language cps dfg)
|
||||
#:use-module (language cps elide-values)
|
||||
#:use-module (language cps primitives)
|
||||
#:use-module (language cps prune-top-level-scopes)
|
||||
#:use-module (language cps reify-primitives)
|
||||
#:use-module (language cps simplify)
|
||||
#:use-module (language cps slot-allocation)
|
||||
|
@ -60,6 +61,7 @@
|
|||
;; aren't used, and thus shouldn't be consed.
|
||||
|
||||
(let* ((exp (run-pass exp eliminate-dead-code #:eliminate-dead-code? #t))
|
||||
(exp (run-pass exp prune-top-level-scopes #:prune-top-level-scopes? #t))
|
||||
(exp (run-pass exp simplify #:simplify? #t))
|
||||
(exp (run-pass exp contify #:contify? #t))
|
||||
(exp (run-pass exp inline-constructors #:inline-constructors? #t))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue