Diff for /gforth/Attic/engine.c between versions 1.4 and 1.5

version 1.4, 1994/05/05 15:46:42 version 1.5, 1994/05/07 14:55:47
Line 86  int emitcounter; Line 86  int emitcounter;
   
 static char* fileattr[6]={"r","rb","r+","r+b","w+","w+b"};  static char* fileattr[6]={"r","rb","r+","r+b","w+","w+b"};
   
 Label *engine(Xt *ip, Cell *sp, Cell *rp, Float *fp)  Label *engine(Xt *ip, Cell *sp, Cell *rp, Float *fp, Address lp)
 /* executes code at ip, if ip!=NULL  /* executes code at ip, if ip!=NULL
    returns array of machine code labels (for use in a loader), if ip==NULL     returns array of machine code labels (for use in a loader), if ip==NULL
    This is very preliminary, as the bootstrap architecture is not yet decided     This is very preliminary, as the bootstrap architecture is not yet decided
 */  */
 {  {
   Xt cfa;    Xt cfa;
   Address lp=NULL;  
   Address up=NULL;    Address up=NULL;
   static Label symbols[]= {    static Label symbols[]= {
     &&docol,      &&docol,
Line 174  Label *engine(Xt *ip, Cell *sp, Cell *rp Line 173  Label *engine(Xt *ip, Cell *sp, Cell *rp
 #endif  #endif
 #ifdef USE_TOS  #ifdef USE_TOS
   *sp-- = TOS;    *sp-- = TOS;
   TOS = up+*(Cell*)PFA1(cfa);    TOS = (Cell)(up+*(Cell*)PFA1(cfa));
 #else  #else
   *--sp = up+*(Cell*)PFA1(cfa);    *--sp = (Cell)(up+*(Cell*)PFA1(cfa));
 #endif  #endif
   NEXT;    NEXT;
       

Removed from v.1.4  
changed lines
  Added in v.1.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>