1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-05 23:20:38 +02:00
guile/module/language/cps
Andy Wingo b3ae2b5068 Add VM and compiler support for calls to known procedures
* module/language/cps.scm ($callk): New expression type, for calls to
  known labels.  Part of "low CPS".
* module/language/cps/arities.scm:
* module/language/cps/closure-conversion.scm:
* module/language/cps/compile-bytecode.scm:
* module/language/cps/dce.scm:
* module/language/cps/dfg.scm:
* module/language/cps/effects-analysis.scm:
* module/language/cps/simplify.scm:
* module/language/cps/slot-allocation.scm:
* module/language/cps/verify.scm: Adapt call sites.

* libguile/vm-engine.c (call-label, tail-call-label): New instructions.
  Renumber the rest; this is an ABI change.

* libguile/_scm.h (SCM_OBJCODE_MINOR_VERSION):
* module/system/vm/assembler.scm (*bytecode-minor-version*): Bump.

* doc/ref/compiler.texi (CPS in Guile): Document $callk.
2014-02-02 23:19:22 +01:00
..
arities.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
closure-conversion.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
compile-bytecode.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
constructors.scm Source information goes on the $continue, not the $cont. 2013-11-07 10:32:21 +01:00
contification.scm Rename "RTL" to "bytecode" 2013-12-02 21:31:47 +01:00
dce.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
dfg.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
effects-analysis.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
elide-values.scm Rename $ktrunc to $kreceive 2014-01-12 12:37:05 +01:00
primitives.scm Fix prim -> VM op mapping for u8/s8 bytevector ops 2014-01-11 16:01:10 +01:00
reify-primitives.scm Rename "RTL" to "bytecode" 2013-12-02 21:31:47 +01:00
simplify.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
slot-allocation.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00
spec.scm Rename "RTL" to "bytecode" 2013-12-02 21:31:47 +01:00
specialize-primcalls.scm Rename "RTL" to "bytecode" 2013-12-02 21:31:47 +01:00
verify.scm Add VM and compiler support for calls to known procedures 2014-02-02 23:19:22 +01:00