netfilter
firewalling, NAT, and packet mangling for linux
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
mini-gmp.h File Reference
#include <stddef.h>
Include dependency graph for mini-gmp.h:
This graph shows which files directly or indirectly include this file:

Data Structures

struct  __mpz_struct
 

Macros

#define mpn_invert_limb(x)   mpn_invert_3by2 ((x), 0)
 
#define mpz_odd_p(z)   (((z)->_mp_size != 0) & (int) (z)->_mp_d[0])
 
#define mpz_even_p(z)   (! mpz_odd_p (z))
 
#define MPZ_ROINIT_N(xp, xs)   {{0, (xs),(xp) }}
 

Typedefs

typedef unsigned long mp_limb_t
 
typedef long mp_size_t
 
typedef unsigned long mp_bitcnt_t
 
typedef mp_limb_tmp_ptr
 
typedef const mp_limb_tmp_srcptr
 
typedef __mpz_struct mpz_t [1]
 
typedef __mpz_structmpz_ptr
 
typedef const __mpz_structmpz_srcptr
 

Functions

void mp_set_memory_functions (void *(*)(size_t), void *(*)(void *, size_t, size_t), void(*)(void *, size_t))
 
void mp_get_memory_functions (void *(**)(size_t), void *(**)(void *, size_t, size_t), void(**)(void *, size_t))
 
void mpn_copyi (mp_ptr, mp_srcptr, mp_size_t)
 
void mpn_copyd (mp_ptr, mp_srcptr, mp_size_t)
 
void mpn_zero (mp_ptr, mp_size_t)
 
int mpn_cmp (mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t mpn_add_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t mpn_add_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t mpn_add (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
mp_limb_t mpn_sub_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t mpn_sub_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t mpn_sub (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
mp_limb_t mpn_mul_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t mpn_addmul_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t mpn_submul_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t mpn_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
void mpn_mul_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
void mpn_sqr (mp_ptr, mp_srcptr, mp_size_t)
 
int mpn_perfect_square_p (mp_srcptr, mp_size_t)
 
mp_size_t mpn_sqrtrem (mp_ptr, mp_ptr, mp_srcptr, mp_size_t)
 
mp_limb_t mpn_lshift (mp_ptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_t mpn_rshift (mp_ptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_bitcnt_t mpn_scan0 (mp_srcptr, mp_bitcnt_t)
 
mp_bitcnt_t mpn_scan1 (mp_srcptr, mp_bitcnt_t)
 
mp_bitcnt_t mpn_popcount (mp_srcptr, mp_size_t)
 
mp_limb_t mpn_invert_3by2 (mp_limb_t, mp_limb_t)
 
size_t mpn_get_str (unsigned char *, int, mp_ptr, mp_size_t)
 
mp_size_t mpn_set_str (mp_ptr, const unsigned char *, size_t, int)
 
void mpz_init (mpz_t)
 
void mpz_init2 (mpz_t, mp_bitcnt_t)
 
void mpz_clear (mpz_t)
 
int mpz_sgn (const mpz_t)
 
int mpz_cmp_si (const mpz_t, long)
 
int mpz_cmp_ui (const mpz_t, unsigned long)
 
int mpz_cmp (const mpz_t, const mpz_t)
 
int mpz_cmpabs_ui (const mpz_t, unsigned long)
 
int mpz_cmpabs (const mpz_t, const mpz_t)
 
int mpz_cmp_d (const mpz_t, double)
 
int mpz_cmpabs_d (const mpz_t, double)
 
void mpz_abs (mpz_t, const mpz_t)
 
void mpz_neg (mpz_t, const mpz_t)
 
void mpz_swap (mpz_t, mpz_t)
 
void mpz_add_ui (mpz_t, const mpz_t, unsigned long)
 
void mpz_add (mpz_t, const mpz_t, const mpz_t)
 
void mpz_sub_ui (mpz_t, const mpz_t, unsigned long)
 
void mpz_ui_sub (mpz_t, unsigned long, const mpz_t)
 
void mpz_sub (mpz_t, const mpz_t, const mpz_t)
 
void mpz_mul_si (mpz_t, const mpz_t, long int)
 
void mpz_mul_ui (mpz_t, const mpz_t, unsigned long int)
 
void mpz_mul (mpz_t, const mpz_t, const mpz_t)
 
void mpz_mul_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_addmul_ui (mpz_t, const mpz_t, unsigned long int)
 
void mpz_addmul (mpz_t, const mpz_t, const mpz_t)
 
void mpz_submul_ui (mpz_t, const mpz_t, unsigned long int)
 
void mpz_submul (mpz_t, const mpz_t, const mpz_t)
 
void mpz_cdiv_qr (mpz_t, mpz_t, const mpz_t, const mpz_t)
 
void mpz_fdiv_qr (mpz_t, mpz_t, const mpz_t, const mpz_t)
 
void mpz_tdiv_qr (mpz_t, mpz_t, const mpz_t, const mpz_t)
 
void mpz_cdiv_q (mpz_t, const mpz_t, const mpz_t)
 
void mpz_fdiv_q (mpz_t, const mpz_t, const mpz_t)
 
void mpz_tdiv_q (mpz_t, const mpz_t, const mpz_t)
 
void mpz_cdiv_r (mpz_t, const mpz_t, const mpz_t)
 
void mpz_fdiv_r (mpz_t, const mpz_t, const mpz_t)
 
void mpz_tdiv_r (mpz_t, const mpz_t, const mpz_t)
 
void mpz_cdiv_q_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_fdiv_q_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_tdiv_q_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_cdiv_r_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_fdiv_r_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_tdiv_r_2exp (mpz_t, const mpz_t, mp_bitcnt_t)
 
void mpz_mod (mpz_t, const mpz_t, const mpz_t)
 
void mpz_divexact (mpz_t, const mpz_t, const mpz_t)
 
int mpz_divisible_p (const mpz_t, const mpz_t)
 
int mpz_congruent_p (const mpz_t, const mpz_t, const mpz_t)
 
unsigned long mpz_cdiv_qr_ui (mpz_t, mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_fdiv_qr_ui (mpz_t, mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_tdiv_qr_ui (mpz_t, mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_cdiv_q_ui (mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_fdiv_q_ui (mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_tdiv_q_ui (mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_cdiv_r_ui (mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_fdiv_r_ui (mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_tdiv_r_ui (mpz_t, const mpz_t, unsigned long)
 
unsigned long mpz_cdiv_ui (const mpz_t, unsigned long)
 
unsigned long mpz_fdiv_ui (const mpz_t, unsigned long)
 
unsigned long mpz_tdiv_ui (const mpz_t, unsigned long)
 
unsigned long mpz_mod_ui (mpz_t, const mpz_t, unsigned long)
 
void mpz_divexact_ui (mpz_t, const mpz_t, unsigned long)
 
int mpz_divisible_ui_p (const mpz_t, unsigned long)
 
unsigned long mpz_gcd_ui (mpz_t, const mpz_t, unsigned long)
 
void mpz_gcd (mpz_t, const mpz_t, const mpz_t)
 
void mpz_gcdext (mpz_t, mpz_t, mpz_t, const mpz_t, const mpz_t)
 
void mpz_lcm_ui (mpz_t, const mpz_t, unsigned long)
 
void mpz_lcm (mpz_t, const mpz_t, const mpz_t)
 
int mpz_invert (mpz_t, const mpz_t, const mpz_t)
 
void mpz_sqrtrem (mpz_t, mpz_t, const mpz_t)
 
void mpz_sqrt (mpz_t, const mpz_t)
 
int mpz_perfect_square_p (const mpz_t)
 
void mpz_pow_ui (mpz_t, const mpz_t, unsigned long)
 
void mpz_ui_pow_ui (mpz_t, unsigned long, unsigned long)
 
void mpz_powm (mpz_t, const mpz_t, const mpz_t, const mpz_t)
 
void mpz_powm_ui (mpz_t, const mpz_t, unsigned long, const mpz_t)
 
void mpz_rootrem (mpz_t, mpz_t, const mpz_t, unsigned long)
 
int mpz_root (mpz_t, const mpz_t, unsigned long)
 
void mpz_fac_ui (mpz_t, unsigned long)
 
void mpz_bin_uiui (mpz_t, unsigned long, unsigned long)
 
int mpz_probab_prime_p (const mpz_t, int)
 
int mpz_tstbit (const mpz_t, mp_bitcnt_t)
 
void mpz_setbit (mpz_t, mp_bitcnt_t)
 
void mpz_clrbit (mpz_t, mp_bitcnt_t)
 
void mpz_combit (mpz_t, mp_bitcnt_t)
 
void mpz_com (mpz_t, const mpz_t)
 
void mpz_and (mpz_t, const mpz_t, const mpz_t)
 
void mpz_ior (mpz_t, const mpz_t, const mpz_t)
 
void mpz_xor (mpz_t, const mpz_t, const mpz_t)
 
mp_bitcnt_t mpz_popcount (const mpz_t)
 
mp_bitcnt_t mpz_hamdist (const mpz_t, const mpz_t)
 
mp_bitcnt_t mpz_scan0 (const mpz_t, mp_bitcnt_t)
 
mp_bitcnt_t mpz_scan1 (const mpz_t, mp_bitcnt_t)
 
int mpz_fits_slong_p (const mpz_t)
 
int mpz_fits_ulong_p (const mpz_t)
 
long int mpz_get_si (const mpz_t)
 
unsigned long int mpz_get_ui (const mpz_t)
 
double mpz_get_d (const mpz_t)
 
size_t mpz_size (const mpz_t)
 
mp_limb_t mpz_getlimbn (const mpz_t, mp_size_t)
 
void mpz_realloc2 (mpz_t, mp_bitcnt_t)
 
mp_srcptr mpz_limbs_read (mpz_srcptr)
 
mp_ptr mpz_limbs_modify (mpz_t, mp_size_t)
 
mp_ptr mpz_limbs_write (mpz_t, mp_size_t)
 
void mpz_limbs_finish (mpz_t, mp_size_t)
 
mpz_srcptr mpz_roinit_n (mpz_t, mp_srcptr, mp_size_t)
 
void mpz_set_si (mpz_t, signed long int)
 
void mpz_set_ui (mpz_t, unsigned long int)
 
void mpz_set (mpz_t, const mpz_t)
 
void mpz_set_d (mpz_t, double)
 
void mpz_init_set_si (mpz_t, signed long int)
 
void mpz_init_set_ui (mpz_t, unsigned long int)
 
void mpz_init_set (mpz_t, const mpz_t)
 
void mpz_init_set_d (mpz_t, double)
 
size_t mpz_sizeinbase (const mpz_t, int)
 
char * mpz_get_str (char *, int, const mpz_t)
 
int mpz_set_str (mpz_t, const char *, int)
 
int mpz_init_set_str (mpz_t, const char *, int)
 
void mpz_import (mpz_t, size_t, int, size_t, int, size_t, const void *)
 
void * mpz_export (void *, size_t *, int, size_t, int, size_t, const mpz_t)
 

Variables

const int mp_bits_per_limb
 

Macro Definition Documentation

#define mpn_invert_limb (   x)    mpn_invert_3by2 ((x), 0)
#define mpz_even_p (   z)    (! mpz_odd_p (z))

Referenced by mpz_probab_prime_p().

#define mpz_odd_p (   z)    (((z)->_mp_size != 0) & (int) (z)->_mp_d[0])

Referenced by mpz_gcdext().

#define MPZ_ROINIT_N (   xp,
  xs 
)    {{0, (xs),(xp) }}

Typedef Documentation

typedef unsigned long mp_bitcnt_t
typedef unsigned long mp_limb_t
typedef mp_limb_t* mp_ptr
typedef long mp_size_t
typedef const mp_limb_t* mp_srcptr
typedef const __mpz_struct* mpz_srcptr
typedef __mpz_struct mpz_t[1]

Function Documentation

void mp_get_memory_functions ( void *  **)(size_t,
void *  **)(void *, size_t, size_t,
void(**)(void *, size_t)   
)
void mp_set_memory_functions ( void *  *)(size_t,
void *  *)(void *, size_t, size_t,
void(*)(void *, size_t)   
)
mp_limb_t mpn_add ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_srcptr  ,
mp_size_t   
)

References mpn_add_1(), and mpn_add_n().

Here is the call graph for this function:

mp_limb_t mpn_add_1 ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_limb_t   
)

Referenced by mpn_add().

Here is the caller graph for this function:

mp_limb_t mpn_add_n ( mp_ptr  ,
mp_srcptr  ,
mp_srcptr  ,
mp_size_t   
)

Referenced by mpn_add().

Here is the caller graph for this function:

mp_limb_t mpn_addmul_1 ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_limb_t   
)

References gmp_umul_ppmm.

Referenced by mpn_mul().

Here is the caller graph for this function:

int mpn_cmp ( mp_srcptr  ,
mp_srcptr  ,
mp_size_t   
)

Referenced by mpz_cmp().

Here is the caller graph for this function:

void mpn_copyd ( mp_ptr  ,
mp_srcptr  ,
mp_size_t   
)

Referenced by mpn_sqrtrem(), and mpz_mul_2exp().

Here is the caller graph for this function:

void mpn_copyi ( mp_ptr  ,
mp_srcptr  ,
mp_size_t   
)

Referenced by mpz_get_str(), mpz_set(), and mpz_sizeinbase().

Here is the caller graph for this function:

size_t mpn_get_str ( unsigned char *  ,
int  ,
mp_ptr  ,
mp_size_t   
)
mp_limb_t mpn_invert_3by2 ( mp_limb_t  ,
mp_limb_t   
)
mp_limb_t mpn_lshift ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
unsigned  int 
)

References GMP_LIMB_BITS.

Referenced by mpz_mul_2exp(), and mpz_powm().

Here is the caller graph for this function:

mp_limb_t mpn_mul ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_srcptr  ,
mp_size_t   
)

References mpn_addmul_1(), and mpn_mul_1().

Referenced by mpn_mul_n(), mpn_sqr(), and mpz_mul().

Here is the call graph for this function:

Here is the caller graph for this function:

mp_limb_t mpn_mul_1 ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_limb_t   
)

References gmp_umul_ppmm.

Referenced by mpn_mul(), and mpz_mul_ui().

Here is the caller graph for this function:

void mpn_mul_n ( mp_ptr  ,
mp_srcptr  ,
mp_srcptr  ,
mp_size_t   
)

References mpn_mul().

Here is the call graph for this function:

int mpn_perfect_square_p ( mp_srcptr  ,
mp_size_t   
)

References mpz_roinit_n(), mpz_root(), and NULL.

Here is the call graph for this function:

mp_bitcnt_t mpn_popcount ( mp_srcptr  ,
mp_size_t   
)

Referenced by mpz_popcount().

Here is the caller graph for this function:

mp_limb_t mpn_rshift ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
unsigned  int 
)

References GMP_LIMB_BITS.

mp_bitcnt_t mpn_scan0 ( mp_srcptr  ,
mp_bitcnt_t   
)

References GMP_LIMB_BITS, and GMP_LIMB_MAX.

mp_bitcnt_t mpn_scan1 ( mp_srcptr  ,
mp_bitcnt_t   
)

References GMP_LIMB_BITS, and GMP_LIMB_MAX.

mp_size_t mpn_set_str ( mp_ptr  ,
const unsigned char *  ,
size_t  ,
int   
)
void mpn_sqr ( mp_ptr  ,
mp_srcptr  ,
mp_size_t   
)

References mpn_mul().

Here is the call graph for this function:

mp_size_t mpn_sqrtrem ( mp_ptr  ,
mp_ptr  ,
mp_srcptr  ,
mp_size_t   
)

References mpn_copyd(), mpz_clear(), mpz_init(), mpz_roinit_n(), mpz_rootrem(), and s.

Here is the call graph for this function:

mp_limb_t mpn_sub ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_srcptr  ,
mp_size_t   
)

References mpn_sub_1(), and mpn_sub_n().

Referenced by mpz_powm().

Here is the call graph for this function:

Here is the caller graph for this function:

mp_limb_t mpn_sub_1 ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_limb_t   
)

Referenced by mpn_sub().

Here is the caller graph for this function:

mp_limb_t mpn_sub_n ( mp_ptr  ,
mp_srcptr  ,
mp_srcptr  ,
mp_size_t   
)

Referenced by mpn_sub().

Here is the caller graph for this function:

mp_limb_t mpn_submul_1 ( mp_ptr  ,
mp_srcptr  ,
mp_size_t  ,
mp_limb_t   
)

References gmp_umul_ppmm.

void mpn_zero ( mp_ptr  ,
mp_size_t   
)
void mpz_abs ( mpz_t  ,
const mpz_t   
)

References GMP_ABS, and mpz_set().

Referenced by mpz_gcd(), mpz_gcd_ui(), mpz_gcdext(), mpz_lcm(), mpz_lcm_ui(), and mpz_powm().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_add ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

Referenced by interval_map_decompose(), mpz_addmul(), mpz_addmul_ui(), mpz_gcdext(), mpz_invert(), mpz_rootrem(), and range_expr_value_high().

Here is the caller graph for this function:

void mpz_add_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)
void mpz_addmul ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References mpz_add(), mpz_clear(), mpz_init(), and mpz_mul().

Here is the call graph for this function:

void mpz_addmul_ui ( mpz_t  ,
const mpz_t  ,
unsigned long  int 
)

References mpz_add(), mpz_clear(), mpz_init(), and mpz_mul_ui().

Here is the call graph for this function:

void mpz_and ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_ABS, MP_SIZE_T_SWAP, MPZ_REALLOC, MPZ_SRCPTR_SWAP, and rx().

Referenced by constant_expr_splice(), and interval_map_decompose().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_bin_uiui ( mpz_t  ,
unsigned  long,
unsigned  long 
)

References mpz_clear(), mpz_divexact(), mpz_fac_ui(), mpz_init(), mpz_mul_ui(), and mpz_set_ui().

Here is the call graph for this function:

void mpz_cdiv_q ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_CEIL, and NULL.

void mpz_cdiv_q_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)

References GMP_DIV_CEIL.

unsigned long mpz_cdiv_q_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_DIV_CEIL, and NULL.

void mpz_cdiv_qr ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_CEIL.

unsigned long mpz_cdiv_qr_ui ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_DIV_CEIL.

void mpz_cdiv_r ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_CEIL, and NULL.

void mpz_cdiv_r_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)

References GMP_DIV_CEIL.

unsigned long mpz_cdiv_r_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_DIV_CEIL, and NULL.

unsigned long mpz_cdiv_ui ( const mpz_t  ,
unsigned  long 
)

References GMP_DIV_CEIL, and NULL.

void mpz_clrbit ( mpz_t  ,
mp_bitcnt_t   
)

References mpz_tstbit().

Here is the call graph for this function:

int mpz_cmp ( const mpz_t  ,
const mpz_t   
)

References mpn_cmp().

Referenced by mpz_congruent_p(), mpz_gcd(), mpz_gcdext(), and mpz_probab_prime_p().

Here is the call graph for this function:

Here is the caller graph for this function:

int mpz_cmp_d ( const mpz_t  ,
double   
)

References mpz_cmpabs_d().

Here is the call graph for this function:

int mpz_cmp_si ( const mpz_t  ,
long   
)

References GMP_NEG_CAST, and mpz_cmp_ui().

Here is the call graph for this function:

int mpz_cmp_ui ( const mpz_t  ,
unsigned  long 
)

Referenced by interval_map_decompose(), mpz_cmp_si(), and mpz_invert().

Here is the caller graph for this function:

int mpz_cmpabs ( const mpz_t  ,
const mpz_t   
)

References GMP_ABS.

Referenced by mpz_gcdext(), and mpz_rootrem().

Here is the caller graph for this function:

int mpz_cmpabs_d ( const mpz_t  ,
double   
)

References GMP_ABS, and GMP_LIMB_HIGHBIT.

Referenced by mpz_cmp_d().

Here is the caller graph for this function:

int mpz_cmpabs_ui ( const mpz_t  ,
unsigned  long 
)

References GMP_ABS.

Referenced by mpz_invert(), mpz_probab_prime_p(), and mpz_rootrem().

Here is the caller graph for this function:

void mpz_com ( mpz_t  ,
const mpz_t   
)

References mpz_neg(), and mpz_sub_ui().

Here is the call graph for this function:

void mpz_combit ( mpz_t  ,
mp_bitcnt_t   
)

References mpz_tstbit().

Here is the call graph for this function:

int mpz_congruent_p ( const mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References mpz_clear(), mpz_cmp(), mpz_divisible_p(), mpz_init(), mpz_sgn(), and mpz_sub().

Here is the call graph for this function:

void mpz_divexact ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References gmp_assert_nocarry, GMP_DIV_TRUNC, and NULL.

Referenced by mpz_bin_uiui(), mpz_gcdext(), and mpz_lcm().

Here is the caller graph for this function:

void mpz_divexact_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References gmp_assert_nocarry, GMP_DIV_TRUNC, and NULL.

Referenced by mpz_gcdext().

Here is the caller graph for this function:

int mpz_divisible_p ( const mpz_t  ,
const mpz_t   
)

References GMP_DIV_TRUNC, and NULL.

Referenced by mpz_congruent_p().

Here is the caller graph for this function:

int mpz_divisible_ui_p ( const mpz_t  ,
unsigned  long 
)

References GMP_DIV_TRUNC, and NULL.

void* mpz_export ( void *  ,
size_t *  ,
int  ,
size_t  ,
int  ,
size_t  ,
const mpz_t   
)

References bytes, GMP_ABS, gmp_xalloc, and size.

Referenced by mpz_export_data().

Here is the caller graph for this function:

void mpz_fac_ui ( mpz_t  ,
unsigned  long 
)

References mpz_mul_ui(), and mpz_set_ui().

Referenced by mpz_bin_uiui().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_fdiv_q ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_FLOOR, and NULL.

void mpz_fdiv_q_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)
unsigned long mpz_fdiv_q_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References NULL.

void mpz_fdiv_qr ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_FLOOR.

unsigned long mpz_fdiv_qr_ui ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
unsigned  long 
)
void mpz_fdiv_r ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_FLOOR, and NULL.

void mpz_fdiv_r_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)
unsigned long mpz_fdiv_r_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References NULL.

unsigned long mpz_fdiv_ui ( const mpz_t  ,
unsigned  long 
)

References NULL.

int mpz_fits_slong_p ( const mpz_t  )

References GMP_LIMB_HIGHBIT.

int mpz_fits_ulong_p ( const mpz_t  )
void mpz_gcd ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_MIN, mpz_abs(), mpz_clear(), mpz_cmp(), mpz_init(), mpz_mul_2exp(), mpz_set_ui(), mpz_sub(), mpz_swap(), mpz_tdiv_r(), and mpz_tdiv_ui().

Referenced by mpz_lcm().

Here is the call graph for this function:

Here is the caller graph for this function:

unsigned long mpz_gcd_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_ABS, mpz_abs(), mpz_set_ui(), and NULL.

Referenced by mpz_lcm_ui(), and mpz_probab_prime_p().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_gcdext ( mpz_t  ,
mpz_t  ,
mpz_t  ,
const mpz_t  ,
const mpz_t   
)
double mpz_get_d ( const mpz_t  )

References GMP_ABS, and GMP_LIMB_HIGHBIT.

long int mpz_get_si ( const mpz_t  )

References GMP_LIMB_HIGHBIT.

char* mpz_get_str ( char *  ,
int  ,
const mpz_t   
)

References GMP_ABS, gmp_free, gmp_xalloc, mpn_copyi(), mpz_sizeinbase(), and NULL.

Referenced by mpz_out_str(), and mpz_printf().

Here is the call graph for this function:

Here is the caller graph for this function:

unsigned long int mpz_get_ui ( const mpz_t  )
mp_limb_t mpz_getlimbn ( const mpz_t  ,
mp_size_t   
)

References GMP_ABS.

mp_bitcnt_t mpz_hamdist ( const mpz_t  ,
const mpz_t   
)

References MPN_SRCPTR_SWAP.

void mpz_import ( mpz_t  ,
size_t  ,
int  ,
size_t  ,
int  ,
size_t  ,
const void *   
)

References bytes, MPZ_REALLOC, and size.

Referenced by mpz_import_data().

Here is the caller graph for this function:

void mpz_init2 ( mpz_t  ,
mp_bitcnt_t   
)

References GMP_LIMB_BITS.

Referenced by constant_expr_alloc(), constant_expr_splice(), mpz_init_bitmask(), mpz_mul(), and mpz_rootrem().

Here is the caller graph for this function:

void mpz_init_set ( mpz_t  ,
const mpz_t   
)

References mpz_init(), and mpz_set().

Here is the call graph for this function:

void mpz_init_set_d ( mpz_t  ,
double   
)

References mpz_init(), and mpz_set_d().

Here is the call graph for this function:

void mpz_init_set_si ( mpz_t  ,
signed long  int 
)

References mpz_init(), and mpz_set_si().

Here is the call graph for this function:

int mpz_init_set_str ( mpz_t  ,
const char *  ,
int   
)

References mpz_init(), and mpz_set_str().

Here is the call graph for this function:

void mpz_init_set_ui ( mpz_t  ,
unsigned long  int 
)

References mpz_init(), and mpz_set_ui().

Referenced by mpz_pow_ui(), mpz_powm(), mpz_powm_ui(), and mpz_ui_pow_ui().

Here is the call graph for this function:

Here is the caller graph for this function:

int mpz_invert ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References mpz_add(), mpz_clear(), mpz_cmp_ui(), mpz_cmpabs_ui(), mpz_gcdext(), mpz_init(), mpz_sub(), mpz_swap(), and NULL.

Referenced by mpz_powm().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_ior ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_ABS, MP_SIZE_T_SWAP, MPZ_REALLOC, mpz_set(), MPZ_SRCPTR_SWAP, and rx().

Here is the call graph for this function:

void mpz_lcm ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References __mpz_struct::_mp_size, mpz_abs(), mpz_clear(), mpz_divexact(), mpz_gcd(), mpz_init(), and mpz_mul().

Here is the call graph for this function:

void mpz_lcm_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References mpz_abs(), mpz_gcd_ui(), mpz_mul_ui(), and NULL.

Here is the call graph for this function:

void mpz_limbs_finish ( mpz_t  ,
mp_size_t   
)

References GMP_ABS.

Referenced by mpz_roinit_n().

Here is the caller graph for this function:

mp_ptr mpz_limbs_modify ( mpz_t  ,
mp_size_t   
)

References MPZ_REALLOC.

Referenced by mpz_limbs_write().

Here is the caller graph for this function:

mp_srcptr mpz_limbs_read ( mpz_srcptr  )

References __mpz_struct::_mp_d.

mp_ptr mpz_limbs_write ( mpz_t  ,
mp_size_t   
)

References mpz_limbs_modify().

Here is the call graph for this function:

void mpz_mod ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_CEIL, GMP_DIV_FLOOR, and NULL.

unsigned long mpz_mod_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References NULL.

void mpz_mul ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References __mpz_struct::_mp_size, GMP_ABS, GMP_LIMB_BITS, mpn_mul(), mpz_clear(), mpz_init2(), and mpz_swap().

Referenced by mpz_addmul(), mpz_lcm(), mpz_pow_ui(), mpz_powm(), and mpz_submul().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_mul_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)

References GMP_ABS, GMP_LIMB_BITS, mpn_copyd(), mpn_lshift(), and MPZ_REALLOC.

Referenced by mpz_gcd(), mpz_gcdext(), and mpz_lshift_ui().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_mul_si ( mpz_t  ,
const mpz_t  ,
long  int 
)

References GMP_NEG_CAST, mpz_mul_ui(), and mpz_neg().

Here is the call graph for this function:

void mpz_mul_ui ( mpz_t  ,
const mpz_t  ,
unsigned long  int 
)

References GMP_ABS, mpn_mul_1(), and MPZ_REALLOC.

Referenced by mpz_addmul_ui(), mpz_bin_uiui(), mpz_fac_ui(), mpz_lcm_ui(), mpz_mul_si(), mpz_rootrem(), and mpz_submul_ui().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_neg ( mpz_t  ,
const mpz_t   
)

References mpz_set().

Referenced by mpz_com(), mpz_gcdext(), mpz_mul_si(), and mpz_rootrem().

Here is the call graph for this function:

Here is the caller graph for this function:

int mpz_perfect_square_p ( const mpz_t  )

References mpz_root(), and NULL.

Here is the call graph for this function:

mp_bitcnt_t mpz_popcount ( const mpz_t  )

References mpn_popcount().

Referenced by bitmask_expr_to_binops().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_pow_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_ULONG_HIGHBIT, mpz_clear(), mpz_init_set_ui(), mpz_mul(), and mpz_swap().

Referenced by mpz_rootrem(), and mpz_ui_pow_ui().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_powm ( mpz_t  ,
const mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_ABS, gmp_assert_nocarry, gmp_free, GMP_LIMB_HIGHBIT, mpn_lshift(), mpn_sub(), mpz_abs(), mpz_clear(), mpz_init(), mpz_init_set_ui(), mpz_invert(), mpz_mul(), MPZ_REALLOC, mpz_set_ui(), mpz_swap(), NULL, and gmp_div_inverse::shift.

Referenced by mpz_powm_ui().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_powm_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long,
const mpz_t   
)

References mpz_clear(), mpz_init_set_ui(), and mpz_powm().

Here is the call graph for this function:

int mpz_probab_prime_p ( const mpz_t  ,
int   
)
void mpz_realloc2 ( mpz_t  ,
mp_bitcnt_t   
)

References GMP_LIMB_BITS.

mpz_srcptr mpz_roinit_n ( mpz_t  ,
mp_srcptr  ,
mp_size_t   
)

References __mpz_struct::_mp_alloc, and mpz_limbs_finish().

Referenced by mpn_perfect_square_p(), and mpn_sqrtrem().

Here is the call graph for this function:

Here is the caller graph for this function:

int mpz_root ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References mpz_clear(), mpz_init(), and mpz_rootrem().

Referenced by mpn_perfect_square_p(), and mpz_perfect_square_p().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_rootrem ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
unsigned  long 
)
mp_bitcnt_t mpz_scan0 ( const mpz_t  ,
mp_bitcnt_t   
)

References GMP_ABS, GMP_LIMB_BITS, GMP_LIMB_MAX, and mpn_zero_p.

Referenced by interval_map_decompose().

Here is the caller graph for this function:

mp_bitcnt_t mpz_scan1 ( const mpz_t  ,
mp_bitcnt_t   
)

References GMP_ABS, GMP_LIMB_BITS, GMP_LIMB_MAX, and mpn_zero_p.

Referenced by bitmask_expr_to_binops(), and mpz_probab_prime_p().

Here is the caller graph for this function:

void mpz_set ( mpz_t  ,
const mpz_t   
)

References GMP_ABS, mpn_copyi(), and MPZ_REALLOC.

Referenced by constant_expr_splice(), interval_map_decompose(), mpz_abs(), mpz_init_set(), mpz_ior(), mpz_neg(), mpz_rootrem(), mpz_xor(), range_expr_value_high(), and range_expr_value_low().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_set_d ( mpz_t  ,
double   
)

References GMP_LIMB_HIGHBIT, and MPZ_REALLOC.

Referenced by mpz_init_set_d().

Here is the caller graph for this function:

void mpz_set_si ( mpz_t  ,
signed long  int 
)

References GMP_NEG_CAST, and mpz_set_ui().

Referenced by mpz_gcdext(), and mpz_init_set_si().

Here is the call graph for this function:

Here is the caller graph for this function:

int mpz_set_str ( mpz_t  ,
const char *  ,
int   
)

References dp, mpn_base_info::exp, gmp_free, gmp_xalloc, and MPZ_REALLOC.

Referenced by mpz_init_set_str().

Here is the caller graph for this function:

void mpz_set_ui ( mpz_t  ,
unsigned long  int 
)
void mpz_setbit ( mpz_t  ,
mp_bitcnt_t   
)

References mpz_tstbit().

Referenced by mpz_bitmask(), mpz_gcdext(), and mpz_rootrem().

Here is the call graph for this function:

Here is the caller graph for this function:

int mpz_sgn ( const mpz_t  )

Referenced by mpz_congruent_p(), and mpz_gcdext().

Here is the caller graph for this function:

size_t mpz_size ( const mpz_t  )

References GMP_ABS.

size_t mpz_sizeinbase ( const mpz_t  ,
int   
)

References GMP_ABS, gmp_free, and mpn_copyi().

Referenced by mpz_get_str(), mpz_printf(), and mpz_rootrem().

Here is the call graph for this function:

Here is the caller graph for this function:

void mpz_sqrt ( mpz_t  ,
const mpz_t   
)

References mpz_rootrem(), and NULL.

Here is the call graph for this function:

void mpz_sqrtrem ( mpz_t  ,
mpz_t  ,
const mpz_t   
)

References mpz_rootrem().

Here is the call graph for this function:

void mpz_sub ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

Referenced by interval_map_decompose(), mpz_congruent_p(), mpz_gcd(), mpz_gcdext(), mpz_invert(), mpz_rootrem(), mpz_submul(), and mpz_submul_ui().

Here is the caller graph for this function:

void mpz_sub_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

Referenced by interval_map_decompose(), mpz_bitmask(), and mpz_com().

Here is the caller graph for this function:

void mpz_submul ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References mpz_clear(), mpz_init(), mpz_mul(), and mpz_sub().

Here is the call graph for this function:

void mpz_submul_ui ( mpz_t  ,
const mpz_t  ,
unsigned long  int 
)

References mpz_clear(), mpz_init(), mpz_mul_ui(), and mpz_sub().

Here is the call graph for this function:

void mpz_swap ( mpz_t  ,
mpz_t   
)

References MP_PTR_SWAP, and MP_SIZE_T_SWAP.

Referenced by mpz_gcd(), mpz_gcdext(), mpz_invert(), mpz_mul(), mpz_pow_ui(), mpz_powm(), and mpz_rootrem().

Here is the caller graph for this function:

void mpz_tdiv_q ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_TRUNC, and NULL.

Referenced by mpz_rootrem().

Here is the caller graph for this function:

void mpz_tdiv_q_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)

References GMP_DIV_TRUNC.

Referenced by mpz_probab_prime_p(), mpz_rootrem(), and mpz_rshift_ui().

Here is the caller graph for this function:

unsigned long mpz_tdiv_q_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_DIV_TRUNC, and NULL.

Referenced by mpz_rootrem().

Here is the caller graph for this function:

void mpz_tdiv_qr ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_TRUNC.

Referenced by mpz_gcdext().

Here is the caller graph for this function:

unsigned long mpz_tdiv_qr_ui ( mpz_t  ,
mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_DIV_TRUNC.

void mpz_tdiv_r ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_DIV_TRUNC, and NULL.

Referenced by mpz_gcd().

Here is the caller graph for this function:

void mpz_tdiv_r_2exp ( mpz_t  ,
const mpz_t  ,
mp_bitcnt_t   
)

References GMP_DIV_TRUNC.

unsigned long mpz_tdiv_r_ui ( mpz_t  ,
const mpz_t  ,
unsigned  long 
)

References GMP_DIV_TRUNC, and NULL.

unsigned long mpz_tdiv_ui ( const mpz_t  ,
unsigned  long 
)

References GMP_DIV_TRUNC, and NULL.

Referenced by mpz_gcd().

Here is the caller graph for this function:

int mpz_tstbit ( const mpz_t  ,
mp_bitcnt_t   
)

References GMP_ABS, GMP_LIMB_BITS, and gmp_div_inverse::shift.

Referenced by mpz_clrbit(), mpz_combit(), and mpz_setbit().

Here is the caller graph for this function:

void mpz_ui_pow_ui ( mpz_t  ,
unsigned  long,
unsigned  long 
)

References mpz_clear(), mpz_init_set_ui(), and mpz_pow_ui().

Here is the call graph for this function:

void mpz_ui_sub ( mpz_t  ,
unsigned  long,
const mpz_t   
)
void mpz_xor ( mpz_t  ,
const mpz_t  ,
const mpz_t   
)

References GMP_ABS, MP_SIZE_T_SWAP, MPZ_REALLOC, mpz_set(), MPZ_SRCPTR_SWAP, and rx().

Here is the call graph for this function:

Variable Documentation

const int mp_bits_per_limb