1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-29 19:30:36 +02:00

Introduce target-runtime parameter for backend-specific CPS lowering

* module/system/base/target.scm (target-runtime): New export.
* module/language/cps/optimize.scm (make-cps-lowerer): Load a
backend-specific lowering module dynamically.

* module/language/cps/guile-vm.scm: New module for lowering to Guile's
VM.
* module/language/cps/guile-vm/loop-instrumentation.scm:
* module/language/cps/guile-vm/lower-primcalls.scm:
* module/language/cps/guile-vm/reify-primitives.scm: Move here, from
parent dir.

* am/bootstrap.am: Update for new file list.
This commit is contained in:
Andy Wingo 2023-08-17 11:47:21 +02:00
parent 0e9ccaf47c
commit 941c757ab7
7 changed files with 67 additions and 19 deletions

View file

@ -98,12 +98,9 @@ SOURCES = \
language/cps/intmap.scm \
language/cps/intset.scm \
language/cps/licm.scm \
language/cps/loop-instrumentation.scm \
language/cps/lower-primcalls.scm \
language/cps/optimize.scm \
language/cps/peel-loops.scm \
language/cps/prune-top-level-scopes.scm \
language/cps/reify-primitives.scm \
language/cps/renumber.scm \
language/cps/return-types.scm \
language/cps/rotate-loops.scm \
@ -122,6 +119,11 @@ SOURCES = \
language/cps/verify.scm \
language/cps/with-cps.scm \
\
language/cps/guile-vm.scm \
language/cps/guile-vm/loop-instrumentation.scm\
language/cps/guile-vm/lower-primcalls.scm \
language/cps/guile-vm/reify-primitives.scm \
\
ice-9/and-let-star.scm \
ice-9/arrays.scm \
ice-9/atomic.scm \