1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 04:10:18 +02:00
guile/test-suite/vm
Andy Wingo ea9f4f4b15 add call-with-vm; remove thread-vm bits; remove vm-apply; engines settable.
* libguile/vm.h (scm_c_vm_run): Make internal.
* libguile/vm.c (vm_default_engine): New static global variable.
  (make_vm): Set vp->engine based on
  (scm_vm_apply): Remove in favor of call-with-vm.
  (scm_thread_vm, scm_set_thread_vm_x): Remove these, as they did not
  have a well-defined meaning, and were dangerous to call on other
  threads.
  (scm_the_vm): Reinstate previous definition.
  (symbol_to_vm_engine, vm_engine_to_symbol)
  (vm_has_pending_computation): New helpers.
  (scm_vm_engine, scm_set_vm_engine_x, scm_c_set_vm_engine_x): New
  accessors for VM engines.
  (scm_c_set_default_vm_engine_x, scm_set_default_vm_engine_x): New
  setters for the default VM engine.
  (scm_call_with_vm): New function, applies a procedure to arguments in
  a context in which a given VM is current.

* libguile/eval.c (eval, scm_apply): VM dispatch goes through
  scm_call_with_vm.

* test-suite/tests/control.test ("the-vm"):
* module/system/vm/coverage.scm (with-code-coverage): Use call-with-vm.

* module/system/vm/vm.scm: Update exports.

* test-suite/vm/run-vm-tests.scm (run-vm-program):
* test-suite/tests/compiler.test ("current-reader"): Just rely on the
  result of make-program being an applicable.

* test-suite/tests/eval.test ("stack overflow"): Add a note that this
  test does not test what it should.
2010-09-27 21:12:29 +02:00
..
Makefile.am Clean up `test-suite/vm'. 2010-05-26 23:41:24 +02:00
run-vm-tests.scm add call-with-vm; remove thread-vm bits; remove vm-apply; engines settable. 2010-09-27 21:12:29 +02:00
t-basic-contructs.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-call-cc.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-catch.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-closure.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-closure2.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-closure3.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-closure4.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-do-loop.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-global-bindings.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-literal-integers.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-macros.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-macros2.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-map.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-match.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-mutual-toplevel-defines.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-or.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-proc-with-setter.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-quasiquote.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-records.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00
t-values.scm Rename the testsuite' directory to test-suite/vm'. 2010-05-26 23:41:24 +02:00