Diff for /gforth/engine/threaded.h between versions 1.19 and 1.22

version 1.19, 2003/01/02 21:40:22 version 1.22, 2003/03/09 15:17:04
Line 1 Line 1
 /* This file defines a number of threading schemes.  /* This file defines a number of threading schemes.
   
   Copyright (C) 1995, 1996,1997,1999 Free Software Foundation, Inc.    Copyright (C) 1995, 1996,1997,1999,2003 Free Software Foundation, Inc.
   
   This file is part of Gforth.    This file is part of Gforth.
   
Line 105 Line 105
 #  define NEXT_P1       ({\  #  define NEXT_P1       ({\
   if (DEBUG_DITC && (cfa<=vm_prims+DOESJUMP || cfa>=vm_prims+npriminfos)) \    if (DEBUG_DITC && (cfa<=vm_prims+DOESJUMP || cfa>=vm_prims+npriminfos)) \
     fprintf(stderr,"NEXT encountered prim %p at ip=%p\n", cfa, ip); \      fprintf(stderr,"NEXT encountered prim %p at ip=%p\n", cfa, ip); \
   ip++; ca=**cfa;})    ip++;})
 #  define NEXT_P2       ({goto *ca;})  #  define NEXT_P2       ({ca=**cfa; goto *ca;})
 #  define EXEC(XT)      ({DEF_CA cfa=(XT);\  #  define EXEC(XT)      ({DEF_CA cfa=(XT);\
   if (DEBUG_DITC && (cfa>vm_prims+DOESJUMP && cfa<vm_prims+npriminfos)) \    if (DEBUG_DITC && (cfa>vm_prims+DOESJUMP && cfa<vm_prims+npriminfos)) \
     fprintf(stderr,"EXEC encountered xt %p at ip=%p, vm_prims=%p, xts=%p\n", cfa, ip, vm_prims, xts); \      fprintf(stderr,"EXEC encountered xt %p at ip=%p, vm_prims=%p, xts=%p\n", cfa, ip, vm_prims, xts); \
Line 148 Line 148
 */  */
 #define KILLS asm("":"=X"(cfa));  #define KILLS asm("":"=X"(cfa));
   
   #ifndef THREADING_SCHEME
   #define THREADING_SCHEME 6
   #endif
   
 #if THREADING_SCHEME==1  #if THREADING_SCHEME==1
 #warning direct threading scheme 1: autoinc, long latency, cfa live  #warning direct threading scheme 1: autoinc, long latency, cfa live
 #  define NEXT_P0       ({cfa=*ip++;})  #  define NEXT_P0       ({cfa=*ip++;})
Line 288 Line 292
 #else  #else
 /* indirect THREADED  */  /* indirect THREADED  */
   
   #ifndef THREADING_SCHEME
   #define THREADING_SCHEME 6
   #endif
   
 #if THREADING_SCHEME==1  #if THREADING_SCHEME==1
 #warning indirect threading scheme 1: autoinc, long latency, cisc  #warning indirect threading scheme 1: autoinc, long latency, cisc
 #  define NEXT_P0       ({cfa=*ip++;})  #  define NEXT_P0       ({cfa=*ip++;})

Removed from v.1.19  
changed lines
  Added in v.1.22


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