summaryrefslogtreecommitdiff
path: root/am
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2016-11-16 22:37:54 +0100
committerAndy Wingo <wingo@pobox.com>2016-11-16 22:55:45 +0100
commitca74e3fae52dd23f8e8f12194d07041e207f68e7 (patch)
tree8408d8670749d34b4686d93186dd7ec3605a9d64 /am
parentfcb43488b39db6c2ad15c2dc7f7b53aa492021b4 (diff)
Add handle-interrupts inst and compiler pass
* libguile/vm-engine.c (vm_engine): Remove initial VM_HANDLE_INTERRUPTS call; surely our caller already handled interrupts. Add handle-interrupts opcode. * am/bootstrap.am (SOURCES): * module/Makefile.am (SOURCES): Add handle-interrupts.scm. * module/system/vm/assembler.scm (system): * module/language/cps/compile-bytecode.scm (compile-function): (lower-cps): Add handle-interrupts support. * module/language/cps/handle-interrupts.scm: New file.
Diffstat (limited to 'am')
-rw-r--r--am/bootstrap.am1
1 files changed, 1 insertions, 0 deletions
diff --git a/am/bootstrap.am b/am/bootstrap.am
index d5f25abfa..e0d4764f5 100644
--- a/am/bootstrap.am
+++ b/am/bootstrap.am
@@ -81,6 +81,7 @@ SOURCES = \
language/cps/dce.scm \
language/cps/effects-analysis.scm \
language/cps/elide-values.scm \
+ language/cps/handle-interrupts.scm \
language/cps/licm.scm \
language/cps/peel-loops.scm \
language/cps/primitives.scm \