3 #define CARD_OFF_ENV 1 /* for compiling set-slot */
5 #define NAMESTACK_ENV 3 /* used by library only */
8 #define CATCHSTACK_ENV 6 /* used by library only */
11 #define RUNQUEUE_ENV 9 /* used by library only */
14 #define ERROR_ENV 12 /* a marker consed onto kernel errors */
17 #define GEN_ENV 15 /* set to GC_GENERATIONS constant */
19 /* TAGGED user environment data; see getenv/setenv prims */
20 DLLEXPORT CELL userenv[USER_ENV];
24 struct itimerval prof_timer;
27 /* Error handlers restore this */
34 /* Call stack depth to start profile counter from */
35 /* This ensures that words in the user's interpreter do not count */
38 INLINE CELL dpop(void)
45 INLINE void drepl(CELL top)
50 INLINE void dpush(CELL top)
56 INLINE CELL dpeek(void)
61 INLINE CELL dpeek2(void)
63 return get(ds - CELLS);
66 INLINE CELL cpop(void)
73 INLINE void cpush(CELL top)
79 INLINE void call(CELL quot)
81 /* tail call optimization */
83 /* put(cs - CELLS,executing) */;
94 void platform_run(void);
95 void undefined(F_WORD* word);
96 void docol(F_WORD* word);
97 void dosym(F_WORD* word);
98 void primitive_execute(void);
99 void primitive_call(void);
100 void primitive_ifte(void);
101 void primitive_dispatch(void);
102 void primitive_getenv(void);
103 void primitive_setenv(void);