diff options
-rw-r--r-- | libguile/control.c | 6 | ||||
-rw-r--r-- | libguile/foreign.c | 2 | ||||
-rw-r--r-- | libguile/frames.h | 26 | ||||
-rw-r--r-- | libguile/vm-engine.c | 22 | ||||
-rw-r--r-- | libguile/vm.c | 21 |
5 files changed, 39 insertions, 38 deletions
diff --git a/libguile/control.c b/libguile/control.c index a3457342b..c0bc62ddb 100644 --- a/libguile/control.c +++ b/libguile/control.c @@ -52,7 +52,7 @@ scm_i_prompt_pop_abort_args_x (struct scm_vm *vp, n = stack_depth - saved_stack_depth; for (i = 0; i < n; i++) - vals = scm_cons (vp->sp[i].scm, vals); + vals = scm_cons (vp->sp[i].as_scm, vals); vp->sp += n; @@ -169,9 +169,9 @@ scm_c_abort (struct scm_vm *vp, SCM tag, size_t n, SCM *argv, abort (); /* Push vals */ - vp->sp[n].scm = cont; + vp->sp[n].as_scm = cont; for (i = 0; i < n; i++) - vp->sp[n - i - 1].scm = argv[i]; + vp->sp[n - i - 1].as_scm = argv[i]; /* Jump! */ SCM_I_LONGJMP (*registers, 1); diff --git a/libguile/foreign.c b/libguile/foreign.c index 3ac06591d..864019e63 100644 --- a/libguile/foreign.c +++ b/libguile/foreign.c @@ -1016,7 +1016,7 @@ scm_i_foreign_call (SCM foreign, const union scm_vm_stack_element *argv) args[i] = (void *) ROUND_UP ((scm_t_uintptr) data + off, cif->arg_types[i]->alignment); assert ((scm_t_uintptr) args[i] % cif->arg_types[i]->alignment == 0); - unpack (cif->arg_types[i], args[i], argv[cif->nargs - i - 1].scm, 0); + unpack (cif->arg_types[i], args[i], argv[cif->nargs - i - 1].as_scm, 0); } /* Prepare space for the return value. On some platforms, such as diff --git a/libguile/frames.h b/libguile/frames.h index c2f1e57db..870477d53 100644 --- a/libguile/frames.h +++ b/libguile/frames.h @@ -88,23 +88,23 @@ /* Each element on the stack occupies the same amount of space. */ union scm_vm_stack_element { - union scm_vm_stack_element *fp; - scm_t_uint32 *ip; - SCM scm; + union scm_vm_stack_element *as_fp; + scm_t_uint32 *as_ip; + SCM as_scm; /* For GC purposes. */ - void *ptr; - scm_t_bits bits; + void *as_ptr; + scm_t_bits as_bits; }; -#define SCM_FRAME_PREVIOUS_SP(fp_) ((fp_) + 2) -#define SCM_FRAME_RETURN_ADDRESS(fp_) ((fp_)[0].ip) -#define SCM_FRAME_SET_RETURN_ADDRESS(fp_, ra) ((fp_)[0].ip = (ra)) -#define SCM_FRAME_DYNAMIC_LINK(fp_) ((fp_)[1].fp) -#define SCM_FRAME_SET_DYNAMIC_LINK(fp_, dl) ((fp_)[1].fp = (dl)) -#define SCM_FRAME_SLOT(fp_,i) ((fp_) - (i) - 1) -#define SCM_FRAME_LOCAL(fp_,i) (SCM_FRAME_SLOT (fp_, i)->scm) -#define SCM_FRAME_NUM_LOCALS(fp_, sp) ((fp_) - (sp)) +#define SCM_FRAME_PREVIOUS_SP(fp) ((fp) + 2) +#define SCM_FRAME_RETURN_ADDRESS(fp) ((fp)[0].as_ip) +#define SCM_FRAME_SET_RETURN_ADDRESS(fp, ra) ((fp)[0].as_ip = (ra)) +#define SCM_FRAME_DYNAMIC_LINK(fp) ((fp)[1].as_fp) +#define SCM_FRAME_SET_DYNAMIC_LINK(fp, dl) ((fp)[1].as_fp = (dl)) +#define SCM_FRAME_SLOT(fp,i) ((fp) - (i) - 1) +#define SCM_FRAME_LOCAL(fp,i) (SCM_FRAME_SLOT (fp, i)->as_scm) +#define SCM_FRAME_NUM_LOCALS(fp, sp) ((fp) - (sp)) /* diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c index 9415de5b1..daea0bfe2 100644 --- a/libguile/vm-engine.c +++ b/libguile/vm-engine.c @@ -268,13 +268,13 @@ union scm_vm_stack_element *old_fp; \ VM_HANDLE_INTERRUPTS; \ ALLOC_FRAME (2); \ - old_fp = vp->fp; \ - ip = SCM_FRAME_RETURN_ADDRESS (vp->fp); \ - vp->fp = SCM_FRAME_DYNAMIC_LINK (vp->fp); \ - CACHE_LOCALS (); \ + old_fp = vp->fp; \ + ip = SCM_FRAME_RETURN_ADDRESS (vp->fp); \ + vp->fp = SCM_FRAME_DYNAMIC_LINK (vp->fp); \ + CACHE_LOCALS (); \ /* Clear frame. */ \ - old_fp[0].scm = SCM_BOOL_F; \ - old_fp[1].scm = SCM_BOOL_F; \ + old_fp[0].as_scm = SCM_BOOL_F; \ + old_fp[1].as_scm = SCM_BOOL_F; \ /* Leave proc. */ \ SCM_FRAME_LOCAL (old_fp, 1) = val; \ vp->sp = SCM_FRAME_SLOT (old_fp, 1); \ @@ -289,9 +289,9 @@ SCM vals = vals_; \ VM_HANDLE_INTERRUPTS; \ ALLOC_FRAME (3); \ - SCM_FRAME_LOCAL (vp->fp, 0) = vm_builtin_apply; \ - SCM_FRAME_LOCAL (vp->fp, 1) = vm_builtin_values; \ - SCM_FRAME_LOCAL (vp->fp, 2) = vals; \ + SCM_FRAME_LOCAL (vp->fp, 0) = vm_builtin_apply; \ + SCM_FRAME_LOCAL (vp->fp, 1) = vm_builtin_values; \ + SCM_FRAME_LOCAL (vp->fp, 2) = vals; \ ip = (scm_t_uint32 *) vm_builtin_apply_code; \ goto op_tail_apply; \ } while (0) @@ -776,8 +776,8 @@ VM_NAME (scm_i_thread *thread, struct scm_vm *vp, CACHE_LOCALS (); /* Clear stack frame. */ - old_fp[0].scm = SCM_BOOL_F; - old_fp[1].scm = SCM_BOOL_F; + old_fp[0].as_scm = SCM_BOOL_F; + old_fp[1].as_scm = SCM_BOOL_F; POP_CONTINUATION_HOOK (old_fp); diff --git a/libguile/vm.c b/libguile/vm.c index 74dce6351..bc9f29080 100644 --- a/libguile/vm.c +++ b/libguile/vm.c @@ -218,9 +218,9 @@ vm_return_to_continuation (struct scm_vm *vp, SCM cont, size_t n, copy on an empty frame and the return values, as the continuation expects. */ vm_push_sp (vp, vp->sp - 3 - n); - vp->sp[n+2].scm = SCM_BOOL_F; - vp->sp[n+1].scm = SCM_BOOL_F; - vp->sp[n].scm = SCM_BOOL_F; + vp->sp[n+2].as_scm = SCM_BOOL_F; + vp->sp[n+1].as_scm = SCM_BOOL_F; + vp->sp[n].as_scm = SCM_BOOL_F; memcpy(vp->sp, argv_copy, n * sizeof (union scm_vm_stack_element)); vp->ip = cp->ra; @@ -298,7 +298,7 @@ vm_dispatch_hook (struct scm_vm *vp, int hook_num, SCM args[2]; args[0] = SCM_PACK_POINTER (frame); - args[1] = argv[0].scm; + args[1] = argv[0].as_scm; scm_c_run_hookn (hook, args, 2); } else @@ -307,7 +307,7 @@ vm_dispatch_hook (struct scm_vm *vp, int hook_num, int i; for (i = 0; i < n; i++) - args = scm_cons (argv[i].scm, args); + args = scm_cons (argv[i].as_scm, args); scm_c_run_hook (hook, scm_cons (SCM_PACK_POINTER (frame), args)); } @@ -352,7 +352,7 @@ vm_abort (struct scm_vm *vp, SCM tag, size_t nargs, argv = alloca (nargs * sizeof (SCM)); for (i = 0; i < nargs; i++) - argv[i] = vp->sp[nargs - i - 1].scm; + argv[i] = vp->sp[nargs - i - 1].as_scm; vp->sp = vp->fp; @@ -422,7 +422,7 @@ vm_reinstate_partial_continuation (struct scm_vm *vp, SCM cont, size_t nargs, /* The resume continuation will expect ARGS on the stack as if from a multiple-value return. Fill in the closure slot with #f, and copy the arguments into place. */ - vp->sp[nargs].scm = SCM_BOOL_F; + vp->sp[nargs].as_scm = SCM_BOOL_F; memcpy (vp->sp, args, nargs * sizeof (*args)); /* The prompt captured a slice of the dynamic stack. Here we wind @@ -973,7 +973,8 @@ scm_i_vm_mark_stack (struct scm_vm *vp, struct GC_ms_entry *mark_stack_ptr, size_t slot = nlocals - 1; for (slot = nlocals - 1; sp < fp; sp++, slot--) { - if (SCM_NIMP (sp->scm) && sp->ptr >= lower && sp->ptr <= upper) + if (SCM_NIMP (sp->as_scm) && + sp->as_ptr >= lower && sp->as_ptr <= upper) { if (dead_slots) { @@ -981,12 +982,12 @@ scm_i_vm_mark_stack (struct scm_vm *vp, struct GC_ms_entry *mark_stack_ptr, { /* This value may become dead as a result of GC, so we can't just leave it on the stack. */ - sp->scm = SCM_UNSPECIFIED; + sp->as_scm = SCM_UNSPECIFIED; continue; } } - mark_stack_ptr = GC_mark_and_push (sp->ptr, + mark_stack_ptr = GC_mark_and_push (sp->as_ptr, mark_stack_ptr, mark_stack_limit, NULL); |