Diff for /gforth/engine/engine.c between versions 1.79 and 1.80

version 1.79, 2005/01/23 13:56:13 version 1.80, 2005/07/31 20:27:41
Line 169  extern int gforth_memcmp(const char * s1 Line 169  extern int gforth_memcmp(const char * s1
 #ifndef spcREG  #ifndef spcREG
 #define spcREG  #define spcREG
 #endif  #endif
   #ifndef spdREG
   #define spdREG
   #endif
   #ifndef speREG
   #define speREG
   #endif
 #ifndef FTOSREG  #ifndef FTOSREG
 #define FTOSREG  #define FTOSREG
 #endif  #endif
Line 223  extern int gforth_memcmp(const char * s1 Line 229  extern int gforth_memcmp(const char * s1
 #endif  #endif
   
 #ifdef HAS_FFCALL  #ifdef HAS_FFCALL
 #define SAVE_REGS IF_spTOS(sp[0]=spTOS); IF_fpTOS(fp[0]=fpTOS); SP=sp; FP=fp; RP=rp; LP=lp;  #define SAVE_REGS IF_fpTOS(fp[0]=fpTOS); SP=sp; FP=fp; RP=rp; LP=lp;
 #define REST_REGS sp=SP; fp=FP; rp=RP; lp=LP; IF_spTOS(spTOS=sp[0]); IF_fpTOS(fpTOS=fp[0]);  #define REST_REGS sp=SP; fp=FP; rp=RP; lp=LP; IF_fpTOS(fpTOS=fp[0]);
 #endif  #endif
   
 #if !defined(ENGINE)  #if !defined(ENGINE)
Line 286  Label *engine(Xt *ip0, Cell *sp0, Cell * Line 292  Label *engine(Xt *ip0, Cell *sp0, Cell *
   void * prv;    void * prv;
 #endif  #endif
   register Address up UPREG = UP;    register Address up UPREG = UP;
   IF_spTOS(register Cell MAYBE_UNUSED spTOS TOSREG;)    register Cell MAYBE_UNUSED spTOS TOSREG;
   register Cell MAYBE_UNUSED spb spbREG;    register Cell MAYBE_UNUSED spb spbREG;
   register Cell MAYBE_UNUSED spc spcREG;    register Cell MAYBE_UNUSED spc spcREG;
     register Cell MAYBE_UNUSED spd spdREG;
     register Cell MAYBE_UNUSED spe speREG;
   IF_fpTOS(register Float fpTOS FTOSREG;)    IF_fpTOS(register Float fpTOS FTOSREG;)
 #if defined(DOUBLY_INDIRECT)  #if defined(DOUBLY_INDIRECT)
   static Label *symbols;    static Label *symbols;
Line 350  Label *engine(Xt *ip0, Cell *sp0, Cell * Line 358  Label *engine(Xt *ip0, Cell *sp0, Cell *
     return symbols;      return symbols;
   }    }
   
   IF_spTOS(spTOS = sp[0]);  #if STACK_CACHE_DEFAULT>0
     sp += STACK_CACHE_DEFAULT-1;
   #endif
   
   #if STACK_CACHE_DEFAULT>0
     spTOS = sp[0];
   #endif
   #if STACK_CACHE_DEFAULT>1
     spb = sp[-1];
   #endif
   #if STACK_CACHE_DEFAULT>2
     spc = sp[-2];
   #endif
   #if STACK_CACHE_DEFAULT>3
     spd = sp[-3];
   #endif
   #if STACK_CACHE_DEFAULT>4
     spe = sp[-4];
   #endif
   
   IF_fpTOS(fpTOS = fp[0]);    IF_fpTOS(fpTOS = fp[0]);
 /*  prep_terminal(); */  /*  prep_terminal(); */
 #ifdef NO_IP  #ifdef NO_IP

Removed from v.1.79  
changed lines
  Added in v.1.80


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