1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-10 05:50:26 +02:00

Prune bailouts after contification

* module/language/cps/compile-bytecode.scm (optimize): Prune bailouts
  after contifying, so that we return to the tail of the contified
  function.
This commit is contained in:
Andy Wingo 2014-04-05 12:16:34 +02:00
parent 3625351955
commit 9e94cd9bf5

View file

@ -63,14 +63,14 @@
;; called. The last is mainly to eliminate rest parameters that ;; called. The last is mainly to eliminate rest parameters that
;; aren't used, and thus shouldn't be consed. ;; aren't used, and thus shouldn't be consed.
(let* ((exp (run-pass exp prune-bailouts #:prune-bailouts? #t)) (let* ((exp (run-pass exp eliminate-dead-code #:eliminate-dead-code? #t))
(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 prune-top-level-scopes #:prune-top-level-scopes? #t))
(exp (run-pass exp simplify #:simplify? #t)) (exp (run-pass exp simplify #:simplify? #t))
(exp (run-pass exp contify #:contify? #t)) (exp (run-pass exp contify #:contify? #t))
(exp (run-pass exp inline-constructors #:inline-constructors? #t)) (exp (run-pass exp inline-constructors #:inline-constructors? #t))
(exp (run-pass exp specialize-primcalls #:specialize-primcalls? #t)) (exp (run-pass exp specialize-primcalls #:specialize-primcalls? #t))
(exp (run-pass exp elide-values #:elide-values? #t)) (exp (run-pass exp elide-values #:elide-values? #t))
(exp (run-pass exp prune-bailouts #:prune-bailouts? #t))
(exp (run-pass exp eliminate-common-subexpressions #:cps-cse? #t)) (exp (run-pass exp eliminate-common-subexpressions #:cps-cse? #t))
(exp (run-pass exp eliminate-dead-code #:eliminate-dead-code? #t)) (exp (run-pass exp eliminate-dead-code #:eliminate-dead-code? #t))
(exp (run-pass exp simplify #:simplify? #t))) (exp (run-pass exp simplify #:simplify? #t)))