VM: make the bignum_to_* family free functions, they don't need to be
members of factor_vmdb4
							parent
							
								
									72fe466ac9
								
							
						
					
					
						commit
						e14d7a3508
					
				| 
						 | 
				
			
			@ -369,7 +369,7 @@ FOO_TO_BIGNUM(ulong_long, uint64_t, int64_t, uint64_t)
 | 
			
		|||
/* cannot allocate memory */
 | 
			
		||||
/* bignum_to_cell, fixnum_to_cell, long_long_to_cell, ulong_long_to_cell */
 | 
			
		||||
#define BIGNUM_TO_FOO(name, type, stype, utype)                            \
 | 
			
		||||
  type factor_vm::bignum_to_##name(bignum* bn) {                           \
 | 
			
		||||
  type bignum_to_##name(bignum* bn) {                                      \
 | 
			
		||||
    if (BIGNUM_ZERO_P(bn))                                                 \
 | 
			
		||||
      return (0);                                                          \
 | 
			
		||||
    {                                                                      \
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,4 +42,9 @@ enum bignum_comparison {
 | 
			
		|||
  bignum_comparison_greater = 1
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
cell bignum_to_cell(bignum* bn);
 | 
			
		||||
fixnum bignum_to_fixnum(bignum* bn);
 | 
			
		||||
int64_t bignum_to_long_long(bignum* bn);
 | 
			
		||||
uint64_t bignum_to_ulong_long(bignum* bn);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -232,11 +232,7 @@ struct factor_vm {
 | 
			
		|||
                     bignum** remainder);
 | 
			
		||||
  bignum* bignum_quotient(bignum* numerator, bignum* denominator);
 | 
			
		||||
  bignum* bignum_remainder(bignum* numerator, bignum* denominator);
 | 
			
		||||
  cell bignum_to_cell(bignum* bn);
 | 
			
		||||
  fixnum bignum_to_fixnum_strict(bignum* bn);
 | 
			
		||||
  fixnum bignum_to_fixnum(bignum* bn);
 | 
			
		||||
  int64_t bignum_to_long_long(bignum* bn);
 | 
			
		||||
  uint64_t bignum_to_ulong_long(bignum* bn);
 | 
			
		||||
  bignum* double_to_bignum(double x);
 | 
			
		||||
  int bignum_equal_p_unsigned(bignum* x, bignum* y);
 | 
			
		||||
  enum bignum_comparison bignum_compare_unsigned(bignum* x, bignum* y);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue