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

Diff for /OpenXM_contrib2/asir2000/asm/ddN.c between version 1.8 and 1.13

version 1.8, 2007/09/15 10:17:07 version 1.13, 2015/08/29 04:15:04
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_contrib2/asir2000/asm/ddN.c,v 1.7 2007/02/18 05:36:27 ohara Exp $   * $OpenXM: OpenXM_contrib2/asir2000/asm/ddN.c,v 1.12 2014/03/29 18:53:57 ohara Exp $
 */  */
 #ifndef FBASE  #ifndef FBASE
 #define FBASE  #define FBASE
Line 55 
Line 55 
 #include "base.h"  #include "base.h"
 #include "inline.h"  #include "inline.h"
   
   #if defined(__GNUC__)
   unsigned int divn_1(unsigned int *p,int s,unsigned int d,unsigned int *r)  __attribute__ ((noinline));
   void muln_1(unsigned int *p,int s,unsigned int d,unsigned int *r)  __attribute__ ((noinline));
   #endif
   
 void divn(N n1,N n2,N *nq,N *nr)  void divn(N n1,N n2,N *nq,N *nr)
 {  {
         int tmp,b;          int tmp,b;
Line 288  void bxprintn(N n)
Line 293  void bxprintn(N n)
         }          }
 }  }
   
 #if defined(VISUAL) || defined(i386)  #if (defined(_M_IX86) || defined(i386)) && !defined(__MINGW32__)
 void muln(N n1,N n2,N *nr)  void muln(N n1,N n2,N *nr)
 {  {
         unsigned int tmp,carry,mul;          unsigned int tmp,carry,mul;
Line 347  void _muln(N n1,N n2,N nr)
Line 352  void _muln(N n1,N n2,N nr)
 void muln_1(unsigned int *p,int s,unsigned int d,unsigned int *r)  void muln_1(unsigned int *p,int s,unsigned int d,unsigned int *r)
 {  {
         /* esi : p, edi : r, carry : ebx, s : ecx */          /* esi : p, edi : r, carry : ebx, s : ecx */
 #if defined(VISUAL)  #if defined(_M_IX86)
         __asm {          __asm {
         push esi          push esi
         push edi          push edi
Line 496  unsigned int divn_1(unsigned int *p,int s,unsigned int
Line 501  unsigned int divn_1(unsigned int *p,int s,unsigned int
         return borrow;          return borrow;
 */  */
         /* esi : p, edi : r, borrow : ebx, s : ecx */          /* esi : p, edi : r, borrow : ebx, s : ecx */
 #if defined(VISUAL)  #if defined(_M_IX86)
         __asm {          __asm {
         push esi          push esi
         push edi          push edi
Line 591  void muln(N n1,N n2,N *nr)
Line 596  void muln(N n1,N n2,N *nr)
   
 void _muln(N n1,N n2,N nr)  void _muln(N n1,N n2,N nr)
 {  {
         unsigned int tmp,carry,mul;          unsigned int carry=0,mul;
         unsigned int *p1,*pp,*m1,*m2;          unsigned int *p1,*pp,*m1,*m2;
         int i,j,d1,d2;          int i,j,d1,d2;
   
Line 632  void divnmain(int d1,int d2,unsigned int *m1,unsigned 
Line 637  void divnmain(int d1,int d2,unsigned int *m1,unsigned 
 {  {
         int i,j;          int i,j;
         UL r,ltmp;          UL r,ltmp;
         unsigned int l,ur,tmp;          unsigned int l,ur;
         unsigned int *n1,*n2;          unsigned int *n1,*n2;
         unsigned int u,qhat;          unsigned int u,qhat;
         unsigned int v1,v2;          unsigned int v1,v2;

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.13

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