1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-08 02:40:17 +02:00
guile/module/language/tree-il
Andy Wingo b7946e9ec6 push new frame on stack before procedure & args
* libguile/_scm.h (SCM_OBJCODE_MINOR_VERSION): Bump

* libguile/vm-engine.c (vm_engine): Push a frame corresponding to the
  mv-call.

* libguile/vm-i-system.c: Renumber ops.
  (new-frame): New op, pushes a frame.
  (call, mv-call): No need to shuffle args, though we do need to pop the
  frame in the non-vm call case.
  (goto/args): Inconsequential tweaks.
  (call/cc): Push a frame if needed.

* module/language/tree-il/compile-glil.scm (flatten): Emit `new-frame'
  as appropriate.

* test-suite/tests/tree-il.test: Fix to expect new-frame.
2009-08-20 18:52:50 +02:00
..
analyze.scm lambda, the ultimate goto 2009-08-07 19:06:15 +02:00
compile-glil.scm push new frame on stack before procedure & args 2009-08-20 18:52:50 +02:00
fix-letrec.scm "fix" <let>-bound lambda expressions too 2009-08-12 21:29:08 +02:00
inline.scm actually implement "fixing letrec" 2009-08-06 16:01:24 +02:00
optimize.scm let-values in terms of syntax-case, add make-tree-il-folder 2009-08-05 21:35:30 +02:00
primitives.scm loop detection in the house 2009-08-06 17:46:38 +02:00
spec.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00