Align PARK/UNPARK with THROW/CATCH.
This commit is contained in:
@ -32,11 +32,11 @@ typedef uintptr_t ucell_t;
|
||||
#define DUP (*++sp = tos)
|
||||
#define PUSH DUP; tos = (cell_t)
|
||||
|
||||
#define PARK DUP; *++rp = (cell_t) fp; *++rp = (cell_t) sp; *++rp = (cell_t) ip
|
||||
#define UNPARK ip = (cell_t *) *rp--; sp = (cell_t *) *rp--; fp = (float *) *rp--; DROP
|
||||
#define THROWIT(n) rp = *g_sys->throw_handler; *g_sys->throw_handler = (cell_t *) *rp--; \
|
||||
sp = (cell_t *) *rp--; fp = (float *) *rp--; ip = (cell_t *) *rp--; \
|
||||
NIP; tos = (n);
|
||||
#define PARK *++rp = (cell_t) ip; *++rp = (cell_t) fp; DUP; *++rp = (cell_t) sp;
|
||||
#define UNPARK sp = (cell_t *) *rp--; DROP; fp = (float *) *rp--; ip = (cell_t *) *rp--;
|
||||
|
||||
#define THROWIT(n) \
|
||||
rp = *g_sys->throw_handler; *g_sys->throw_handler = (cell_t *) *rp--; UNPARK; tos = (n);
|
||||
|
||||
#define TOFLAGS(xt) ((uint8_t *) (((cell_t *) (xt)) - 1))
|
||||
#define TONAMELEN(xt) (TOFLAGS(xt) + 1)
|
||||
|
||||
Reference in New Issue
Block a user