summaryrefslogtreecommitdiff
path: root/am
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2017-12-26 10:18:59 +0100
committerAndy Wingo <wingo@pobox.com>2017-12-27 15:46:31 +0100
commit36e6a3dacacbcc981395b10bfe36e2ef6efad37e (patch)
tree4e5801bf4dbc824db1c66f7a29c890608c5c7ff2 /am
parent549ad3ce8cfdc507b6b4dd0b31e6e253f6a0e61e (diff)
downloadguile-36e6a3dacacbcc981395b10bfe36e2ef6efad37e.tar.gz
Refactor lowering of Tree-IL primcalls to CPS
* module/language/tree-il/cps-primitives.scm: New file, replacing (language cps primitives). Lists known primitives and their relation to Tree-IL explicitly, instead of assuming that any Tree-IL primcall that shares a name with a bytecode instruction is a CPS primcall. * module/language/cps/verify.scm: Remove use of (language cps primitives) and primcall arity checking. Would be nice to add this back at some point. * module/language/tree-il/compile-cps.scm (convert): Refactor to use new tree-il-primitive->cps-primitive+nargs+nvalues helper. * module/Makefile.am: * am/bootstrap.am: Adapt.
Diffstat (limited to 'am')
-rw-r--r--am/bootstrap.am2
1 files changed, 1 insertions, 1 deletions
diff --git a/am/bootstrap.am b/am/bootstrap.am
index 97780e79c..8e83e518b 100644
--- a/am/bootstrap.am
+++ b/am/bootstrap.am
@@ -64,6 +64,7 @@ SOURCES = \
language/tree-il/analyze.scm \
language/tree-il/canonicalize.scm \
language/tree-il/compile-cps.scm \
+ language/tree-il/cps-primitives.scm \
language/tree-il/debug.scm \
language/tree-il/effects.scm \
language/tree-il/fix-letrec.scm \
@@ -85,7 +86,6 @@ SOURCES = \
language/cps/handle-interrupts.scm \
language/cps/licm.scm \
language/cps/peel-loops.scm \
- language/cps/primitives.scm \
language/cps/prune-bailouts.scm \
language/cps/prune-top-level-scopes.scm \
language/cps/reify-primitives.scm \