1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-23 12:00:21 +02:00

Refactor handling of active VM registers

* libguile/threads.h (scm_thread): Remove unused jmp_buf regs member.
* libguile/vm.h (struct scm_vm): Rename resumable_prompt_cookie to just
  "registers"; we know it's a jmp_buf pointer.
* libguile/vm.c (scm_call_n):
* libguile/throw.c (catch):
* libguile/eval.c (eval):
* libguile/control.c (scm_suspendable_continuation_p): Adapt to cookie
  renaming.
This commit is contained in:
Andy Wingo 2018-06-27 18:21:04 +02:00
parent fd4eb14751
commit 18431e6e63
6 changed files with 14 additions and 15 deletions

View file

@ -20,6 +20,8 @@
#ifndef _SCM_VM_H_
#define _SCM_VM_H_
#include <setjmp.h>
#include <libguile/gc.h>
#include <libguile/programs.h>
@ -56,7 +58,7 @@ struct scm_vm {
union scm_vm_stack_element *stack_top; /* highest address in allocated stack */
SCM overflow_handler_stack; /* alist of max-stack-size -> thunk */
SCM hooks[SCM_VM_NUM_HOOKS]; /* hooks */
const void *resumable_prompt_cookie; /* opaque cookie */
jmp_buf *registers; /* registers captured at latest vm entry */
int engine; /* which vm engine we're using */
};