[BACK]Return to gfspn.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / engine

Diff for /OpenXM_contrib2/asir2000/engine/gfspn.c between version 1.4 and 1.5

version 1.4, 2001/09/03 07:01:06 version 1.5, 2001/10/09 01:36:13
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2000/engine/gfsn.c,v 1.3 2001/09/03 01:06:40 noro Exp $ */  /* $OpenXM: OpenXM_contrib2/asir2000/engine/gfspn.c,v 1.4 2001/09/03 07:01:06 noro Exp $ */
   
 #include "ca.h"  #include "ca.h"
 #include "base.h"  #include "base.h"
   
 UM current_mod_gfsn;  UM current_mod_gfsn;
   
 void setmod_gfsn(p)  void setmod_gfsn(UM p)
 UM p;  
 {  {
         current_mod_gfsn = p;          current_mod_gfsn = p;
 }  }
   
 void getmod_gfsn(up)  void getmod_gfsn(UM *up)
 UM *up;  
 {  {
         *up = current_mod_gfsn;          *up = current_mod_gfsn;
 }  }
   
 void simpgfsn(n,r)  void simpgfsn(GFSN n,GFSN *r)
 GFSN n;  
 GFSN *r;  
 {  {
         UM t,q;          UM t,q;
   
Line 38  GFSN *r;
Line 34  GFSN *r;
   
 #define NZGFSN(a) ((a)&&(OID(a)==O_N)&&(NID(a)==N_GFSN))  #define NZGFSN(a) ((a)&&(OID(a)==O_N)&&(NID(a)==N_GFSN))
   
 void ntogfsn(a,b)  void ntogfsn(Obj a,GFSN *b)
 Obj a;  
 GFSN *b;  
 {  {
         UM t;          UM t;
         GFS c;          GFS c;
Line 48  GFSN *b;
Line 42  GFSN *b;
         if ( !a || (OID(a)==O_N && NID(a) == N_GFSN) )          if ( !a || (OID(a)==O_N && NID(a) == N_GFSN) )
                 *b = (GFSN)a;                  *b = (GFSN)a;
         else if ( OID(a) == O_N && (NID(a) == N_GFS || NID(a) == N_Q) ) {          else if ( OID(a) == O_N && (NID(a) == N_GFS || NID(a) == N_Q) ) {
                 ntogfs((Num)a,&c);                  ntogfs((Obj)a,&c);
                 if ( !b )                  if ( !b )
                         *b = 0;                          *b = 0;
                 else {                  else {
Line 59  GFSN *b;
Line 53  GFSN *b;
                 error("ntogfsn : invalid argument");                  error("ntogfsn : invalid argument");
 }  }
   
 void addgfsn(a,b,c)  void addgfsn(GFSN a,GFSN b,GFSN *c)
 GFSN a,b;  
 GFSN *c;  
 {  {
         UM t,q;          UM t,q;
         GFSN z;          GFSN z;
         int d;          int d;
         MQ qq;  
   
         ntogfsn((Obj)a,&z); a = z; ntogfsn((Obj)b,&z); b = z;          ntogfsn((Obj)a,&z); a = z; ntogfsn((Obj)b,&z); b = z;
         if ( !a )          if ( !a )
Line 84  GFSN *c;
Line 75  GFSN *c;
         }          }
 }  }
   
 void subgfsn(a,b,c)  void subgfsn(GFSN a,GFSN b,GFSN *c)
 GFSN a,b;  
 GFSN *c;  
 {  {
         UM t,q;          UM t,q;
         GFSN z;          GFSN z;
Line 109  GFSN *c;
Line 98  GFSN *c;
   
 extern int up_lazy;  extern int up_lazy;
   
 void mulgfsn(a,b,c)  void mulgfsn(GFSN a,GFSN b,GFSN *c)
 GFSN a,b;  
 GFSN *c;  
 {  {
         UM t,q;          UM t,q;
         GFSN z;          GFSN z;
Line 130  GFSN *c;
Line 117  GFSN *c;
         }          }
 }  }
   
 void divgfsn(a,b,c)  void divgfsn(GFSN a,GFSN b,GFSN *c)
 GFSN a,b;  
 GFSN *c;  
 {  {
         GFSN z;          GFSN z;
         int d;          int d;
Line 159  GFSN *c;
Line 144  GFSN *c;
         }          }
 }  }
   
 void invgfsn(b,c)  void invgfsn(GFSN b,GFSN *c)
 GFSN b;  
 GFSN *c;  
 {  {
         GFSN z;          GFSN z;
         int d;          int d;
Line 184  GFSN *c;
Line 167  GFSN *c;
         }          }
 }  }
   
 void chsgngfsn(a,c)  void chsgngfsn(GFSN a,GFSN *c)
 GFSN a,*c;  
 {  {
         GFSN z;          GFSN z;
         int d;          int d;
Line 204  GFSN a,*c;
Line 186  GFSN a,*c;
         }          }
 }  }
   
 void pwrgfsn(a,b,c)  void pwrgfsn(GFSN a,Q b,GFSN *c)
 GFSN a;  
 Q b;  
 GFSN *c;  
 {  {
         GFSN z;          GFSN z;
         UM t,x,y,q;          UM t,x,y,q;
Line 250  GFSN *c;
Line 229  GFSN *c;
         }          }
 }  }
   
 int cmpgfsn(a,b)  int cmpgfsn(GFSN a,GFSN b)
 GFSN a,b;  
 {  {
         GFSN z;          GFSN z;
   
Line 267  GFSN a,b;
Line 245  GFSN a,b;
                 return compsfum(BDY(a),BDY(b));                  return compsfum(BDY(a),BDY(b));
 }  }
   
 void randomgfsn(r)  void randomgfsn(GFSN *r)
 GFSN *r;  
 {  {
         int i,d;          int d;
         UM t;          UM t;
   
         if ( !current_mod_gfsn )          if ( !current_mod_gfsn )

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

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