mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-01 12:20:26 +02:00
Remove the restore-continuation-hook.
* libguile/vm.h: * libguile/vm.c: * libguile/vm-engine.c: * module/system/vm/traps.scm: * module/system/vm/vm.scm: Remove the unused and redundant restore-continuation-hook.
This commit is contained in:
parent
36cc0b901c
commit
f689dd6982
5 changed files with 4 additions and 33 deletions
|
@ -125,8 +125,6 @@
|
||||||
RUN_HOOK0 (next)
|
RUN_HOOK0 (next)
|
||||||
#define ABORT_CONTINUATION_HOOK() \
|
#define ABORT_CONTINUATION_HOOK() \
|
||||||
RUN_HOOK0 (abort)
|
RUN_HOOK0 (abort)
|
||||||
#define RESTORE_CONTINUATION_HOOK() \
|
|
||||||
RUN_HOOK0 (restore_continuation)
|
|
||||||
|
|
||||||
#define VM_HANDLE_INTERRUPTS \
|
#define VM_HANDLE_INTERRUPTS \
|
||||||
SCM_ASYNC_TICK_WITH_GUARD_CODE (current_thread, SYNC_IP (), CACHE_FP ())
|
SCM_ASYNC_TICK_WITH_GUARD_CODE (current_thread, SYNC_IP (), CACHE_FP ())
|
||||||
|
@ -3228,7 +3226,6 @@ VM_NAME (scm_i_thread *current_thread, struct scm_vm *vp,
|
||||||
#undef NEXT_JUMP
|
#undef NEXT_JUMP
|
||||||
#undef POP_CONTINUATION_HOOK
|
#undef POP_CONTINUATION_HOOK
|
||||||
#undef PUSH_CONTINUATION_HOOK
|
#undef PUSH_CONTINUATION_HOOK
|
||||||
#undef RESTORE_CONTINUATION_HOOK
|
|
||||||
#undef RETURN
|
#undef RETURN
|
||||||
#undef RETURN_ONE_VALUE
|
#undef RETURN_ONE_VALUE
|
||||||
#undef RETURN_VALUE_LIST
|
#undef RETURN_VALUE_LIST
|
||||||
|
|
|
@ -167,7 +167,6 @@ static void vm_dispatch_push_continuation_hook (struct scm_vm *vp) SCM_NOINLINE;
|
||||||
static void vm_dispatch_pop_continuation_hook (struct scm_vm *vp, SCM *old_fp) SCM_NOINLINE;
|
static void vm_dispatch_pop_continuation_hook (struct scm_vm *vp, SCM *old_fp) SCM_NOINLINE;
|
||||||
static void vm_dispatch_next_hook (struct scm_vm *vp) SCM_NOINLINE;
|
static void vm_dispatch_next_hook (struct scm_vm *vp) SCM_NOINLINE;
|
||||||
static void vm_dispatch_abort_hook (struct scm_vm *vp) SCM_NOINLINE;
|
static void vm_dispatch_abort_hook (struct scm_vm *vp) SCM_NOINLINE;
|
||||||
static void vm_dispatch_restore_continuation_hook (struct scm_vm *vp) SCM_NOINLINE;
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
vm_dispatch_hook (struct scm_vm *vp, int hook_num, SCM *argv, int n)
|
vm_dispatch_hook (struct scm_vm *vp, int hook_num, SCM *argv, int n)
|
||||||
|
@ -258,10 +257,6 @@ static void vm_dispatch_abort_hook (struct scm_vm *vp)
|
||||||
&SCM_FRAME_LOCAL (vp->fp, 1),
|
&SCM_FRAME_LOCAL (vp->fp, 1),
|
||||||
SCM_FRAME_NUM_LOCALS (vp->fp, vp->sp) - 1);
|
SCM_FRAME_NUM_LOCALS (vp->fp, vp->sp) - 1);
|
||||||
}
|
}
|
||||||
static void vm_dispatch_restore_continuation_hook (struct scm_vm *vp)
|
|
||||||
{
|
|
||||||
return vm_dispatch_hook (vp, SCM_VM_RESTORE_CONTINUATION_HOOK, NULL, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
vm_abort (struct scm_vm *vp, SCM tag,
|
vm_abort (struct scm_vm *vp, SCM tag,
|
||||||
|
@ -1025,15 +1020,6 @@ SCM_DEFINE (scm_vm_abort_continuation_hook, "vm-abort-continuation-hook", 0, 0,
|
||||||
}
|
}
|
||||||
#undef FUNC_NAME
|
#undef FUNC_NAME
|
||||||
|
|
||||||
SCM_DEFINE (scm_vm_restore_continuation_hook, "vm-restore-continuation-hook", 0, 0, 0,
|
|
||||||
(void),
|
|
||||||
"")
|
|
||||||
#define FUNC_NAME s_scm_vm_restore_continuation_hook
|
|
||||||
{
|
|
||||||
VM_DEFINE_HOOK (SCM_VM_RESTORE_CONTINUATION_HOOK);
|
|
||||||
}
|
|
||||||
#undef FUNC_NAME
|
|
||||||
|
|
||||||
SCM_DEFINE (scm_vm_trace_level, "vm-trace-level", 0, 0, 0,
|
SCM_DEFINE (scm_vm_trace_level, "vm-trace-level", 0, 0, 0,
|
||||||
(void),
|
(void),
|
||||||
"")
|
"")
|
||||||
|
|
|
@ -28,7 +28,6 @@ enum {
|
||||||
SCM_VM_POP_CONTINUATION_HOOK,
|
SCM_VM_POP_CONTINUATION_HOOK,
|
||||||
SCM_VM_NEXT_HOOK,
|
SCM_VM_NEXT_HOOK,
|
||||||
SCM_VM_ABORT_CONTINUATION_HOOK,
|
SCM_VM_ABORT_CONTINUATION_HOOK,
|
||||||
SCM_VM_RESTORE_CONTINUATION_HOOK,
|
|
||||||
SCM_VM_NUM_HOOKS,
|
SCM_VM_NUM_HOOKS,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -56,7 +55,6 @@ SCM_API SCM scm_vm_apply_hook (void);
|
||||||
SCM_API SCM scm_vm_push_continuation_hook (void);
|
SCM_API SCM scm_vm_push_continuation_hook (void);
|
||||||
SCM_API SCM scm_vm_pop_continuation_hook (void);
|
SCM_API SCM scm_vm_pop_continuation_hook (void);
|
||||||
SCM_API SCM scm_vm_abort_continuation_hook (void);
|
SCM_API SCM scm_vm_abort_continuation_hook (void);
|
||||||
SCM_API SCM scm_vm_restore_continuation_hook (void);
|
|
||||||
SCM_API SCM scm_vm_next_hook (void);
|
SCM_API SCM scm_vm_next_hook (void);
|
||||||
SCM_API SCM scm_vm_trace_level (void);
|
SCM_API SCM scm_vm_trace_level (void);
|
||||||
SCM_API SCM scm_set_vm_trace_level_x (SCM level);
|
SCM_API SCM scm_set_vm_trace_level_x (SCM level);
|
||||||
|
|
|
@ -199,12 +199,6 @@
|
||||||
(if (our-frame? frame)
|
(if (our-frame? frame)
|
||||||
(enter-proc frame)))
|
(enter-proc frame)))
|
||||||
|
|
||||||
(define (restore-hook frame)
|
|
||||||
(if in-proc?
|
|
||||||
(exit-proc frame))
|
|
||||||
(if (our-frame? frame)
|
|
||||||
(enter-proc frame)))
|
|
||||||
|
|
||||||
(new-enabled-trap
|
(new-enabled-trap
|
||||||
current-frame
|
current-frame
|
||||||
(lambda (frame)
|
(lambda (frame)
|
||||||
|
@ -212,7 +206,6 @@
|
||||||
(add-hook! (vm-push-continuation-hook) push-cont-hook)
|
(add-hook! (vm-push-continuation-hook) push-cont-hook)
|
||||||
(add-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
(add-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
||||||
(add-hook! (vm-abort-continuation-hook) abort-hook)
|
(add-hook! (vm-abort-continuation-hook) abort-hook)
|
||||||
(add-hook! (vm-restore-continuation-hook) restore-hook)
|
|
||||||
(if (and frame (our-frame? frame))
|
(if (and frame (our-frame? frame))
|
||||||
(enter-proc frame)))
|
(enter-proc frame)))
|
||||||
(lambda (frame)
|
(lambda (frame)
|
||||||
|
@ -221,8 +214,7 @@
|
||||||
(remove-hook! (vm-apply-hook) apply-hook)
|
(remove-hook! (vm-apply-hook) apply-hook)
|
||||||
(remove-hook! (vm-push-continuation-hook) push-cont-hook)
|
(remove-hook! (vm-push-continuation-hook) push-cont-hook)
|
||||||
(remove-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
(remove-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
||||||
(remove-hook! (vm-abort-continuation-hook) abort-hook)
|
(remove-hook! (vm-abort-continuation-hook) abort-hook)))))
|
||||||
(remove-hook! (vm-restore-continuation-hook) restore-hook)))))
|
|
||||||
|
|
||||||
;; Building on trap-in-procedure, we have trap-instructions-in-procedure
|
;; Building on trap-in-procedure, we have trap-instructions-in-procedure
|
||||||
;;
|
;;
|
||||||
|
@ -425,13 +417,11 @@
|
||||||
(if (not fp)
|
(if (not fp)
|
||||||
(error "return-or-abort traps may only be enabled once"))
|
(error "return-or-abort traps may only be enabled once"))
|
||||||
(add-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
(add-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
||||||
(add-hook! (vm-abort-continuation-hook) abort-hook)
|
(add-hook! (vm-abort-continuation-hook) abort-hook))
|
||||||
(add-hook! (vm-restore-continuation-hook) abort-hook))
|
|
||||||
(lambda (frame)
|
(lambda (frame)
|
||||||
(set! fp #f)
|
(set! fp #f)
|
||||||
(remove-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
(remove-hook! (vm-pop-continuation-hook) pop-cont-hook)
|
||||||
(remove-hook! (vm-abort-continuation-hook) abort-hook)
|
(remove-hook! (vm-abort-continuation-hook) abort-hook)))))
|
||||||
(remove-hook! (vm-restore-continuation-hook) abort-hook)))))
|
|
||||||
|
|
||||||
;; A more traditional dynamic-wind trap. Perhaps this should not be
|
;; A more traditional dynamic-wind trap. Perhaps this should not be
|
||||||
;; based on the above trap-frame-finish?
|
;; based on the above trap-frame-finish?
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
vm-push-continuation-hook vm-pop-continuation-hook
|
vm-push-continuation-hook vm-pop-continuation-hook
|
||||||
vm-apply-hook
|
vm-apply-hook
|
||||||
vm-next-hook
|
vm-next-hook
|
||||||
vm-abort-continuation-hook vm-restore-continuation-hook))
|
vm-abort-continuation-hook))
|
||||||
|
|
||||||
(load-extension (string-append "libguile-" (effective-version))
|
(load-extension (string-append "libguile-" (effective-version))
|
||||||
"scm_init_vm")
|
"scm_init_vm")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue