[BACK]Return to stackm.h CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / Kan

Diff for /OpenXM/src/kan96xx/Kan/stackm.h between version 1.7 and 1.14

version 1.7, 2004/09/16 23:53:44 version 1.14, 2015/10/08 11:49:37
Line 1 
Line 1 
 /* $OpenXM: OpenXM/src/kan96xx/Kan/stackm.h,v 1.6 2004/09/12 00:26:21 takayama Exp $ */  /* $OpenXM: OpenXM/src/kan96xx/Kan/stackm.h,v 1.13 2015/10/08 08:14:25 takayama Exp $ */
 #define LOAD_SM1_PATH "/usr/local/lib/sm1/"  #define LOAD_SM1_PATH "/usr/local/lib/sm1/"
 /* Do not forget to put / at the tail.  /* Do not forget to put / at the tail.
    "/usr/local/lib/sm1" does not work.     "/usr/local/lib/sm1" does not work.
Line 8 
Line 8 
 /******************* stackm.h ******************************/  /******************* stackm.h ******************************/
 #include <setjmp.h>  #include <setjmp.h>
   
   #if defined(__CYGWIN__) || defined(__MSYS__)
   #define MYSETJMP(e) _setjmp(e)
   #define MYSIGSETJMP(e,f) _setjmp(e)
   #define MYLONGJMP(e,f) _longjmp(e,f)
   #define MYSIGLONGJMP(e,f) _longjmp(e,f)
   #else
   #define MYSETJMP(e)  setjmp(e)
   #define MYSIGSETJMP(e,f) sigsetjmp(e,f)
   #define MYLONGJMP(e,f) longjmp(e,f)
   #define MYSIGLONGJMP(e,f) siglongjmp(e,f)
   #endif
   
 /**** data types (class identifiers) ************/  /**** data types (class identifiers) ************/
 /* Never change the following orders.  /* Never change the following orders.
    If you add a new class, add that class at the bottom and give the     If you add a new class, add that class at the bottom and give the
Line 35 
Line 45 
 #define SrationalFunction 16  #define SrationalFunction 16
 #define Sclass          17   /* class, for extension */  #define Sclass          17   /* class, for extension */
 #define Sdouble         18  #define Sdouble         18
   #define SbyteArray      19
   
 #define TYPES            19   /* number of data types. */  #define TYPES            20   /* number of data types. */
 /* NOTE! If you change the above, you need to change mklookup.c too. */  /* NOTE! If you change the above, you need to change mklookup.c too. */
 /* Change also dr.sm1 : datatype constants. */  /* Change also dr.sm1 : datatype constants. */
   
Line 62  union cell {
Line 73  union cell {
   struct coeff *universalNumber;    struct coeff *universalNumber;
   void *voidp;    void *voidp;
   double *dbl;    double *dbl;
     unsigned char *bytes;
 };  };
   
 struct object{  struct object{
   int tag;                /* class identifier */    int tag;                /* class identifier */
   union cell lc;          /* left cell */    union cell lc;          /* left cell */
   union cell rc;          /* right cell */    union cell rc;          /* right cell */
     struct object *attr;    /* Attribute list. See misc-2005/06/gfan/test1.sm1
                                as to performance test. */
 };  };
   
   #define OINIT  { .attr = NULL}
   
 struct dictionary {  struct dictionary {
   char *key;    char *key;
   int h0; /* Value of hash functions */    int h0; /* Value of hash functions */
Line 149  if ((ob).tag != Sarray) {fprintf(stderr,"Warning: PUTO
Line 165  if ((ob).tag != Sarray) {fprintf(stderr,"Warning: PUTO
   
 typedef enum {CCPUSH,CCPOP,CCRESTORE} actionOfContextControl;  typedef enum {CCPUSH,CCPOP,CCRESTORE} actionOfContextControl;
   
   #define SCANNERBUF_SIZE 240

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.14

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