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

Diff for /OpenXM_contrib2/asir2000/io/cio.c between version 1.16 and 1.17

version 1.16, 2015/08/06 10:01:52 version 1.17, 2015/08/12 10:45:12
Line 44 
Line 44 
  * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY   * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY
  * 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/io/cio.c,v 1.15 2015/08/06 09:12:29 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/io/cio.c,v 1.16 2015/08/06 10:01:52 fujimoto Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 250  void write_cmo_bf(FILE *s,BF bf)
Line 250  void write_cmo_bf(FILE *s,BF bf)
   
   r = CMO_BIGFLOAT; write_int(s,&r);    r = CMO_BIGFLOAT; write_int(s,&r);
   write_int(s,&MPFR_SIGN(bf->body));    write_int(s,&MPFR_SIGN(bf->body));
   write_int(s,&MPFR_PREC(bf->body));    write_int(s,(unsigned int *)&MPFR_PREC(bf->body));
   exp = MPFR_EXP(bf->body);    exp = MPFR_EXP(bf->body);
   write_int64(s,&exp);    write_int64(s,&exp);
   len = MPFR_LIMB_SIZE(bf->body);    len = MPFR_LIMB_SIZE(bf->body);
Line 260  void write_cmo_bf(FILE *s,BF bf)
Line 260  void write_cmo_bf(FILE *s,BF bf)
 #else /* SIZEOF_LONG == 8 */  #else /* SIZEOF_LONG == 8 */
   t = 2*len;    t = 2*len;
   write_int(s,&t);    write_int(s,&t);
   ptr = (UL *)MPFR_MANT(bf->body);    write_longarray(s,MPFR_MANT(bf->body),len);
   for ( i = 0; i < len; i++ ) {  
         u = ptr[i]>>32;  
         l = ptr[i]&0xffffffff;  
     write_int(s,&u);  
     write_int(s,&l);  
   }  
 #endif  #endif
 }  }
   
Line 660  void read_cmo_bf(FILE *s,BF *bf)
Line 654  void read_cmo_bf(FILE *s,BF *bf)
 #if SIZEOF_LONG == 4  #if SIZEOF_LONG == 4
   read_intarray(s,MPFR_MANT(r->body),len);    read_intarray(s,MPFR_MANT(r->body),len);
 #else /* SIZEOF_LONG == 8 */  #else /* SIZEOF_LONG == 8 */
   len >>= 1;    read_longarray(s,MPFR_MANT(r->body),len);
   ptr = (UL *)MPFR_MANT(r->body);  
   for ( i = 0; i < len; i++ ) {  
     read_int(s,&u);  
     read_int(s,&l);  
     ptr[i] = ((UL)u)<<32|((UL)l)&0xffffffff;  
   }  
 #endif  #endif
   *bf = r;    *bf = r;
 }  }

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

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