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

Diff for /OpenXM_contrib2/asir2018/engine/PD.c between version 1.1 and 1.2

version 1.1, 2018/09/19 05:45:07 version 1.2, 2018/09/28 08:20:28
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM$   * $OpenXM: OpenXM_contrib2/asir2018/engine/PD.c,v 1.1 2018/09/19 05:45:07 noro Exp $
 */  */
 #ifndef FBASE  #ifndef FBASE
 #define FBASE  #define FBASE
Line 72  void plisttop(P *f,V v,int n,P *gp)
Line 72  void plisttop(P *f,V v,int n,P *gp)
         continue;          continue;
       NEXTDC(dc0,dc);        NEXTDC(dc0,dc);
       if ( i )        if ( i )
         STOQ(i,DEG(dc));          STOZ(i,DEG(dc));
       else        else
         DEG(dc) = 0;          DEG(dc) = 0;
       COEF(dc) = f[i];        COEF(dc) = f[i];
Line 129  int divtp(VL vl,P p1,P p2,P *q)
Line 129  int divtp(VL vl,P p1,P p2,P *q)
         *q = 0;          *q = 0;
         return ( 0 );          return ( 0 );
       }        }
       d1 = QTOS(deg1); d2 = QTOS(deg2);        d1 = ZTOS(deg1); d2 = ZTOS(deg2);
       W_CALLOC(d1-d2,P,pq); W_CALLOC(d1,P,pr); W_CALLOC(d2,P,pd);        W_CALLOC(d1-d2,P,pq); W_CALLOC(d1,P,pr); W_CALLOC(d2,P,pd);
       for ( dc = dc1; dc; dc = NEXT(dc) )        for ( dc = dc1; dc; dc = NEXT(dc) )
         pr[QTOS(DEG(dc))] = COEF(dc);          pr[ZTOS(DEG(dc))] = COEF(dc);
       for ( dc = dc2; dc; dc = NEXT(dc) )        for ( dc = dc2; dc; dc = NEXT(dc) )
         pd[QTOS(DEG(dc))] = COEF(dc);          pd[ZTOS(DEG(dc))] = COEF(dc);
       for ( dvr = COEF(dc2), i = d1 - d2; i >= 0; i-- )        for ( dvr = COEF(dc2), i = d1 - d2; i >= 0; i-- )
         if ( !pr[i+d2] )          if ( !pr[i+d2] )
           continue;            continue;
Line 246  int divtpz(VL vl,P p1,P p2,P *q)
Line 246  int divtpz(VL vl,P p1,P p2,P *q)
         *q = 0;          *q = 0;
         return ( 0 );          return ( 0 );
       }        }
       d1 = QTOS(deg1); d2 = QTOS(deg2);        d1 = ZTOS(deg1); d2 = ZTOS(deg2);
       W_CALLOC(d1-d2,P,pq); W_CALLOC(d1,P,pr); W_CALLOC(d2,P,pd);        W_CALLOC(d1-d2,P,pq); W_CALLOC(d1,P,pr); W_CALLOC(d2,P,pd);
       for ( dc = dc1; dc; dc = NEXT(dc) )        for ( dc = dc1; dc; dc = NEXT(dc) )
         pr[QTOS(DEG(dc))] = COEF(dc);          pr[ZTOS(DEG(dc))] = COEF(dc);
       for ( dc = dc2; dc; dc = NEXT(dc) )        for ( dc = dc2; dc; dc = NEXT(dc) )
         pd[QTOS(DEG(dc))] = COEF(dc);          pd[ZTOS(DEG(dc))] = COEF(dc);
       for ( dvr = COEF(dc2), i = d1 - d2; i >= 0; i-- )        for ( dvr = COEF(dc2), i = d1 - d2; i >= 0; i-- )
         if ( !pr[i+d2] )          if ( !pr[i+d2] )
           continue;            continue;
Line 334  void udivpz(P f1,P f2,P *fqp,P *frp)
Line 334  void udivpz(P f1,P f2,P *fqp,P *frp)
         *fqp = *frp = 0;          *fqp = *frp = 0;
         return;          return;
       } else {        } else {
         pq[QTOS(DEG(dc))] = qn;          pq[ZTOS(DEG(dc))] = qn;
       }        }
     }      }
     plisttop((P *)pq,VR(f1),n1,fqp);      plisttop((P *)pq,VR(f1),n1,fqp);
Line 348  void udivpz(P f1,P f2,P *fqp,P *frp)
Line 348  void udivpz(P f1,P f2,P *fqp,P *frp)
   }    }
   W_CALLOC(n1-n2,Z,pq); W_CALLOC(n1,Z,pr); W_CALLOC(n2,Z,pd);    W_CALLOC(n1-n2,Z,pq); W_CALLOC(n1,Z,pr); W_CALLOC(n2,Z,pd);
   for ( dc = DC(f1); dc; dc = NEXT(dc) )    for ( dc = DC(f1); dc; dc = NEXT(dc) )
     pr[QTOS(DEG(dc))] = (Z)COEF(dc);      pr[ZTOS(DEG(dc))] = (Z)COEF(dc);
   for ( dc = DC(f2); dc; dc = NEXT(dc) )    for ( dc = DC(f2); dc; dc = NEXT(dc) )
     pd[QTOS(DEG(dc))] = (Z)COEF(dc);      pd[ZTOS(DEG(dc))] = (Z)COEF(dc);
   for ( d = (Z)UCOEF(f2), i = n1 - n2; i >= 0; i-- ) {    for ( d = (Z)UCOEF(f2), i = n1 - n2; i >= 0; i-- ) {
     if ( !pr[i+n2] )      if ( !pr[i+n2] )
       continue;        continue;
Line 411  void udivpzwm(Z mod,P f1,P f2,P *fqp,P *frp)
Line 411  void udivpzwm(Z mod,P f1,P f2,P *fqp,P *frp)
         *fqp = *frp = 0;          *fqp = *frp = 0;
         return;          return;
       } else {        } else {
         pq[QTOS(DEG(dc))] = qn;          pq[ZTOS(DEG(dc))] = qn;
       }        }
     }      }
     plisttop((P *)pq,VR(f1),n1,fqp);      plisttop((P *)pq,VR(f1),n1,fqp);
Line 425  void udivpzwm(Z mod,P f1,P f2,P *fqp,P *frp)
Line 425  void udivpzwm(Z mod,P f1,P f2,P *fqp,P *frp)
   }    }
   W_CALLOC(n1-n2,Z,pq); W_CALLOC(n1,Z,pr); W_CALLOC(n2,Z,pd);    W_CALLOC(n1-n2,Z,pq); W_CALLOC(n1,Z,pr); W_CALLOC(n2,Z,pd);
   for ( dc = DC(f1); dc; dc = NEXT(dc) )    for ( dc = DC(f1); dc; dc = NEXT(dc) )
     pr[QTOS(DEG(dc))] = (Z)COEF(dc);      pr[ZTOS(DEG(dc))] = (Z)COEF(dc);
   for ( dc = DC(f2); dc; dc = NEXT(dc) )    for ( dc = DC(f2); dc; dc = NEXT(dc) )
     pd[QTOS(DEG(dc))] = (Z)COEF(dc);      pd[ZTOS(DEG(dc))] = (Z)COEF(dc);
   for ( d = (Z)UCOEF(f2), i = n1 - n2; i >= 0; i-- ) {    for ( d = (Z)UCOEF(f2), i = n1 - n2; i >= 0; i-- ) {
     if ( !pr[i+n2] )      if ( !pr[i+n2] )
       continue;        continue;

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

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