--- gforth/arch/generic/machine.h 1999/05/05 12:07:56 1.9 +++ gforth/arch/generic/machine.h 2003/08/04 20:32:35 1.21 @@ -2,7 +2,7 @@ This is a generic file for 32-bit machines with IEEE FP arithmetic (no VMS). It only supports indirect threading. - Copyright (C) 1995,1998 Free Software Foundation, Inc. + Copyright (C) 1995,1998,1999,2003 Free Software Foundation, Inc. This file is part of Gforth. @@ -18,25 +18,9 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. */ -#ifndef THREADING_SCHEME -#define THREADING_SCHEME 6 -#endif - -#ifdef GFORTH_DEBUGGING -/* schedule the ip update after the rest of the primitive; - never mind speed */ -#undef THREADING_SCHEME -#ifdef DIRECT_THREADED -#define THREADING_SCHEME 10 -#else -#define THREADING_SCHEME 8 -#endif /* DIRECT_THREADED */ -#endif /* GFORTH_DEBUGGING */ - - /* define SYSCALL */ #ifndef SYSCALL @@ -60,10 +44,10 @@ loses on processors with few registers. USE_TOS might be defined in the processor-specific files */ -#ifdef DIRECT_THREADED -/* If you want direct threading, write a .h file for your processor! */ -/* We could put some stuff here that causes a compile error, but then - we could not use this file in the other machine.h files */ +#ifndef INDIRECT_THREADED +#ifndef DIRECT_THREADED +#define DIRECT_THREADED +#endif #endif /* Types: these types are used as Forth's internal types */ @@ -90,7 +74,7 @@ typedef void **Label; typedef void *Label; #endif /* !defined(DOUBLY_INDIRECT) */ -/* feature defines */ +/* feature defines, these setting should be identical to the ones in machpc.fs */ #define HAS_DCOMPS #define HAS_FILE @@ -100,5 +84,12 @@ typedef void *Label; #define HAS_OS #define HAS_XCONDS #define HAS_STANDARDTHREADING +#define HAS_DEBUG +#ifndef HAS_PEEPHOLE +#define HAS_PEEPHOLE +#endif +#if(defined(HAVE_LIBAVCALL) && defined(HAVE_LIBCALLBACK) && defined(HAVE_LIBVACALL) && defined(HAVE_LIBTRAMPOLINE)) +#define HAS_FFCALL +#endif #define RELINFOBITS 8