version 1.41, 2002/06/02 15:46:16
|
version 1.45, 2002/11/10 11:24:08
|
Line 300 static int ufileattr[6]= {
|
Line 300 static int ufileattr[6]= {
|
/* define some VM registers as global variables, so they survive exceptions; |
/* define some VM registers as global variables, so they survive exceptions; |
global register variables are not up to the task (according to the |
global register variables are not up to the task (according to the |
GNU C manual) */ |
GNU C manual) */ |
Xt *ip; |
Xt *saved_ip; |
Cell *rp; |
Cell *rp; |
#endif |
#endif |
|
|
Line 337 define(enginerest,
|
Line 337 define(enginerest,
|
*/ |
*/ |
{ |
{ |
#ifndef GFORTH_DEBUGGING |
#ifndef GFORTH_DEBUGGING |
register Xt *ip IPREG; |
|
register Cell *rp RPREG; |
register Cell *rp RPREG; |
#endif |
#endif |
|
register Xt *ip IPREG; |
register Cell *sp SPREG = sp0; |
register Cell *sp SPREG = sp0; |
register Float *fp FPREG = fp0; |
register Float *fp FPREG = fp0; |
register Address lp LPREG = lp0; |
register Address lp LPREG = lp0; |
Line 558 define(enginerest,
|
Line 558 define(enginerest,
|
NEXT; |
NEXT; |
|
|
#ifndef IN_ENGINE2 |
#ifndef IN_ENGINE2 |
#define LABEL(name) I_##name |
#define LABEL(name) I_##name: |
#else |
#else |
#define LABEL(name) J_##name: asm(".skip 16"); I_##name |
#define LABEL(name) J_##name: asm(".skip 16"); I_##name: |
#endif |
#endif |
|
#define LABEL2(name) |
#include "prim.i" |
#include "prim.i" |
#undef LABEL |
#undef LABEL |
after_last: return (Label *)0; |
after_last: return (Label *)0; |
Line 571 define(enginerest,
|
Line 572 define(enginerest,
|
|
|
Label *engine enginerest |
Label *engine enginerest |
|
|
|
#ifndef NO_DYNAMIC |
#define IN_ENGINE2 |
#define IN_ENGINE2 |
Label *engine2 enginerest |
Label *engine2 enginerest |
|
#endif |