mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-22 19:44:10 +02:00
Loop-invariant code motion
* module/language/cps/licm.scm: New pass. * module/language/cps/optimize.scm: Wire up new pass. * module/Makefile.am: Add new file.
This commit is contained in:
parent
bebc70c8b1
commit
ec9554d138
3 changed files with 311 additions and 0 deletions
|
@ -29,6 +29,7 @@
|
|||
#:use-module (language cps cse)
|
||||
#:use-module (language cps dce)
|
||||
#:use-module (language cps elide-values)
|
||||
#:use-module (language cps licm)
|
||||
#:use-module (language cps prune-top-level-scopes)
|
||||
#:use-module (language cps prune-bailouts)
|
||||
#:use-module (language cps self-references)
|
||||
|
@ -95,6 +96,7 @@
|
|||
(specialize-primcalls #:specialize-primcalls? #t)
|
||||
(elide-values #:elide-values? #t)
|
||||
(prune-bailouts #:prune-bailouts? #t)
|
||||
(hoist-loop-invariant-code #:licm? #t)
|
||||
(eliminate-common-subexpressions #:cse? #t)
|
||||
(type-fold #:type-fold? #t)
|
||||
(resolve-self-references #:resolve-self-references? #t)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue