1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-19 19:20:23 +02:00

*** empty log message ***

This commit is contained in:
Keisuke Nishida 2001-04-11 20:57:44 +00:00
parent 8710eba09b
commit 41f248a84a
14 changed files with 168 additions and 184 deletions

View file

@ -132,8 +132,17 @@
#define CACHE_PROGRAM() \
{ \
bp = SCM_PROGRAM_DATA (program); \
objects = SCM_VELTS (bp->objs); \
external = bp->external; \
objects = SCM_VELTS (bp->objs); \
}
#define CACHE_EXTERNAL() \
{ \
external = fp[bp->nargs + bp->nlocs]; \
}
#define SYNC_EXTERNAL() \
{ \
fp[bp->nargs + bp->nlocs] = external; \
}
#define SYNC_BEFORE_GC() \
@ -280,17 +289,18 @@ do { \
SCM dl = SCM_VM_MAKE_STACK_ADDRESS (fp); \
ip = bp->base; \
fp = sp - bp->nargs + 1; \
sp = sp + bp->nlocs + 2; \
sp = sp + bp->nlocs + 3; \
CHECK_OVERFLOW (); \
sp[0] = dl; \
sp[-1] = ra; \
sp[0] = ra; \
sp[-1] = dl; \
sp[-2] = bp->external; \
}
#define FREE_FRAME() \
{ \
SCM *new_sp = fp - 2; \
sp = fp + bp->nargs + bp->nlocs; \
ip = SCM_VM_BYTE_ADDRESS (sp[0]); \
ip = SCM_VM_BYTE_ADDRESS (sp[2]); \
fp = SCM_VM_STACK_ADDRESS (sp[1]); \
sp = new_sp; \
}