Diff for /gforth/engine/libcc.h.in between versions 1.5 and 1.17

version 1.5, 2008/09/18 15:47:05 version 1.17, 2012/09/28 12:32:09
Line 1 Line 1
 /* header file for libcc-generated C code  /* header file for libcc-generated C code
   
   Copyright (C) 2006,2007 Free Software Foundation, Inc.    Copyright (C) 2006,2007,2008 Free Software Foundation, Inc.
   
   This file is part of Gforth.    This file is part of Gforth.
   
Line 20 Line 20
   
 #include <gforth/@PACKAGE_VERSION@/config.h>  #include <gforth/@PACKAGE_VERSION@/config.h>
   
 #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)  #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) || defined(__ANDROID__)
 #undef HAS_BACKLINK  #undef HAS_BACKLINK
 #else  #else
 #define HAS_BACKLINK 1  #define HAS_BACKLINK 1
 #endif  #endif
   
 typedef CELL_TYPE Cell;  typedef CELL_TYPE Cell;
   typedef unsigned char Char;
 typedef double Float;  typedef double Float;
   typedef Char *Address;
   typedef void **Xt;
   
 #define Clongest long long  #define Clongest long long
 typedef unsigned Clongest UClongest;  typedef unsigned Clongest UClongest;
   
   typedef struct {
     Cell next_task;
     Cell prev_task;
     Cell save_task;
     Cell* sp0;
     Cell* rp0;
     Float* fp0;
     Address lp0;
     Xt *throw_entry;
   } user_area;
   
 #ifdef HAS_BACKLINK  #ifdef HAS_BACKLINK
 extern Cell *gforth_SP;  extern __thread Cell *gforth_SP;
 extern Float *gforth_FP;  extern __thread Float *gforth_FP;
 extern Cell *gforth_RP;  extern __thread Cell *gforth_RP;
 extern char *gforth_LP;  extern __thread char *gforth_LP;
 extern char *gforth_UP;  extern __thread char *gforth_UP;
 extern void *gforth_engine(void *, Cell *, Cell *, Float *, char *, char *);  extern void *gforth_engine(void *);
   extern char *cstr(char *from, Cell size);
   extern char *tilde_cstr(char *from, Cell size);
   extern __thread void *throw_jmp_handler;
   extern user_area* gforth_stacks();
 #define GFORTH_ARGS void  #define GFORTH_ARGS void
 #else  #else
 #define gforth_SP *((Cell **)(gforth_pointers[0]))  #define gforth_SP *((Cell **)(gforth_pointers(0)))
 #define gforth_FP *((Float **)(gforth_pointers[1]))  #define gforth_FP *((Float **)(gforth_pointers(1)))
 #define gforth_LP *((char **)(gforth_pointers[2]))  #define gforth_LP *((char **)(gforth_pointers(2)))
 #define gforth_RP *((Cell **)(gforth_pointers[3]))  #define gforth_RP *((Cell **)(gforth_pointers(3)))
 #define gforth_UP *((char **)(gforth_pointers[4]))  #define gforth_UP *((char **)(gforth_pointers(4)))
 #define gforth_engine ((char *(*)(Xt *, Cell *, Cell *, Float *, char *, char *))(((void **)(gforth_pointers[5]))))  #define gforth_engine ((char *(*)(void *))gforth_pointers(5))
 #define GFORTH_ARGS void ** gforth_pointers   #define cstr ((char *(*)(char *, Cell))gforth_pointers(6))
   #define tilde_cstr ((char *(*)(char *, Cell))gforth_pointers(7))
   #define throw_jmp_handler *((void**)(gforth_pointers(8)))
   #define gforth_stacks ((user_area *(*)())gforth_pointers(9))
   #define GFORTH_ARGS void *(*gforth_pointers)(Cell)
 #endif  #endif
   
 #define CELL_BITS       (sizeof(Cell) * 8)  #define CELL_BITS       (sizeof(Cell) * 8)

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


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