w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

gmp-impl.h File Reference
#include <limits.h>
#include "config.h"
#include "gmp.h"
#include "gmp-mparam.h"
#include "fib_table.h"
#include "fac_table.h"
#include "mp_bases.h"
#include <inttypes.h>
Include dependency graph for gmp-impl.h:

Go to the source code of this file.

Classes

struct  gmp_pi1_t
 
struct  gmp_pi2_t
 
union  tmp_align_t
 
struct  tmp_reentrant_t
 
struct  gmp_randfnptr_t
 
struct  gmp_primesieve_t
 
struct  fft_table_nk
 
struct  bases
 
union  ieee_double_extract
 
struct  mp_double_limb_t
 
struct  hgcd_matrix1
 
struct  hgcd_matrix
 
struct  gcdext_ctx
 
struct  powers
 
struct  doprnt_params_t
 
struct  gmp_doscan_funs_t
 

Macros

#define DECL_add_n(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
#define DECL_addlsh1_n(name)    DECL_add_n (name)
 
#define DECL_addlsh2_n(name)    DECL_add_n (name)
 
#define DECL_addmul_1(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
#define DECL_addmul_2(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
#define DECL_bdiv_dbm1c(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
#define DECL_cnd_add_n(name)    __GMP_DECLSPEC mp_limb_t name (mp_limb_t, mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
#define DECL_cnd_sub_n(name)    __GMP_DECLSPEC mp_limb_t name (mp_limb_t, mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
#define DECL_com(name)    __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t)
 
#define DECL_copyd(name)    __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t)
 
#define DECL_copyi(name)    DECL_copyd (name)
 
#define DECL_divexact_1(name)    __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
#define DECL_divexact_by3c(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
#define DECL_divrem_1(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
#define DECL_gcd_11(name)    __GMP_DECLSPEC mp_limb_t name (mp_limb_t, mp_limb_t)
 
#define DECL_lshift(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, unsigned)
 
#define DECL_lshiftc(name)    DECL_lshift (name)
 
#define DECL_mod_1(name)    __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t, mp_limb_t)
 
#define DECL_mod_1_1p(name)    __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t, mp_limb_t, const mp_limb_t [])
 
#define DECL_mod_1_1p_cps(name)    __GMP_DECLSPEC void name (mp_limb_t cps[], mp_limb_t b)
 
#define DECL_mod_1s_2p(name)    DECL_mod_1_1p (name)
 
#define DECL_mod_1s_2p_cps(name)    DECL_mod_1_1p_cps (name)
 
#define DECL_mod_1s_4p(name)    DECL_mod_1_1p (name)
 
#define DECL_mod_1s_4p_cps(name)    DECL_mod_1_1p_cps (name)
 
#define DECL_mod_34lsub1(name)    __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t)
 
#define DECL_modexact_1c_odd(name)    __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
#define DECL_mul_1(name)    DECL_addmul_1 (name)
 
#define DECL_mul_basecase(name)    __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
#define DECL_mullo_basecase(name)    __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
#define DECL_preinv_divrem_1(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t, int)
 
#define DECL_preinv_mod_1(name)    __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
#define DECL_redc_1(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
#define DECL_redc_2(name)    __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
#define DECL_rshift(name)    DECL_lshift (name)
 
#define DECL_sqr_basecase(name)    __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t)
 
#define DECL_sub_n(name)    DECL_add_n (name)
 
#define DECL_sublsh1_n(name)    DECL_add_n (name)
 
#define DECL_submul_1(name)    DECL_addmul_1 (name)
 
#define WANT_TMP_DEBUG   0
 
#define GMP_LIMB_BYTES   SIZEOF_MP_LIMB_T
 
#define BITS_PER_ULONG   (8 * SIZEOF_UNSIGNED_LONG)
 
#define ATTRIBUTE_CONST
 
#define ATTRIBUTE_NORETURN
 
#define ATTRIBUTE_MALLOC
 
#define va_copy(dst, src)    do { memcpy (&(dst), &(src), sizeof (va_list)); } while (0)
 
#define __TMP_ALIGN   sizeof (union tmp_align_t)
 
#define ROUND_UP_MULTIPLE(a, m)
 
#define TMP_SDECL
 
#define TMP_DECL   struct tmp_reentrant_t *__tmp_marker
 
#define TMP_SMARK
 
#define TMP_MARK   __tmp_marker = 0
 
#define TMP_SALLOC(n)   alloca(n)
 
#define TMP_BALLOC(n)   __gmp_tmp_reentrant_alloc (&__tmp_marker, n)
 
#define TMP_ALLOC(n)    (LIKELY ((n) <= 0x7f00) ? TMP_SALLOC(n) : TMP_BALLOC(n))
 
#define TMP_SFREE
 
#define TMP_FREE
 
#define TMP_ALLOC_TYPE(n, type)   ((type *) TMP_ALLOC ((n) * sizeof (type)))
 
#define TMP_SALLOC_TYPE(n, type)   ((type *) TMP_SALLOC ((n) * sizeof (type)))
 
#define TMP_BALLOC_TYPE(n, type)   ((type *) TMP_BALLOC ((n) * sizeof (type)))
 
#define TMP_ALLOC_LIMBS(n)   TMP_ALLOC_TYPE(n,mp_limb_t)
 
#define TMP_SALLOC_LIMBS(n)   TMP_SALLOC_TYPE(n,mp_limb_t)
 
#define TMP_BALLOC_LIMBS(n)   TMP_BALLOC_TYPE(n,mp_limb_t)
 
#define TMP_ALLOC_MP_PTRS(n)   TMP_ALLOC_TYPE(n,mp_ptr)
 
#define TMP_SALLOC_MP_PTRS(n)   TMP_SALLOC_TYPE(n,mp_ptr)
 
#define TMP_BALLOC_MP_PTRS(n)   TMP_BALLOC_TYPE(n,mp_ptr)
 
#define TMP_ALLOC_LIMBS_2(xp, xsize, yp, ysize)
 
#define TMP_ALLOC_LIMBS_3(xp, xsize, yp, ysize, zp, zsize)
 
#define CRAY_Pragma(str)   __GMP_CRAY_Pragma(str)
 
#define MPN_CMP(result, xp, yp, size)   __GMPN_CMP(result, xp, yp, size)
 
#define LIKELY(cond)   __GMP_LIKELY(cond)
 
#define UNLIKELY(cond)   __GMP_UNLIKELY(cond)
 
#define ABS(x)   ((x) >= 0 ? (x) : -(x))
 
#define NEG_CAST(T, x)   (- (__GMP_CAST (T, (x) + 1) - 1))
 
#define ABS_CAST(T, x)   ((x) >= 0 ? __GMP_CAST (T, x) : NEG_CAST (T,x))
 
#define MIN(l, o)   ((l) < (o) ? (l) : (o))
 
#define MAX(h, i)   ((h) > (i) ? (h) : (i))
 
#define numberof(x)   (sizeof (x) / sizeof ((x)[0]))
 
#define SIZ(x)   ((x)->_mp_size)
 
#define ABSIZ(x)   ABS (SIZ (x))
 
#define PTR(x)   ((x)->_mp_d)
 
#define EXP(x)   ((x)->_mp_exp)
 
#define PREC(x)   ((x)->_mp_prec)
 
#define ALLOC(x)   ((x)->_mp_alloc)
 
#define NUM(x)   mpq_numref(x)
 
#define DEN(x)   mpq_denref(x)
 
#define POW2_P(n)   (((n) & ((n) - 1)) == 0)
 
#define LOG2C(n)
 
#define MP_LIMB_T_MAX   (~ (mp_limb_t) 0)
 
#define ULONG_HIGHBIT   (ULONG_MAX ^ ((unsigned long) ULONG_MAX >> 1))
 
#define UINT_HIGHBIT   (UINT_MAX ^ ((unsigned) UINT_MAX >> 1))
 
#define USHRT_HIGHBIT   (USHRT_MAX ^ ((unsigned short) USHRT_MAX >> 1))
 
#define GMP_LIMB_HIGHBIT   (MP_LIMB_T_MAX ^ (MP_LIMB_T_MAX >> 1))
 
#define MP_SIZE_T_MAX   LONG_MAX
 
#define MP_SIZE_T_MIN   LONG_MIN
 
#define MP_EXP_T_MAX   MP_SIZE_T_MAX
 
#define MP_EXP_T_MIN   MP_SIZE_T_MIN
 
#define LONG_HIGHBIT   LONG_MIN
 
#define INT_HIGHBIT   INT_MIN
 
#define SHRT_HIGHBIT   SHRT_MIN
 
#define GMP_NUMB_HIGHBIT   (CNST_LIMB(1) << (GMP_NUMB_BITS-1))
 
#define GMP_NAIL_LOWBIT   CNST_LIMB(0)
 
#define MP_LIMB_T_SWAP(x, y)
 
#define MP_SIZE_T_SWAP(x, y)
 
#define MP_PTR_SWAP(x, y)
 
#define MP_SRCPTR_SWAP(x, y)
 
#define MPN_PTR_SWAP(xp, xs, yp, ys)
 
#define MPN_SRCPTR_SWAP(xp, xs, yp, ys)
 
#define MPZ_PTR_SWAP(x, y)
 
#define MPZ_SRCPTR_SWAP(x, y)
 
#define MPQ_PTR_SWAP(x, y)
 
#define MPQ_SRCPTR_SWAP(x, y)
 
#define __GMP_ALLOCATE_FUNC_TYPE(n, type)    ((type *) (*__gmp_allocate_func) ((n) * sizeof (type)))
 
#define __GMP_ALLOCATE_FUNC_LIMBS(n)   __GMP_ALLOCATE_FUNC_TYPE (n, mp_limb_t)
 
#define __GMP_REALLOCATE_FUNC_TYPE(p, old_size, new_size, type)
 
#define __GMP_REALLOCATE_FUNC_LIMBS(p, old_size, new_size)    __GMP_REALLOCATE_FUNC_TYPE(p, old_size, new_size, mp_limb_t)
 
#define __GMP_FREE_FUNC_TYPE(p, n, type)   (*__gmp_free_func) (p, (n) * sizeof (type))
 
#define __GMP_FREE_FUNC_LIMBS(p, n)   __GMP_FREE_FUNC_TYPE (p, n, mp_limb_t)
 
#define __GMP_REALLOCATE_FUNC_MAYBE(ptr, oldsize, newsize)
 
#define __GMP_REALLOCATE_FUNC_MAYBE_TYPE(ptr, oldsize, newsize, type)
 
#define __builtin_constant_p(x)   0
 
#define USE_LEADING_REGPARM   0
 
#define REGPARM_2_1(a, b, x)   a,b,x
 
#define REGPARM_3_1(a, b, c, x)   a,b,c,x
 
#define REGPARM_ATTR(n)
 
#define ASM_L(name)   LSYM_PREFIX "asm_%=_" #name
 
#define mpz_aorsmul_1(w, u, v, sub)   __gmpz_aorsmul_1 (REGPARM_3_1 (w, u, v, sub))
 
#define mpz_n_pow_ui   __gmpz_n_pow_ui
 
#define mpn_addmul_1c   __MPN(addmul_1c)
 
#define mpn_addmul_2   __MPN(addmul_2)
 
#define mpn_addmul_3   __MPN(addmul_3)
 
#define mpn_addmul_4   __MPN(addmul_4)
 
#define mpn_addmul_5   __MPN(addmul_5)
 
#define mpn_addmul_6   __MPN(addmul_6)
 
#define mpn_addmul_7   __MPN(addmul_7)
 
#define mpn_addmul_8   __MPN(addmul_8)
 
#define mpn_addmul_2s   __MPN(addmul_2s)
 
#define mpn_addlsh1_n   __MPN(addlsh1_n)
 
#define mpn_addlsh1_nc   __MPN(addlsh1_nc)
 
#define mpn_addlsh1_n_ip1   __MPN(addlsh1_n_ip1)
 
#define mpn_addlsh1_nc_ip1   __MPN(addlsh1_nc_ip1)
 
#define mpn_addlsh2_n   __MPN(addlsh2_n)
 
#define mpn_addlsh2_nc   __MPN(addlsh2_nc)
 
#define mpn_addlsh2_n_ip1   __MPN(addlsh2_n_ip1)
 
#define mpn_addlsh2_nc_ip1   __MPN(addlsh2_nc_ip1)
 
#define mpn_addlsh_n   __MPN(addlsh_n)
 
#define mpn_addlsh_nc   __MPN(addlsh_nc)
 
#define mpn_addlsh_n_ip1   __MPN(addlsh_n_ip1)
 
#define mpn_addlsh_nc_ip1   __MPN(addlsh_nc_ip1)
 
#define mpn_sublsh1_n   __MPN(sublsh1_n)
 
#define mpn_sublsh1_nc   __MPN(sublsh1_nc)
 
#define mpn_sublsh1_n_ip1   __MPN(sublsh1_n_ip1)
 
#define mpn_sublsh1_nc_ip1   __MPN(sublsh1_nc_ip1)
 
#define mpn_sublsh2_n   __MPN(sublsh2_n)
 
#define mpn_sublsh2_nc   __MPN(sublsh2_nc)
 
#define mpn_sublsh2_n_ip1   __MPN(sublsh2_n_ip1)
 
#define mpn_sublsh2_nc_ip1   __MPN(sublsh2_nc_ip1)
 
#define mpn_sublsh_n   __MPN(sublsh_n)
 
#define mpn_sublsh_nc   __MPN(sublsh_nc)
 
#define mpn_sublsh_n_ip1   __MPN(sublsh_n_ip1)
 
#define mpn_sublsh_nc_ip1   __MPN(sublsh_nc_ip1)
 
#define mpn_rsblsh1_n   __MPN(rsblsh1_n)
 
#define mpn_rsblsh1_nc   __MPN(rsblsh1_nc)
 
#define mpn_rsblsh2_n   __MPN(rsblsh2_n)
 
#define mpn_rsblsh2_nc   __MPN(rsblsh2_nc)
 
#define mpn_rsblsh_n   __MPN(rsblsh_n)
 
#define mpn_rsblsh_nc   __MPN(rsblsh_nc)
 
#define mpn_rsh1add_n   __MPN(rsh1add_n)
 
#define mpn_rsh1add_nc   __MPN(rsh1add_nc)
 
#define mpn_rsh1sub_n   __MPN(rsh1sub_n)
 
#define mpn_rsh1sub_nc   __MPN(rsh1sub_nc)
 
#define mpn_lshiftc   __MPN(lshiftc)
 
#define mpn_add_err1_n   __MPN(add_err1_n)
 
#define mpn_add_err2_n   __MPN(add_err2_n)
 
#define mpn_add_err3_n   __MPN(add_err3_n)
 
#define mpn_sub_err1_n   __MPN(sub_err1_n)
 
#define mpn_sub_err2_n   __MPN(sub_err2_n)
 
#define mpn_sub_err3_n   __MPN(sub_err3_n)
 
#define mpn_add_n_sub_n   __MPN(add_n_sub_n)
 
#define mpn_add_n_sub_nc   __MPN(add_n_sub_nc)
 
#define mpn_addaddmul_1msb0   __MPN(addaddmul_1msb0)
 
#define mpn_divrem_1c   __MPN(divrem_1c)
 
#define mpn_dump   __MPN(dump)
 
#define mpn_fib2_ui   __MPN(fib2_ui)
 
#define mpn_fib2m   __MPN(fib2m)
 
#define mpn_strongfibo   __MPN(strongfibo)
 
#define __clz_tab   __MPN(clz_tab)
 
#define mpn_udiv_w_sdiv   __MPN(udiv_w_sdiv)
 
#define mpn_jacobi_base   __MPN(jacobi_base)
 
#define mpn_jacobi_2   __MPN(jacobi_2)
 
#define mpn_jacobi_n   __MPN(jacobi_n)
 
#define mpn_mod_1c   __MPN(mod_1c)
 
#define mpn_mul_1c   __MPN(mul_1c)
 
#define mpn_mul_2   __MPN(mul_2)
 
#define mpn_mul_3   __MPN(mul_3)
 
#define mpn_mul_4   __MPN(mul_4)
 
#define mpn_mul_5   __MPN(mul_5)
 
#define mpn_mul_6   __MPN(mul_6)
 
#define mpn_mul_basecase   __MPN(mul_basecase)
 
#define mpn_mullo_n   __MPN(mullo_n)
 
#define mpn_mullo_basecase   __MPN(mullo_basecase)
 
#define mpn_sqr_basecase   __MPN(sqr_basecase)
 
#define mpn_sqrlo   __MPN(sqrlo)
 
#define mpn_sqrlo_basecase   __MPN(sqrlo_basecase)
 
#define mpn_mulmid_basecase   __MPN(mulmid_basecase)
 
#define mpn_mulmid_n   __MPN(mulmid_n)
 
#define mpn_mulmid   __MPN(mulmid)
 
#define mpn_submul_1c   __MPN(submul_1c)
 
#define mpn_redc_1   __MPN(redc_1)
 
#define mpn_redc_2   __MPN(redc_2)
 
#define mpn_redc_n   __MPN(redc_n)
 
#define mpn_mod_1_1p_cps   __MPN(mod_1_1p_cps)
 
#define mpn_mod_1_1p   __MPN(mod_1_1p)
 
#define mpn_mod_1s_2p_cps   __MPN(mod_1s_2p_cps)
 
#define mpn_mod_1s_2p   __MPN(mod_1s_2p)
 
#define mpn_mod_1s_3p_cps   __MPN(mod_1s_3p_cps)
 
#define mpn_mod_1s_3p   __MPN(mod_1s_3p)
 
#define mpn_mod_1s_4p_cps   __MPN(mod_1s_4p_cps)
 
#define mpn_mod_1s_4p   __MPN(mod_1s_4p)
 
#define mpn_bc_mulmod_bnm1   __MPN(bc_mulmod_bnm1)
 
#define mpn_mulmod_bnm1   __MPN(mulmod_bnm1)
 
#define mpn_mulmod_bnm1_next_size   __MPN(mulmod_bnm1_next_size)
 
#define mpn_sqrmod_bnm1   __MPN(sqrmod_bnm1)
 
#define mpn_sqrmod_bnm1_next_size   __MPN(sqrmod_bnm1_next_size)
 
#define RNG_FNPTR(rstate)   ((rstate)->_mp_algdata._mp_lc)
 
#define RNG_STATE(rstate)   ((rstate)->_mp_seed->_mp_d)
 
#define _gmp_rand(rp, state, bits)
 
#define RANDS
 
#define RANDS_CLEAR()
 
#define ABOVE_THRESHOLD(size, thresh)
 
#define BELOW_THRESHOLD(size, thresh)   (! ABOVE_THRESHOLD (size, thresh))
 
#define MPN_TOOM22_MUL_MINSIZE   6
 
#define MPN_TOOM2_SQR_MINSIZE   4
 
#define MPN_TOOM33_MUL_MINSIZE   17
 
#define MPN_TOOM3_SQR_MINSIZE   17
 
#define MPN_TOOM44_MUL_MINSIZE   30
 
#define MPN_TOOM4_SQR_MINSIZE   30
 
#define MPN_TOOM6H_MUL_MINSIZE   46
 
#define MPN_TOOM6_SQR_MINSIZE   46
 
#define MPN_TOOM8H_MUL_MINSIZE   86
 
#define MPN_TOOM8_SQR_MINSIZE   86
 
#define MPN_TOOM32_MUL_MINSIZE   10
 
#define MPN_TOOM42_MUL_MINSIZE   10
 
#define MPN_TOOM43_MUL_MINSIZE   25
 
#define MPN_TOOM53_MUL_MINSIZE   17
 
#define MPN_TOOM54_MUL_MINSIZE   31
 
#define MPN_TOOM63_MUL_MINSIZE   49
 
#define MPN_TOOM42_MULMID_MINSIZE   4
 
#define mpn_sqr_diagonal   __MPN(sqr_diagonal)
 
#define mpn_sqr_diag_addlsh1   __MPN(sqr_diag_addlsh1)
 
#define mpn_toom_interpolate_5pts   __MPN(toom_interpolate_5pts)
 
#define mpn_toom_interpolate_6pts   __MPN(toom_interpolate_6pts)
 
#define mpn_toom_interpolate_7pts   __MPN(toom_interpolate_7pts)
 
#define mpn_toom_interpolate_8pts   __MPN(toom_interpolate_8pts)
 
#define mpn_toom_interpolate_12pts   __MPN(toom_interpolate_12pts)
 
#define mpn_toom_interpolate_16pts   __MPN(toom_interpolate_16pts)
 
#define mpn_toom_couple_handling   __MPN(toom_couple_handling)
 
#define mpn_toom_eval_dgr3_pm1   __MPN(toom_eval_dgr3_pm1)
 
#define mpn_toom_eval_dgr3_pm2   __MPN(toom_eval_dgr3_pm2)
 
#define mpn_toom_eval_pm1   __MPN(toom_eval_pm1)
 
#define mpn_toom_eval_pm2   __MPN(toom_eval_pm2)
 
#define mpn_toom_eval_pm2exp   __MPN(toom_eval_pm2exp)
 
#define mpn_toom_eval_pm2rexp   __MPN(toom_eval_pm2rexp)
 
#define mpn_toom22_mul   __MPN(toom22_mul)
 
#define mpn_toom32_mul   __MPN(toom32_mul)
 
#define mpn_toom42_mul   __MPN(toom42_mul)
 
#define mpn_toom52_mul   __MPN(toom52_mul)
 
#define mpn_toom62_mul   __MPN(toom62_mul)
 
#define mpn_toom2_sqr   __MPN(toom2_sqr)
 
#define mpn_toom33_mul   __MPN(toom33_mul)
 
#define mpn_toom43_mul   __MPN(toom43_mul)
 
#define mpn_toom53_mul   __MPN(toom53_mul)
 
#define mpn_toom54_mul   __MPN(toom54_mul)
 
#define mpn_toom63_mul   __MPN(toom63_mul)
 
#define mpn_toom3_sqr   __MPN(toom3_sqr)
 
#define mpn_toom44_mul   __MPN(toom44_mul)
 
#define mpn_toom4_sqr   __MPN(toom4_sqr)
 
#define mpn_toom6h_mul   __MPN(toom6h_mul)
 
#define mpn_toom6_sqr   __MPN(toom6_sqr)
 
#define mpn_toom8h_mul   __MPN(toom8h_mul)
 
#define mpn_toom8_sqr   __MPN(toom8_sqr)
 
#define mpn_toom42_mulmid   __MPN(toom42_mulmid)
 
#define mpn_fft_best_k   __MPN(fft_best_k)
 
#define mpn_mul_fft   __MPN(mul_fft)
 
#define mpn_mul_fft_full   __MPN(mul_fft_full)
 
#define mpn_nussbaumer_mul   __MPN(nussbaumer_mul)
 
#define mpn_fft_next_size   __MPN(fft_next_size)
 
#define mpn_div_qr_1n_pi1   __MPN(div_qr_1n_pi1)
 
#define mpn_div_qr_2n_pi1   __MPN(div_qr_2n_pi1)
 
#define mpn_div_qr_2u_pi1   __MPN(div_qr_2u_pi1)
 
#define mpn_sbpi1_div_qr   __MPN(sbpi1_div_qr)
 
#define mpn_sbpi1_div_q   __MPN(sbpi1_div_q)
 
#define mpn_sbpi1_divappr_q   __MPN(sbpi1_divappr_q)
 
#define mpn_dcpi1_div_qr   __MPN(dcpi1_div_qr)
 
#define mpn_dcpi1_div_qr_n   __MPN(dcpi1_div_qr_n)
 
#define mpn_dcpi1_div_q   __MPN(dcpi1_div_q)
 
#define mpn_dcpi1_divappr_q   __MPN(dcpi1_divappr_q)
 
#define mpn_mu_div_qr   __MPN(mu_div_qr)
 
#define mpn_mu_div_qr_itch   __MPN(mu_div_qr_itch)
 
#define mpn_preinv_mu_div_qr   __MPN(preinv_mu_div_qr)
 
#define mpn_preinv_mu_div_qr_itch   __MPN(preinv_mu_div_qr_itch)
 
#define mpn_mu_divappr_q   __MPN(mu_divappr_q)
 
#define mpn_mu_divappr_q_itch   __MPN(mu_divappr_q_itch)
 
#define mpn_mu_div_q   __MPN(mu_div_q)
 
#define mpn_mu_div_q_itch   __MPN(mu_div_q_itch)
 
#define mpn_div_q   __MPN(div_q)
 
#define mpn_invert   __MPN(invert)
 
#define mpn_invert_itch(n)   mpn_invertappr_itch(n)
 
#define mpn_ni_invertappr   __MPN(ni_invertappr)
 
#define mpn_invertappr   __MPN(invertappr)
 
#define mpn_invertappr_itch(n)   (2 * (n))
 
#define mpn_binvert   __MPN(binvert)
 
#define mpn_binvert_itch   __MPN(binvert_itch)
 
#define mpn_bdiv_q_1   __MPN(bdiv_q_1)
 
#define mpn_pi1_bdiv_q_1   __MPN(pi1_bdiv_q_1)
 
#define mpn_sbpi1_bdiv_qr   __MPN(sbpi1_bdiv_qr)
 
#define mpn_sbpi1_bdiv_q   __MPN(sbpi1_bdiv_q)
 
#define mpn_sbpi1_bdiv_r   __MPN(sbpi1_bdiv_r)
 
#define mpn_dcpi1_bdiv_qr   __MPN(dcpi1_bdiv_qr)
 
#define mpn_dcpi1_bdiv_qr_n_itch   __MPN(dcpi1_bdiv_qr_n_itch)
 
#define mpn_dcpi1_bdiv_qr_n   __MPN(dcpi1_bdiv_qr_n)
 
#define mpn_dcpi1_bdiv_q   __MPN(dcpi1_bdiv_q)
 
#define mpn_mu_bdiv_qr   __MPN(mu_bdiv_qr)
 
#define mpn_mu_bdiv_qr_itch   __MPN(mu_bdiv_qr_itch)
 
#define mpn_mu_bdiv_q   __MPN(mu_bdiv_q)
 
#define mpn_mu_bdiv_q_itch   __MPN(mu_bdiv_q_itch)
 
#define mpn_bdiv_qr   __MPN(bdiv_qr)
 
#define mpn_bdiv_qr_itch   __MPN(bdiv_qr_itch)
 
#define mpn_bdiv_q   __MPN(bdiv_q)
 
#define mpn_bdiv_q_itch   __MPN(bdiv_q_itch)
 
#define mpn_divexact   __MPN(divexact)
 
#define mpn_divexact_itch   __MPN(divexact_itch)
 
#define mpn_bdiv_dbm1c   __MPN(bdiv_dbm1c)
 
#define mpn_bdiv_dbm1(dst, src, size, divisor)    mpn_bdiv_dbm1c (dst, src, size, divisor, __GMP_CAST (mp_limb_t, 0))
 
#define mpn_powm   __MPN(powm)
 
#define mpn_powlo   __MPN(powlo)
 
#define mpn_sec_pi1_div_qr   __MPN(sec_pi1_div_qr)
 
#define mpn_sec_pi1_div_r   __MPN(sec_pi1_div_r)
 
#define DIVEXACT_BY3_METHOD   0 /* default to using mpn_bdiv_dbm1c */
 
#define mpn_divexact_by3(dst, src, size)    (3 & mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 3)))
 
#define mpn_divexact_by5(dst, src, size)    (7 & 3 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 5)))
 
#define mpn_divexact_by15(dst, src, size)    (15 & 1 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 15)))
 
#define mpz_divexact_gcd   __gmpz_divexact_gcd
 
#define mpz_prodlimbs   __gmpz_prodlimbs
 
#define mpz_oddfac_1   __gmpz_oddfac_1
 
#define mpz_stronglucas   __gmpz_stronglucas
 
#define mpz_lucas_mod   __gmpz_lucas_mod
 
#define mpz_inp_str_nowhite   __gmpz_inp_str_nowhite
 
#define mpn_divisible_p   __MPN(divisible_p)
 
#define mpn_rootrem   __MPN(rootrem)
 
#define mpn_broot   __MPN(broot)
 
#define mpn_broot_invm1   __MPN(broot_invm1)
 
#define mpn_brootinv   __MPN(brootinv)
 
#define mpn_bsqrt   __MPN(bsqrt)
 
#define mpn_bsqrtinv   __MPN(bsqrtinv)
 
#define MPN_COPY_INCR(dst, src, n)
 
#define MPN_COPY_DECR(dst, src, n)
 
#define MPN_COPY(d, s, n)
 
#define MPN_REVERSE(dst, src, size)
 
#define MPN_FILL(dst, n, f)
 
#define MPN_ZERO(dst, n)
 
#define MPN_NORMALIZE(DST, NLIMBS)
 
#define MPN_NORMALIZE_NOT_ZERO(DST, NLIMBS)
 
#define MPN_STRIP_LOW_ZEROS_NOT_ZERO(ptr, size, low)
 
#define MPZ_TMP_INIT(X, NLIMBS)
 
#define _mpz_newalloc   _mpz_realloc
 
#define MPZ_REALLOC(z, n)
 
#define MPZ_NEWALLOC(z, n)
 
#define MPZ_EQUAL_1_P(z)   (SIZ(z)==1 && PTR(z)[0] == 1)
 
#define MPN_FIB2_SIZE(n)    ((mp_size_t) ((n) / 32 * 23 / GMP_NUMB_BITS) + 4)
 
#define FIB_TABLE(n)   (__gmp_fib_table[(n)+1])
 
#define SIEVESIZE   512 /* FIXME: Allow gmp_init_primesieve to choose */
 
#define gmp_init_primesieve   __gmp_init_primesieve
 
#define gmp_nextprime   __gmp_nextprime
 
#define gmp_primesieve   __gmp_primesieve
 
#define MUL_TOOM22_THRESHOLD   30
 
#define MUL_TOOM33_THRESHOLD   100
 
#define MUL_TOOM44_THRESHOLD   300
 
#define MUL_TOOM6H_THRESHOLD   350
 
#define SQR_TOOM6_THRESHOLD   MUL_TOOM6H_THRESHOLD
 
#define MUL_TOOM8H_THRESHOLD   450
 
#define SQR_TOOM8_THRESHOLD   MUL_TOOM8H_THRESHOLD
 
#define MUL_TOOM32_TO_TOOM43_THRESHOLD   100
 
#define MUL_TOOM32_TO_TOOM53_THRESHOLD   110
 
#define MUL_TOOM42_TO_TOOM53_THRESHOLD   100
 
#define MUL_TOOM42_TO_TOOM63_THRESHOLD   110
 
#define MUL_TOOM43_TO_TOOM54_THRESHOLD   150
 
#define MUL_TOOM22_THRESHOLD_LIMIT   MUL_TOOM22_THRESHOLD
 
#define MUL_TOOM33_THRESHOLD_LIMIT   MUL_TOOM33_THRESHOLD
 
#define MULLO_BASECASE_THRESHOLD_LIMIT   MULLO_BASECASE_THRESHOLD
 
#define SQRLO_BASECASE_THRESHOLD_LIMIT   SQRLO_BASECASE_THRESHOLD
 
#define SQRLO_DC_THRESHOLD_LIMIT   SQRLO_DC_THRESHOLD
 
#define SQR_BASECASE_THRESHOLD   0 /* never use mpn_mul_basecase */
 
#define SQR_TOOM2_THRESHOLD   50
 
#define SQR_TOOM3_THRESHOLD   120
 
#define SQR_TOOM4_THRESHOLD   400
 
#define SQR_TOOM3_THRESHOLD_LIMIT   SQR_TOOM3_THRESHOLD
 
#define MULMID_TOOM42_THRESHOLD   MUL_TOOM22_THRESHOLD
 
#define MULLO_BASECASE_THRESHOLD   0 /* never use mpn_mul_basecase */
 
#define MULLO_DC_THRESHOLD   (2*MUL_TOOM22_THRESHOLD)
 
#define MULLO_MUL_N_THRESHOLD   (2*MUL_FFT_THRESHOLD)
 
#define SQRLO_BASECASE_THRESHOLD   0 /* never use mpn_sqr_basecase */
 
#define SQRLO_DC_THRESHOLD   (MULLO_DC_THRESHOLD)
 
#define SQRLO_SQR_THRESHOLD   (MULLO_MUL_N_THRESHOLD)
 
#define DC_DIV_QR_THRESHOLD   (2*MUL_TOOM22_THRESHOLD)
 
#define DC_DIVAPPR_Q_THRESHOLD   200
 
#define DC_BDIV_QR_THRESHOLD   (2*MUL_TOOM22_THRESHOLD)
 
#define DC_BDIV_Q_THRESHOLD   180
 
#define DIVEXACT_JEB_THRESHOLD   25
 
#define INV_MULMOD_BNM1_THRESHOLD   (4*MULMOD_BNM1_THRESHOLD)
 
#define INV_APPR_THRESHOLD   INV_NEWTON_THRESHOLD
 
#define INV_NEWTON_THRESHOLD   200
 
#define BINV_NEWTON_THRESHOLD   300
 
#define MU_DIVAPPR_Q_THRESHOLD   2000
 
#define MU_DIV_QR_THRESHOLD   2000
 
#define MUPI_DIV_QR_THRESHOLD   200
 
#define MU_BDIV_Q_THRESHOLD   2000
 
#define MU_BDIV_QR_THRESHOLD   2000
 
#define MULMOD_BNM1_THRESHOLD   16
 
#define SQRMOD_BNM1_THRESHOLD   16
 
#define MUL_TO_MULMOD_BNM1_FOR_2NXN_THRESHOLD   (INV_MULMOD_BNM1_THRESHOLD/2)
 
#define REDC_1_TO_REDC_N_THRESHOLD   100
 
#define FFT_FIRST_K   4
 
#define MUL_FFT_MODF_THRESHOLD   (MUL_TOOM33_THRESHOLD * 3)
 
#define SQR_FFT_MODF_THRESHOLD   (SQR_TOOM3_THRESHOLD * 3)
 
#define MUL_FFT_THRESHOLD   (MUL_FFT_MODF_THRESHOLD * 10)
 
#define SQR_FFT_THRESHOLD   (SQR_FFT_MODF_THRESHOLD * 10)
 
#define MUL_FFT_TABLE
 
#define SQR_FFT_TABLE
 
#define FFT_TABLE_ATTRS   static const
 
#define MPN_FFT_TABLE_SIZE   16
 
#define GET_STR_DC_THRESHOLD   18
 
#define GET_STR_PRECOMPUTE_THRESHOLD   35
 
#define SET_STR_DC_THRESHOLD   750
 
#define SET_STR_PRECOMPUTE_THRESHOLD   2000
 
#define FAC_ODD_THRESHOLD   35
 
#define FAC_DSC_THRESHOLD   400
 
#define MPN_OVERLAP_P(xp, xsize, yp, ysize)    ((xp) + (xsize) > (yp) && (yp) + (ysize) > (xp))
 
#define MEM_OVERLAP_P(xp, xsize, yp, ysize)
 
#define MPN_SAME_OR_SEPARATE_P(xp, yp, size)    MPN_SAME_OR_SEPARATE2_P(xp, size, yp, size)
 
#define MPN_SAME_OR_SEPARATE2_P(xp, xsize, yp, ysize)    ((xp) == (yp) || ! MPN_OVERLAP_P (xp, xsize, yp, ysize))
 
#define MPN_SAME_OR_INCR2_P(dst, dsize, src, ssize)    ((dst) <= (src) || ! MPN_OVERLAP_P (dst, dsize, src, ssize))
 
#define MPN_SAME_OR_INCR_P(dst, src, size)    MPN_SAME_OR_INCR2_P(dst, size, src, size)
 
#define MPN_SAME_OR_DECR2_P(dst, dsize, src, ssize)    ((dst) >= (src) || ! MPN_OVERLAP_P (dst, dsize, src, ssize))
 
#define MPN_SAME_OR_DECR_P(dst, src, size)    MPN_SAME_OR_DECR2_P(dst, size, src, size)
 
#define ASSERT_LINE   -1
 
#define ASSERT_FILE   ""
 
#define ASSERT_FAIL(expr)   __gmp_assert_fail (ASSERT_FILE, ASSERT_LINE, #expr)
 
#define ASSERT_ALWAYS(expr)
 
#define ASSERT(expr)   do {} while (0)
 
#define ASSERT_CARRY(expr)   (expr)
 
#define ASSERT_NOCARRY(expr)   (expr)
 
#define ASSERT_CODE(expr)
 
#define ASSERT_MPQ_CANONICAL(q)   do {} while (0)
 
#define ASSERT_ALWAYS_LIMB(limb)
 
#define ASSERT_ALWAYS_MPN(ptr, size)
 
#define ASSERT_LIMB(limb)   do {} while (0)
 
#define ASSERT_MPN(ptr, size)   do {} while (0)
 
#define ASSERT_MPN_ZERO_P(ptr, size)   do {} while (0)
 
#define ASSERT_MPN_NONZERO_P(ptr, size)   do {} while (0)
 
#define mpn_com(d, s, n)
 
#define MPN_LOGOPS_N_INLINE(rp, up, vp, n, operation)
 
#define mpn_and_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, __a & __b)
 
#define mpn_andn_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, __a & ~__b)
 
#define mpn_nand_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, ~(__a & __b) & GMP_NUMB_MASK)
 
#define mpn_ior_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, __a | __b)
 
#define mpn_iorn_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, (__a | ~__b) & GMP_NUMB_MASK)
 
#define mpn_nior_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, ~(__a | __b) & GMP_NUMB_MASK)
 
#define mpn_xor_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, __a ^ __b)
 
#define mpn_xnor_n(rp, up, vp, n)    MPN_LOGOPS_N_INLINE (rp, up, vp, n, ~(__a ^ __b) & GMP_NUMB_MASK)
 
#define mpn_trialdiv   __MPN(trialdiv)
 
#define mpn_remove   __MPN(remove)
 
#define ADDC_LIMB(cout, w, x, y)
 
#define SUBC_LIMB(cout, w, x, y)
 
#define mpn_incr_u(p, incr)
 
#define mpn_decr_u(p, incr)
 
#define MPN_INCR_U(ptr, size, n)   mpn_incr_u (ptr, n)
 
#define MPN_DECR_U(ptr, size, n)   mpn_decr_u (ptr, n)
 
#define mp_bases   __MPN(bases)
 
#define DIGITS_IN_BASE_FROM_BITS(res, nbits, b)
 
#define DIGITS_IN_BASEGT2_FROM_BITS(res, nbits, b)
 
#define MPN_SIZEINBASE(result, ptr, size, base)
 
#define MPN_SIZEINBASE_2EXP(result, ptr, size, base2exp)
 
#define BITS_TO_LIMBS(n)   (((n) + (GMP_NUMB_BITS - 1)) / GMP_NUMB_BITS)
 
#define LIMBS_PER_ULONG   1
 
#define MPN_SET_UI(zp, zn, u)
 
#define MPZ_FAKE_UI(z, zp, u)
 
#define TARGET_REGISTER_STARVED   1
 
#define LIMB_HIGHBIT_TO_MASK(n)
 
#define mpn_invert_limb   __MPN(invert_limb)
 
#define invert_limb(invxl, xl)
 
#define invert_pi1(dinv, d1, d0)
 
#define udiv_qrnnd_preinv(q, r, nh, nl, d, di)
 
#define udiv_rnnd_preinv(r, nh, nl, d, di)
 
#define udiv_qr_3by2(q, r1, r0, n2, n1, n0, d1, d0, dinv)
 
#define mpn_preinv_divrem_1   __MPN(preinv_divrem_1)
 
#define USE_PREINV_DIVREM_1   1
 
#define MPN_DIVREM_OR_PREINV_DIVREM_1(qp, xsize, ap, size, d, dinv, shift)    mpn_preinv_divrem_1 (qp, xsize, ap, size, d, dinv, shift)
 
#define PREINV_MOD_1_TO_MOD_1_THRESHOLD   10
 
#define MPN_MOD_OR_PREINV_MOD_1(src, size, divisor, inverse)
 
#define mpn_mod_34lsub1   __MPN(mod_34lsub1)
 
#define DIVEXACT_1_THRESHOLD   0
 
#define BMOD_1_TO_MOD_1_THRESHOLD   10
 
#define MPN_DIVREM_OR_DIVEXACT_1(rp, up, n, d)
 
#define mpn_modexact_1c_odd   __MPN(modexact_1c_odd)
 
#define mpn_modexact_1_odd(src, size, divisor)    mpn_modexact_1c_odd (src, size, divisor, CNST_LIMB(0))
 
#define MPN_MOD_OR_MODEXACT_1_ODD(src, size, divisor)
 
#define binvert_limb_table   __gmp_binvert_limb_table
 
#define binvert_limb(inv, n)
 
#define modlimb_invert   binvert_limb /* backward compatibility */
 
#define MODLIMB_INVERSE_3   (((GMP_NUMB_MAX >> (GMP_NUMB_BITS % 2)) / 3) * 2 + 1)
 
#define GMP_NUMB_CEIL_MAX_DIV3   (GMP_NUMB_MAX / 3 + 1)
 
#define GMP_NUMB_CEIL_2MAX_DIV3   ((GMP_NUMB_MAX>>1) / 3 + 1 + GMP_NUMB_HIGHBIT)
 
#define NEG_MOD(r, a, d)
 
#define LOW_ZEROS_MASK(n)   (((n) & -(n)) - 1)
 
#define ULONG_PARITY(p, n)
 
#define BSWAP_LIMB(dst, src)
 
#define BSWAP_LIMB_FETCH(limb, src)   BSWAP_LIMB (limb, *(src))
 
#define BSWAP_LIMB_STORE(dst, limb)   BSWAP_LIMB (*(dst), limb)
 
#define MPN_BSWAP(dst, src, size)
 
#define MPN_BSWAP_REVERSE(dst, src, size)
 
#define popc_limb(result, input)
 
#define W_TYPE_SIZE   GMP_LIMB_BITS
 
#define _GMP_IEEE_FLOATS   1
 
#define MP_BASE_AS_DOUBLE   (4.0 * ((mp_limb_t) 1 << (GMP_NUMB_BITS - 2)))
 
#define LIMBS_PER_DOUBLE   ((53 + GMP_NUMB_BITS - 2) / GMP_NUMB_BITS + 1)
 
#define mpn_get_d   __gmpn_get_d
 
#define DOUBLE_NAN_INF_ACTION(x, a_nan, a_inf)
 
#define FORCE_DOUBLE(d)    do { volatile double __gmp_force = (d); (d) = __gmp_force; } while (0)
 
#define GMP_ERROR(code)   __gmp_exception (code)
 
#define DIVIDE_BY_ZERO   __gmp_divide_by_zero ()
 
#define SQRT_OF_NEGATIVE   __gmp_sqrt_of_negative ()
 
#define CNST_LIMB(C)   ((mp_limb_t) C##LL)
 
#define PP   CNST_LIMB(0xE221F97C30E94E1D) /* 3 x 5 x 7 x 11 x ... x 53 */
 
#define PP_INVERTED   CNST_LIMB(0x21CFE6CFC938B36B)
 
#define PP_FIRST_OMITTED   59
 
#define mpn_gcd_22   __MPN (gcd_22)
 
#define JACOBI_S0(a)   (((a) == 1) | ((a) == -1))
 
#define JACOBI_U0(a)   ((a) == 1)
 
#define JACOBI_LS0(alow, asize)    (((asize) == 1 || (asize) == -1) && (alow) == 1)
 
#define JACOBI_Z0(a)   JACOBI_LS0 (PTR(a)[0], SIZ(a))
 
#define JACOBI_0U(b)   ((b) == 1)
 
#define JACOBI_0S(b)   ((b) == 1 || (b) == -1)
 
#define JACOBI_0LS(blow, bsize)    (((bsize) == 1 || (bsize) == -1) && (blow) == 1)
 
#define JACOBI_BIT1_TO_PN(result_bit1)    (1 - ((int) (result_bit1) & 2))
 
#define JACOBI_TWO_U_BIT1(b)    ((int) (((b) >> 1) ^ (b)))
 
#define JACOBI_TWOS_U_BIT1(twos, b)    ((int) ((twos) << 1) & JACOBI_TWO_U_BIT1 (b))
 
#define JACOBI_TWOS_U(twos, b)    (JACOBI_BIT1_TO_PN (JACOBI_TWOS_U_BIT1 (twos, b)))
 
#define JACOBI_N1B_BIT1(b)    ((int) (b))
 
#define JACOBI_ASGN_SU_BIT1(a, b)    ((((a) < 0) << 1) & JACOBI_N1B_BIT1(b))
 
#define JACOBI_BSGN_SS_BIT1(a, b)    ((((a)<0) & ((b)<0)) << 1)
 
#define JACOBI_BSGN_SZ_BIT1(a, b)    JACOBI_BSGN_SS_BIT1 (a, SIZ(b))
 
#define JACOBI_BSGN_ZS_BIT1(a, b)    JACOBI_BSGN_SZ_BIT1 (b, a)
 
#define JACOBI_RECIP_UU_BIT1(a, b)    ((int) ((a) & (b)))
 
#define JACOBI_STRIP_LOW_ZEROS(result_bit1, a, b_ptr, b_size, b_low)
 
#define JACOBI_MOD_OR_MODEXACT_1_ODD(result_bit1, a_rem, a_ptr, a_size, b)
 
#define jacobi_table   __gmp_jacobi_table
 
#define mpn_matrix22_mul   __MPN(matrix22_mul)
 
#define mpn_matrix22_mul_itch   __MPN(matrix22_mul_itch)
 
#define MATRIX22_STRASSEN_THRESHOLD   30
 
#define MPN_EXTRACT_NUMB(count, xh, xl)
 
#define mpn_hgcd2   __MPN (hgcd2)
 
#define mpn_hgcd_mul_matrix1_vector   __MPN (hgcd_mul_matrix1_vector)
 
#define mpn_matrix22_mul1_inverse_vector   __MPN (matrix22_mul1_inverse_vector)
 
#define mpn_hgcd2_jacobi   __MPN (hgcd2_jacobi)
 
#define MPN_HGCD_MATRIX_INIT_ITCH(n)   (4 * ((n+1)/2 + 1))
 
#define mpn_hgcd_matrix_init   __MPN (hgcd_matrix_init)
 
#define mpn_hgcd_matrix_update_q   __MPN (hgcd_matrix_update_q)
 
#define mpn_hgcd_matrix_mul_1   __MPN (hgcd_matrix_mul_1)
 
#define mpn_hgcd_matrix_mul   __MPN (hgcd_matrix_mul)
 
#define mpn_hgcd_matrix_adjust   __MPN (hgcd_matrix_adjust)
 
#define mpn_hgcd_step   __MPN(hgcd_step)
 
#define mpn_hgcd_reduce   __MPN(hgcd_reduce)
 
#define mpn_hgcd_reduce_itch   __MPN(hgcd_reduce_itch)
 
#define mpn_hgcd_itch   __MPN (hgcd_itch)
 
#define mpn_hgcd   __MPN (hgcd)
 
#define mpn_hgcd_appr_itch   __MPN (hgcd_appr_itch)
 
#define mpn_hgcd_appr   __MPN (hgcd_appr)
 
#define mpn_hgcd_jacobi   __MPN (hgcd_jacobi)
 
#define MPN_GCD_SUBDIV_STEP_ITCH(n)   (n)
 
#define mpn_gcd_subdiv_step   __MPN(gcd_subdiv_step)
 
#define mpn_gcdext_hook   __MPN (gcdext_hook)
 
#define MPN_GCDEXT_LEHMER_N_ITCH(n)   (4*(n) + 3)
 
#define mpn_gcdext_lehmer_n   __MPN(gcdext_lehmer_n)
 
#define MPN_GCDEXT_LEHMER_ITCH(an, bn)   (5*(an) + 4*(bn) + 8)
 
#define HGCD_THRESHOLD   400
 
#define HGCD_APPR_THRESHOLD   400
 
#define HGCD_REDUCE_THRESHOLD   1000
 
#define GCD_DC_THRESHOLD   1000
 
#define GCDEXT_DC_THRESHOLD   600
 
#define mpn_str_powtab_alloc(n)   ((n) + 2 * GMP_LIMB_BITS) /* FIXME: This can perhaps be trimmed */
 
#define mpn_dc_set_str_itch(n)   ((n) + GMP_LIMB_BITS)
 
#define mpn_dc_get_str_itch(n)   ((n) + GMP_LIMB_BITS)
 
#define mpn_compute_powtab   __MPN(compute_powtab)
 
#define mpn_dc_set_str   __MPN(dc_set_str)
 
#define mpn_bc_set_str   __MPN(bc_set_str)
 
#define __GMPF_BITS_TO_PREC(n)    ((mp_size_t) ((__GMP_MAX (53, n) + 2 * GMP_NUMB_BITS - 1) / GMP_NUMB_BITS))
 
#define __GMPF_PREC_TO_BITS(n)    ((mp_bitcnt_t) (n) * GMP_NUMB_BITS - GMP_NUMB_BITS)
 
#define DIGITS_IN_BASE_PER_LIMB(res, nlimbs, b)
 
#define LIMBS_PER_DIGIT_IN_BASE(res, ndigits, b)
 
#define MPF_SIGNIFICANT_DIGITS(n, base, prec)
 
#define GMP_DECIMAL_POINT   (".")
 
#define DOPRNT_CONV_FIXED   1
 
#define DOPRNT_CONV_SCIENTIFIC   2
 
#define DOPRNT_CONV_GENERAL   3
 
#define DOPRNT_JUSTIFY_NONE   0
 
#define DOPRNT_JUSTIFY_LEFT   1
 
#define DOPRNT_JUSTIFY_RIGHT   2
 
#define DOPRNT_JUSTIFY_INTERNAL   3
 
#define DOPRNT_SHOWBASE_YES   1
 
#define DOPRNT_SHOWBASE_NO   2
 
#define DOPRNT_SHOWBASE_NONZERO   3
 
#define MPZ_CHECK_FORMAT(z)
 
#define MPQ_CHECK_FORMAT(q)
 
#define MPF_CHECK_FORMAT(f)
 
#define CPUVEC_THRESHOLD(field)
 
#define mpn_toom22_mul_itch(an, bn)    (2 * ((an) + GMP_NUMB_BITS))
 
#define mpn_toom2_sqr_itch(an)    (2 * ((an) + GMP_NUMB_BITS))
 
#define mpn_toom33_mul_itch(an, bn)    (3 * (an) + GMP_NUMB_BITS)
 
#define mpn_toom3_sqr_itch(an)    (3 * (an) + GMP_NUMB_BITS)
 
#define mpn_toom44_mul_itch(an, bn)    (3 * (an) + GMP_NUMB_BITS)
 
#define mpn_toom4_sqr_itch(an)    (3 * (an) + GMP_NUMB_BITS)
 
#define mpn_toom6_sqr_itch(n)
 
#define MUL_TOOM6H_MIN
 
#define mpn_toom6_mul_n_itch(n)
 
#define mpn_toom8_sqr_itch(n)
 
#define MUL_TOOM8H_MIN
 
#define mpn_toom8_mul_n_itch(n)
 
#define mpn_toom42_mulmid_itch(n)    (3 * (n) + GMP_NUMB_BITS)
 
#define mpn_fft_mul   mpn_nussbaumer_mul
 

Typedefs

typedef uint_least32_t gmp_uint_least32_t
 
typedef intptr_t gmp_intptr_t
 
typedef __gmp_randstate_structgmp_randstate_ptr
 
typedef const __gmp_randstate_structgmp_randstate_srcptr
 
typedef unsigned char UQItype
 
typedef long SItype
 
typedef unsigned long USItype
 
typedef long long int DItype
 
typedef unsigned long long int UDItype
 
typedef mp_limb_t UWtype
 
typedef unsigned int UHWtype
 
typedef void gcd_subdiv_step_hook(void *, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, int)
 
typedef struct powers powers_t
 
typedef int(* gmp_doscan_scan_t) (void *, const char *,...)
 
typedef void *(* gmp_doscan_step_t) (void *, int)
 
typedef int(* gmp_doscan_get_t) (void *)
 
typedef int(* gmp_doscan_unget_t) (int, void *)
 

Enumerations

enum  toom6_flags { toom6_all_pos = 0 , toom6_vm1_neg = 1 , toom6_vm2_neg = 2 }
 
enum  toom7_flags { toom7_w1_neg = 1 , toom7_w3_neg = 2 }
 

Functions

void__gmp_tmp_reentrant_alloc (struct tmp_reentrant_t **, size_t)
 
void __gmp_tmp_reentrant_free (struct tmp_reentrant_t *)
 
void__gmp_default_allocate (size_t)
 
void__gmp_default_reallocate (void *, size_t, size_t)
 
void __gmp_default_free (void *, size_t)
 
void __gmpz_aorsmul_1 (mpz_ptr, mpz_srcptr, mp_limb_t, mp_size_t)
 
void __gmpz_n_pow_ui (mpz_ptr, mp_srcptr, mp_size_t, unsigned long)
 
mp_limb_t __gmpn_addmul_1c (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_addmul_2 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_3 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_4 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_5 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_6 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_7 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_8 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addmul_2s (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_addlsh1_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_addlsh1_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_addlsh1_n_ip1 (mp_ptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_addlsh1_nc_ip1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_addlsh2_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_addlsh2_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_addlsh2_n_ip1 (mp_ptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_addlsh2_nc_ip1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_addlsh_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_t __gmpn_addlsh_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, unsigned int, mp_limb_t)
 
mp_limb_t __gmpn_addlsh_n_ip1 (mp_ptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_t __gmpn_addlsh_nc_ip1 (mp_ptr, mp_srcptr, mp_size_t, unsigned int, mp_limb_t)
 
mp_limb_t __gmpn_sublsh1_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_sublsh1_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sublsh1_n_ip1 (mp_ptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_sublsh1_nc_ip1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sublsh2_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_sublsh2_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sublsh2_n_ip1 (mp_ptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_sublsh2_nc_ip1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sublsh_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_t __gmpn_sublsh_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, unsigned int, mp_limb_t)
 
mp_limb_t __gmpn_sublsh_n_ip1 (mp_ptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_t __gmpn_sublsh_nc_ip1 (mp_ptr, mp_srcptr, mp_size_t, unsigned int, mp_limb_t)
 
mp_limb_signed_t __gmpn_rsblsh1_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_signed_t __gmpn_rsblsh1_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_signed_t __gmpn_rsblsh2_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_signed_t __gmpn_rsblsh2_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_signed_t __gmpn_rsblsh_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_signed_t __gmpn_rsblsh_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, unsigned int, mp_limb_t)
 
mp_limb_t __gmpn_rsh1add_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_rsh1add_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_rsh1sub_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_rsh1sub_nc (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_lshiftc (mp_ptr, mp_srcptr, mp_size_t, unsigned int)
 
mp_limb_t __gmpn_add_err1_n (mp_ptr, mp_srcptr, mp_srcptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_add_err2_n (mp_ptr, mp_srcptr, mp_srcptr, mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_add_err3_n (mp_ptr, mp_srcptr, mp_srcptr, mp_ptr, mp_srcptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sub_err1_n (mp_ptr, mp_srcptr, mp_srcptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sub_err2_n (mp_ptr, mp_srcptr, mp_srcptr, mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sub_err3_n (mp_ptr, mp_srcptr, mp_srcptr, mp_ptr, mp_srcptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_add_n_sub_n (mp_ptr, mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_add_n_sub_nc (mp_ptr, mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_addaddmul_1msb0 (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_divrem_1c (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
void __gmpn_dump (mp_srcptr, mp_size_t)
 
mp_size_t __gmpn_fib2_ui (mp_ptr, mp_ptr, unsigned long)
 
int __gmpn_fib2m (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
int __gmpn_strongfibo (mp_srcptr, mp_size_t, mp_ptr)
 
int __gmpn_jacobi_base (mp_limb_t, mp_limb_t, int)
 
int __gmpn_jacobi_2 (mp_srcptr, mp_srcptr, unsigned)
 
int __gmpn_jacobi_n (mp_ptr, mp_ptr, mp_size_t, unsigned)
 
mp_limb_t __gmpn_mod_1c (mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_mul_1c (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_mul_2 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_mul_3 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_mul_4 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_mul_5 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
mp_limb_t __gmpn_mul_6 (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
void __gmpn_mul_basecase (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
void __gmpn_mullo_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
void __gmpn_mullo_basecase (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
void __gmpn_sqr_basecase (mp_ptr, mp_srcptr, mp_size_t)
 
void __gmpn_sqrlo (mp_ptr, mp_srcptr, mp_size_t)
 
void __gmpn_sqrlo_basecase (mp_ptr, mp_srcptr, mp_size_t)
 
void __gmpn_mulmid_basecase (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
void __gmpn_mulmid_n (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
void __gmpn_mulmid (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_submul_1c (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_redc_1 (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_redc_2 (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
void __gmpn_redc_n (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
 
void __gmpn_mod_1_1p_cps (mp_limb_t[4], mp_limb_t)
 
mp_limb_t __gmpn_mod_1_1p (mp_srcptr, mp_size_t, mp_limb_t, const mp_limb_t[4])
 
void __gmpn_mod_1s_2p_cps (mp_limb_t[5], mp_limb_t)
 
mp_limb_t __gmpn_mod_1s_2p (mp_srcptr, mp_size_t, mp_limb_t, const mp_limb_t[5])
 
void __gmpn_mod_1s_3p_cps (mp_limb_t[6], mp_limb_t)
 
mp_limb_t __gmpn_mod_1s_3p (mp_srcptr, mp_size_t, mp_limb_t, const mp_limb_t[6])
 
void __gmpn_mod_1s_4p_cps (mp_limb_t[7], mp_limb_t)
 
mp_limb_t __gmpn_mod_1s_4p (mp_srcptr, mp_size_t, mp_limb_t, const mp_limb_t[7])
 
void __gmpn_bc_mulmod_bnm1 (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_mulmod_bnm1 (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_mulmod_bnm1_next_size (mp_size_t)
 
static __inline mp_size_t mpn_mulmod_bnm1_itch (mp_size_t rn, mp_size_t an, mp_size_t bn)
 
void __gmpn_sqrmod_bnm1 (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_sqrmod_bnm1_next_size (mp_size_t)
 
static __inline mp_size_t mpn_sqrmod_bnm1_itch (mp_size_t rn, mp_size_t an)
 
void __gmp_randinit_mt_noseed (gmp_randstate_t)
 
void __gmpn_sqr_diagonal (mp_ptr, mp_srcptr, mp_size_t)
 
void __gmpn_sqr_diag_addlsh1 (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)
 
void __gmpn_toom_interpolate_5pts (mp_ptr, mp_ptr, mp_ptr, mp_size_t, mp_size_t, int, mp_limb_t)
 
void __gmpn_toom_interpolate_6pts (mp_ptr, mp_size_t, enum toom6_flags, mp_ptr, mp_ptr, mp_ptr, mp_size_t)
 
void __gmpn_toom_interpolate_7pts (mp_ptr, mp_size_t, enum toom7_flags, mp_ptr, mp_ptr, mp_ptr, mp_ptr, mp_size_t, mp_ptr)
 
void __gmpn_toom_interpolate_8pts (mp_ptr, mp_size_t, mp_ptr, mp_ptr, mp_size_t, mp_ptr)
 
void __gmpn_toom_interpolate_12pts (mp_ptr, mp_ptr, mp_ptr, mp_ptr, mp_size_t, mp_size_t, int, mp_ptr)
 
void __gmpn_toom_interpolate_16pts (mp_ptr, mp_ptr, mp_ptr, mp_ptr, mp_ptr, mp_size_t, mp_size_t, int, mp_ptr)
 
void __gmpn_toom_couple_handling (mp_ptr, mp_size_t, mp_ptr, int, mp_size_t, int, int)
 
int __gmpn_toom_eval_dgr3_pm1 (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_size_t, mp_ptr)
 
int __gmpn_toom_eval_dgr3_pm2 (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_size_t, mp_ptr)
 
int __gmpn_toom_eval_pm1 (mp_ptr, mp_ptr, unsigned, mp_srcptr, mp_size_t, mp_size_t, mp_ptr)
 
int __gmpn_toom_eval_pm2 (mp_ptr, mp_ptr, unsigned, mp_srcptr, mp_size_t, mp_size_t, mp_ptr)
 
int __gmpn_toom_eval_pm2exp (mp_ptr, mp_ptr, unsigned, mp_srcptr, mp_size_t, mp_size_t, unsigned, mp_ptr)
 
int __gmpn_toom_eval_pm2rexp (mp_ptr, mp_ptr, unsigned, mp_srcptr, mp_size_t, mp_size_t, unsigned, mp_ptr)
 
void __gmpn_toom22_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom32_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom42_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom52_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom62_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom2_sqr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom33_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom43_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom53_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom54_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom63_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom3_sqr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom44_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom4_sqr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom6h_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom6_sqr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom8h_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom8_sqr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_toom42_mulmid (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_ptr)
 
int __gmpn_fft_best_k (mp_size_t, int)
 
mp_limb_t __gmpn_mul_fft (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, int)
 
void __gmpn_mul_fft_full (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
void __gmpn_nussbaumer_mul (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
mp_size_t __gmpn_fft_next_size (mp_size_t, int)
 
mp_limb_t __gmpn_div_qr_1n_pi1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_div_qr_2n_pi1 (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t, mp_limb_t)
 
mp_limb_t __gmpn_div_qr_2u_pi1 (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t, int, mp_limb_t)
 
mp_limb_t __gmpn_sbpi1_div_qr (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sbpi1_div_q (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sbpi1_divappr_q (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_dcpi1_div_qr (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, gmp_pi1_t *)
 
mp_limb_t __gmpn_dcpi1_div_qr_n (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, gmp_pi1_t *, mp_ptr)
 
mp_limb_t __gmpn_dcpi1_div_q (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, gmp_pi1_t *)
 
mp_limb_t __gmpn_dcpi1_divappr_q (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, gmp_pi1_t *)
 
mp_limb_t __gmpn_mu_div_qr (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_mu_div_qr_itch (mp_size_t, mp_size_t, int)
 
mp_limb_t __gmpn_preinv_mu_div_qr (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_preinv_mu_div_qr_itch (mp_size_t, mp_size_t, mp_size_t)
 
mp_limb_t __gmpn_mu_divappr_q (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_mu_divappr_q_itch (mp_size_t, mp_size_t, int)
 
mp_limb_t __gmpn_mu_div_q (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_mu_div_q_itch (mp_size_t, mp_size_t, int)
 
void __gmpn_div_q (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_invert (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
mp_limb_t __gmpn_ni_invertappr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
mp_limb_t __gmpn_invertappr (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_binvert (mp_ptr, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_binvert_itch (mp_size_t)
 
mp_limb_t __gmpn_bdiv_q_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_pi1_bdiv_q_1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t, int)
 
mp_limb_t __gmpn_sbpi1_bdiv_qr (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
void __gmpn_sbpi1_bdiv_q (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_sbpi1_bdiv_r (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_dcpi1_bdiv_qr (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_size_t __gmpn_dcpi1_bdiv_qr_n_itch (mp_size_t)
 
mp_limb_t __gmpn_dcpi1_bdiv_qr_n (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_ptr)
 
void __gmpn_dcpi1_bdiv_q (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t)
 
mp_limb_t __gmpn_mu_bdiv_qr (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_mu_bdiv_qr_itch (mp_size_t, mp_size_t)
 
void __gmpn_mu_bdiv_q (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_mu_bdiv_q_itch (mp_size_t, mp_size_t)
 
mp_limb_t __gmpn_bdiv_qr (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_bdiv_qr_itch (mp_size_t, mp_size_t)
 
void __gmpn_bdiv_q (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_bdiv_q_itch (mp_size_t, mp_size_t)
 
void __gmpn_divexact (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
mp_size_t __gmpn_divexact_itch (mp_size_t, mp_size_t)
 
mp_limb_t __gmpn_bdiv_dbm1c (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
void __gmpn_powm (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_ptr)
 
void __gmpn_powlo (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t, mp_size_t, mp_ptr)
 
mp_limb_t __gmpn_sec_pi1_div_qr (mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t, mp_ptr)
 
void __gmpn_sec_pi1_div_r (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t, mp_ptr)
 
void __gmpz_divexact_gcd (mpz_ptr, mpz_srcptr, mpz_srcptr)
 
mp_size_t __gmpz_prodlimbs (mpz_ptr, mp_ptr, mp_size_t)
 
void __gmpz_oddfac_1 (mpz_ptr, mp_limb_t, unsigned)
 
int __gmpz_stronglucas (mpz_srcptr, mpz_ptr, mpz_ptr)
 
int __gmpz_lucas_mod (mpz_ptr, mpz_ptr, long, mp_bitcnt_t, mpz_srcptr, mpz_ptr, mpz_ptr)
 
int __gmpn_divisible_p (mp_srcptr, mp_size_t, mp_srcptr, mp_size_t)
 
mp_size_t __gmpn_rootrem (mp_ptr, mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
void __gmpn_broot (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
void __gmpn_broot_invm1 (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)
 
void __gmpn_brootinv (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t, mp_ptr)
 
void __gmpn_bsqrt (mp_ptr, mp_srcptr, mp_bitcnt_t, mp_ptr)
 
int __gmpn_bsqrtinv (mp_ptr, mp_srcptr, mp_bitcnt_t, mp_ptr)
 
static __inline unsigned log_n_max (mp_limb_t n)
 
void __gmp_init_primesieve (gmp_primesieve_t *)
 
unsigned long int __gmp_nextprime (gmp_primesieve_t *)
 
mp_limb_t __gmp_primesieve (mp_ptr, mp_limb_t)
 
void __gmp_assert_header (const char *, int)
 
void __gmp_assert_fail (const char *, int, const char *)
 
mp_limb_t __gmpn_trialdiv (mp_srcptr, mp_size_t, mp_size_t, int *)
 
mp_bitcnt_t __gmpn_remove (mp_ptr, mp_size_t *, mp_srcptr, mp_size_t, mp_srcptr, mp_size_t, mp_bitcnt_t)
 
mp_limb_t __gmpn_invert_limb (mp_limb_t)
 
mp_limb_t __gmpn_preinv_divrem_1 (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t, int)
 
mp_limb_t __gmpn_mod_34lsub1 (mp_srcptr, mp_size_t)
 
mp_limb_t __gmpn_modexact_1c_odd (mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)
 
int __gmp_extract_double (mp_ptr, double)
 
double __gmpn_get_d (mp_srcptr, mp_size_t, mp_size_t, long)
 
void __gmp_exception (int)
 
void __gmp_divide_by_zero (void)
 
void __gmp_sqrt_of_negative (void)
 
void __gmp_invalid_operation (void)
 
mp_double_limb_t __gmpn_gcd_22 (mp_limb_t, mp_limb_t, mp_limb_t, mp_limb_t)
 
static __inline unsigned mpn_jacobi_init (unsigned a, unsigned b, unsigned s)
 
static __inline int mpn_jacobi_finish (unsigned bits)
 
static __inline unsigned mpn_jacobi_update (unsigned bits, unsigned denominator, unsigned q)
 
void __gmpn_matrix22_mul (mp_ptr, mp_ptr, mp_ptr, mp_ptr, mp_size_t, mp_srcptr, mp_srcptr, mp_srcptr, mp_srcptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_matrix22_mul_itch (mp_size_t, mp_size_t)
 
int __gmpn_hgcd2 (mp_limb_t, mp_limb_t, mp_limb_t, mp_limb_t, struct hgcd_matrix1 *)
 
mp_size_t __gmpn_hgcd_mul_matrix1_vector (const struct hgcd_matrix1 *, mp_ptr, mp_srcptr, mp_ptr, mp_size_t)
 
mp_size_t __gmpn_matrix22_mul1_inverse_vector (const struct hgcd_matrix1 *, mp_ptr, mp_srcptr, mp_ptr, mp_size_t)
 
int __gmpn_hgcd2_jacobi (mp_limb_t, mp_limb_t, mp_limb_t, mp_limb_t, struct hgcd_matrix1 *, unsigned *)
 
void __gmpn_hgcd_matrix_init (struct hgcd_matrix *, mp_size_t, mp_ptr)
 
void __gmpn_hgcd_matrix_update_q (struct hgcd_matrix *, mp_srcptr, mp_size_t, unsigned, mp_ptr)
 
void __gmpn_hgcd_matrix_mul_1 (struct hgcd_matrix *, const struct hgcd_matrix1 *, mp_ptr)
 
void __gmpn_hgcd_matrix_mul (struct hgcd_matrix *, const struct hgcd_matrix *, mp_ptr)
 
mp_size_t __gmpn_hgcd_matrix_adjust (const struct hgcd_matrix *, mp_size_t, mp_ptr, mp_ptr, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_hgcd_step (mp_size_t, mp_ptr, mp_ptr, mp_size_t, struct hgcd_matrix *, mp_ptr)
 
mp_size_t __gmpn_hgcd_reduce (struct hgcd_matrix *, mp_ptr, mp_ptr, mp_size_t, mp_size_t, mp_ptr)
 
mp_size_t __gmpn_hgcd_reduce_itch (mp_size_t, mp_size_t)
 
mp_size_t __gmpn_hgcd_itch (mp_size_t)
 
mp_size_t __gmpn_hgcd (mp_ptr, mp_ptr, mp_size_t, struct hgcd_matrix *, mp_ptr)
 
mp_size_t __gmpn_hgcd_appr_itch (mp_size_t)
 
int __gmpn_hgcd_appr (mp_ptr, mp_ptr, mp_size_t, struct hgcd_matrix *, mp_ptr)
 
mp_size_t __gmpn_hgcd_jacobi (mp_ptr, mp_ptr, mp_size_t, struct hgcd_matrix *, unsigned *, mp_ptr)
 
mp_size_t __gmpn_gcd_subdiv_step (mp_ptr, mp_ptr, mp_size_t, mp_size_t, gcd_subdiv_step_hook *, void *, mp_ptr)
 
mp_size_t __gmpn_gcdext_lehmer_n (mp_ptr, mp_ptr, mp_size_t *, mp_ptr, mp_ptr, mp_size_t, mp_ptr)
 
size_t __gmpn_compute_powtab (powers_t *, mp_ptr, mp_size_t, int)
 
mp_size_t __gmpn_dc_set_str (mp_ptr, const unsigned char *, size_t, const powers_t *, mp_ptr)
 
mp_size_t __gmpn_bc_set_str (mp_ptr, const unsigned char *, size_t, int)
 
void __gmpn_cpuvec_init (void)
 
static __inline mp_limb_t mpn_add_nc (mp_ptr rp, mp_srcptr up, mp_srcptr vp, mp_size_t n, mp_limb_t ci)
 
static __inline mp_limb_t mpn_sub_nc (mp_ptr rp, mp_srcptr up, mp_srcptr vp, mp_size_t n, mp_limb_t ci)
 
static __inline mp_size_t mpn_toom6h_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom8h_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom32_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom42_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom43_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom52_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom53_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom62_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom63_mul_itch (mp_size_t an, mp_size_t bn)
 
static __inline mp_size_t mpn_toom54_mul_itch (mp_size_t an, mp_size_t bn)
 

Variables

void *(* __gmp_allocate_func )(size_t)
 
void *(* __gmp_reallocate_func )(void *, size_t, size_t)
 
void(* __gmp_free_func )(void *, size_t)
 
char __gmp_rands_initialized
 
gmp_randstate_t __gmp_rands
 
const mp_limb_t __gmp_fib_table []
 
const mp_limb_t __gmp_oddfac_table []
 
const mp_limb_t __gmp_odd2fac_table []
 
const unsigned char __gmp_fac2cnt_table []
 
const mp_limb_t __gmp_limbroots_table []
 
const struct bases __gmpn_bases [257]
 
const unsigned char __gmp_binvert_limb_table [128]
 
const unsigned char __gmp_digit_value_tab []
 
int __gmp_junk
 
const int __gmp_0
 
const unsigned char __gmp_jacobi_table [208]
 
gcd_subdiv_step_hook __gmpn_gcdext_hook
 
mp_size_t __gmp_default_fp_limb_precision
 
const struct gmp_doscan_funs_t __gmp_fscanf_funs
 
const struct gmp_doscan_funs_t __gmp_sscanf_funs
 

Macro Definition Documentation

◆ __builtin_constant_p

#define __builtin_constant_p (   x)    0

Definition at line 734 of file gmp-impl.h.

◆ __clz_tab

#define __clz_tab   __MPN(clz_tab)

Definition at line 1143 of file gmp-impl.h.

◆ __GMP_ALLOCATE_FUNC_LIMBS

#define __GMP_ALLOCATE_FUNC_LIMBS (   n)    __GMP_ALLOCATE_FUNC_TYPE (n, mp_limb_t)

Definition at line 707 of file gmp-impl.h.

◆ __GMP_ALLOCATE_FUNC_TYPE

#define __GMP_ALLOCATE_FUNC_TYPE (   n,
  type 
)     ((type *) (*__gmp_allocate_func) ((n) * sizeof (type)))

Definition at line 705 of file gmp-impl.h.

◆ __GMP_FREE_FUNC_LIMBS

#define __GMP_FREE_FUNC_LIMBS (   p,
  n 
)    __GMP_FREE_FUNC_TYPE (p, n, mp_limb_t)

Definition at line 716 of file gmp-impl.h.

◆ __GMP_FREE_FUNC_TYPE

#define __GMP_FREE_FUNC_TYPE (   p,
  n,
  type 
)    (*__gmp_free_func) (p, (n) * sizeof (type))

Definition at line 715 of file gmp-impl.h.

◆ __GMP_REALLOCATE_FUNC_LIMBS

#define __GMP_REALLOCATE_FUNC_LIMBS (   p,
  old_size,
  new_size 
)     __GMP_REALLOCATE_FUNC_TYPE(p, old_size, new_size, mp_limb_t)

Definition at line 712 of file gmp-impl.h.

◆ __GMP_REALLOCATE_FUNC_MAYBE

#define __GMP_REALLOCATE_FUNC_MAYBE (   ptr,
  oldsize,
  newsize 
)
Value:
do { \
if ((oldsize) != (newsize)) \
(ptr) = (*__gmp_reallocate_func) (ptr, oldsize, newsize); \
} while (0)
void *(* __gmp_reallocate_func)(void *, size_t, size_t)
Definition: memory.c:38
set set set set set set set set set set set set set set set set set set set set *set set set macro pixldst op &r &cond WK op &r &cond WK op &r &cond WK else op &m &cond &ia op &r &cond WK else op &m &cond &ia elseif elseif else error unsupported base if elseif elseif else error unsupported unaligned pixldst unaligned endm macro pixst base base else pixldst base endif endm macro PF ptr

Definition at line 718 of file gmp-impl.h.

◆ __GMP_REALLOCATE_FUNC_MAYBE_TYPE

#define __GMP_REALLOCATE_FUNC_MAYBE_TYPE (   ptr,
  oldsize,
  newsize,
  type 
)
Value:
do { \
if ((oldsize) != (newsize)) \
(ptr) = (type *) (*__gmp_reallocate_func) \
(ptr, (oldsize) * sizeof (type), (newsize) * sizeof (type)); \
} while (0)
#define type(a)
Definition: aptex-macros.h:171

Definition at line 724 of file gmp-impl.h.

◆ __GMP_REALLOCATE_FUNC_TYPE

#define __GMP_REALLOCATE_FUNC_TYPE (   p,
  old_size,
  new_size,
  type 
)
Value:
(p, (old_size) * sizeof (type), (new_size) * sizeof (type)))
small capitals from c petite p
Definition: afcover.h:72
static void new_size(int size, int block)
Definition: gc.c:702

Definition at line 709 of file gmp-impl.h.

◆ __GMPF_BITS_TO_PREC

#define __GMPF_BITS_TO_PREC (   n)     ((mp_size_t) ((__GMP_MAX (53, n) + 2 * GMP_NUMB_BITS - 1) / GMP_NUMB_BITS))

Definition at line 4369 of file gmp-impl.h.

◆ __GMPF_PREC_TO_BITS

#define __GMPF_PREC_TO_BITS (   n)     ((mp_bitcnt_t) (n) * GMP_NUMB_BITS - GMP_NUMB_BITS)

Definition at line 4371 of file gmp-impl.h.

◆ __TMP_ALIGN

#define __TMP_ALIGN   sizeof (union tmp_align_t)

Definition at line 350 of file gmp-impl.h.

◆ _GMP_IEEE_FLOATS

#define _GMP_IEEE_FLOATS   1

Definition at line 3798 of file gmp-impl.h.

◆ _gmp_rand

#define _gmp_rand (   rp,
  state,
  bits 
)
Value:
do { \
gmp_randstate_ptr __rstate = (state); \
(*((gmp_randfnptr_t *) RNG_FNPTR (__rstate))->randget_fn) \
(__rstate, rp, bits); \
} while (0)
rp
Definition: action.c:992
#define state
Definition: aptex-macros.h:996
#define RNG_FNPTR(rstate)
Definition: gmp-impl.h:1302
#define bits
Definition: infblock.c:15

Definition at line 1309 of file gmp-impl.h.

◆ _mpz_newalloc

#define _mpz_newalloc   _mpz_realloc

Definition at line 2002 of file gmp-impl.h.

◆ ABOVE_THRESHOLD

#define ABOVE_THRESHOLD (   size,
  thresh 
)
Value:
((thresh) == 0 \
|| ((thresh) != MP_SIZE_T_MAX \
&& (size) >= (thresh)))
#define MP_SIZE_T_MAX
Definition: gmp-impl.h:580
static int thresh
Definition: qsort.c:23
static int size
Definition: ppmlabel.c:24

Definition at line 1358 of file gmp-impl.h.

◆ ABS

#define ABS (   x)    ((x) >= 0 ? (x) : -(x))

Definition at line 534 of file gmp-impl.h.

◆ ABS_CAST

#define ABS_CAST (   T,
  x 
)    ((x) >= 0 ? __GMP_CAST (T, x) : NEG_CAST (T,x))

Definition at line 536 of file gmp-impl.h.

◆ ABSIZ

#define ABSIZ (   x)    ABS (SIZ (x))

Definition at line 545 of file gmp-impl.h.

◆ ADDC_LIMB

#define ADDC_LIMB (   cout,
  w,
  x,
  y 
)
Value:
do { \
mp_limb_t __x = (x); \
mp_limb_t __y = (y); \
mp_limb_t __w = __x + __y; \
(w) = __w; \
(cout) = __w < __x; \
} while (0)
int w
Definition: dviconv.c:26
kerning y
Definition: ttdriver.c:212
float x
Definition: cordic.py:15

Definition at line 2646 of file gmp-impl.h.

◆ ALLOC

#define ALLOC (   x)    ((x)->_mp_alloc)

Definition at line 549 of file gmp-impl.h.

◆ ASM_L

#define ASM_L (   name)    LSYM_PREFIX "asm_%=_" #name

Definition at line 783 of file gmp-impl.h.

◆ ASSERT

#define ASSERT (   expr)    do {} while (0)

Definition at line 2444 of file gmp-impl.h.

◆ ASSERT_ALWAYS

#define ASSERT_ALWAYS (   expr)
Value:
do { \
if (UNLIKELY (!(expr))) \
ASSERT_FAIL (expr); \
} while (0)
#define UNLIKELY(cond)
Definition: gmp-impl.h:532
static void expr(LexState *ls, expdesc *v)
Definition: lparser.c:1079

Definition at line 2435 of file gmp-impl.h.

◆ ASSERT_ALWAYS_LIMB

#define ASSERT_ALWAYS_LIMB (   limb)
Value:
do { \
mp_limb_t __nail = (limb) & GMP_NAIL_MASK; \
ASSERT_ALWAYS (__nail == 0); \
} while (0)
#define GMP_NAIL_MASK
Definition: gmp.h:49

Definition at line 2499 of file gmp-impl.h.

◆ ASSERT_ALWAYS_MPN

#define ASSERT_ALWAYS_MPN (   ptr,
  size 
)
Value:
do { \
/* let whole loop go dead when no nails */ \
if (GMP_NAIL_BITS != 0) \
{ \
mp_size_t __i; \
for (__i = 0; __i < (size); __i++) \
ASSERT_ALWAYS_LIMB ((ptr)[__i]); \
} \
} while (0)
#define ASSERT_ALWAYS_LIMB(limb)
Definition: gmp-impl.h:2499
#define GMP_NAIL_BITS
Definition: gmp.h:44

Definition at line 2504 of file gmp-impl.h.

◆ ASSERT_CARRY

#define ASSERT_CARRY (   expr)    (expr)

Definition at line 2458 of file gmp-impl.h.

◆ ASSERT_CODE

#define ASSERT_CODE (   expr)

Definition at line 2468 of file gmp-impl.h.

◆ ASSERT_FAIL

#define ASSERT_FAIL (   expr)    __gmp_assert_fail (ASSERT_FILE, ASSERT_LINE, #expr)

Definition at line 2433 of file gmp-impl.h.

◆ ASSERT_FILE

#define ASSERT_FILE   ""

Definition at line 2427 of file gmp-impl.h.

◆ ASSERT_LIMB

#define ASSERT_LIMB (   limb)    do {} while (0)

Definition at line 2518 of file gmp-impl.h.

◆ ASSERT_LINE

#define ASSERT_LINE   -1

Definition at line 2421 of file gmp-impl.h.

◆ ASSERT_MPN

#define ASSERT_MPN (   ptr,
  size 
)    do {} while (0)

Definition at line 2519 of file gmp-impl.h.

◆ ASSERT_MPN_NONZERO_P

#define ASSERT_MPN_NONZERO_P (   ptr,
  size 
)    do {} while (0)

Definition at line 2548 of file gmp-impl.h.

◆ ASSERT_MPN_ZERO_P

#define ASSERT_MPN_ZERO_P (   ptr,
  size 
)    do {} while (0)

Definition at line 2547 of file gmp-impl.h.

◆ ASSERT_MPQ_CANONICAL

#define ASSERT_MPQ_CANONICAL (   q)    do {} while (0)

Definition at line 2495 of file gmp-impl.h.

◆ ASSERT_NOCARRY

#define ASSERT_NOCARRY (   expr)    (expr)

Definition at line 2459 of file gmp-impl.h.

◆ ATTRIBUTE_CONST

#define ATTRIBUTE_CONST

Definition at line 269 of file gmp-impl.h.

◆ ATTRIBUTE_MALLOC

#define ATTRIBUTE_MALLOC

Definition at line 283 of file gmp-impl.h.

◆ ATTRIBUTE_NORETURN

#define ATTRIBUTE_NORETURN

Definition at line 275 of file gmp-impl.h.

◆ BELOW_THRESHOLD

#define BELOW_THRESHOLD (   size,
  thresh 
)    (! ABOVE_THRESHOLD (size, thresh))

Definition at line 1368 of file gmp-impl.h.

◆ BINV_NEWTON_THRESHOLD

#define BINV_NEWTON_THRESHOLD   300

Definition at line 2241 of file gmp-impl.h.

◆ binvert_limb

#define binvert_limb (   inv,
  n 
)
Value:
do { \
mp_limb_t __n = (n); \
mp_limb_t __inv; \
ASSERT ((__n & 1) == 1); \
\
__inv = binvert_limb_table[(__n/2) & 0x7F]; /* 8 */ \
if (GMP_NUMB_BITS > 8) __inv = 2 * __inv - __inv * __inv * __n; \
if (GMP_NUMB_BITS > 16) __inv = 2 * __inv - __inv * __inv * __n; \
if (GMP_NUMB_BITS > 32) __inv = 2 * __inv - __inv * __inv * __n; \
\
if (GMP_NUMB_BITS > 64) \
{ \
int __invbits = 64; \
do { \
__inv = 2 * __inv - __inv * __inv * __n; \
__invbits *= 2; \
} while (__invbits < GMP_NUMB_BITS); \
} \
ASSERT ((__inv * __n & GMP_NUMB_MASK) == 1); \
(inv) = __inv & GMP_NUMB_MASK; \
} while (0)
#define GMP_NUMB_MASK
Definition: asl.h:47
#define n
Definition: t4ht.c:1290
#define ASSERT(expr)
Definition: gmp-impl.h:2444
#define binvert_limb_table
Definition: gmp-impl.h:3303
#define GMP_NUMB_BITS
Definition: gmp.h:46
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp *numpix else pixst endif endm macro pixld1_s mem_operand if asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl elseif asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl else error unsupported endif endm macro pixld2_s mem_operand if mov asr add asl add asl mov asr sub UNIT_X add asl mov asr add asl add asl mov asr add UNIT_X add asl else pixld1_s mem_operand pixld1_s mem_operand endif endm macro pixld0_s mem_operand if asr adds SRC_WIDTH_FIXED bpl add asl elseif asr adds SRC_WIDTH_FIXED bpl add asl endif endm macro pixld_s_internal mem_operand if mem_operand pixld2_s mem_operand pixdeinterleave basereg elseif mem_operand elseif mem_operand elseif mem_operand elseif mem_operand pixld0_s mem_operand else pixld0_s mem_operand pixld0_s mem_operand pixld0_s mem_operand pixld0_s mem_operand endif elseif mem_operand else pixld0_s mem_operand pixld0_s mem_operand endif elseif mem_operand else error unsupported mem_operand if bpp mem_operand endif endm macro vuzp8 reg2 vuzp d d &reg2 endm macro vzip8 reg2 vzip d d &reg2 endm macro pixdeinterleave basereg basereg basereg basereg basereg endif endm macro pixinterleave basereg basereg basereg basereg basereg endif endm macro PF boost_increment endif if endif PF tst PF addne PF subne PF cmp ORIG_W if endif if endif if endif PF subge ORIG_W PF subges if endif if endif if endif endif endm macro cache_preload_simple endif if dst_r_bpp pld[DST_R, #(PREFETCH_DISTANCE_SIMPLE *dst_r_bpp/8)] endif if mask_bpp pld if[MASK, #(PREFETCH_DISTANCE_SIMPLE *mask_bpp/8)] endif endif endm macro fetch_mask_pixblock pixld mask_basereg pixblock_size MASK endm macro ensure_destination_ptr_alignment process_pixblock_tail_head if beq irp skip1(dst_w_bpp<=(lowbit *8)) &&((lowbit *8)<(pixblock_size *dst_w_bpp)) .if lowbit< 16 tst DST_R

Definition at line 3306 of file gmp-impl.h.

◆ binvert_limb_table

#define binvert_limb_table   __gmp_binvert_limb_table

Definition at line 3303 of file gmp-impl.h.

◆ BITS_PER_ULONG

#define BITS_PER_ULONG   (8 * SIZEOF_UNSIGNED_LONG)

Definition at line 228 of file gmp-impl.h.

◆ BITS_TO_LIMBS

#define BITS_TO_LIMBS (   n)    (((n) + (GMP_NUMB_BITS - 1)) / GMP_NUMB_BITS)

Definition at line 2985 of file gmp-impl.h.

◆ BMOD_1_TO_MOD_1_THRESHOLD

#define BMOD_1_TO_MOD_1_THRESHOLD   10

Definition at line 3251 of file gmp-impl.h.

◆ BSWAP_LIMB

#define BSWAP_LIMB (   dst,
  src 
)
Value:
do { \
(dst) = \
((src) << 56) \
+ (((src) & 0xFF00) << 40) \
+ (((src) & 0xFF0000) << 24) \
+ (((src) & 0xFF000000) << 8) \
+ (((src) >> 8) & 0xFF000000) \
+ (((src) >> 24) & 0xFF0000) \
+ (((src) >> 40) & 0xFF00) \
+ ((src) >> 56); \
} while (0)

Definition at line 3534 of file gmp-impl.h.

◆ BSWAP_LIMB_FETCH

#define BSWAP_LIMB_FETCH (   limb,
  src 
)    BSWAP_LIMB (limb, *(src))

Definition at line 3586 of file gmp-impl.h.

◆ BSWAP_LIMB_STORE

#define BSWAP_LIMB_STORE (   dst,
  limb 
)    BSWAP_LIMB (*(dst), limb)

Definition at line 3610 of file gmp-impl.h.

◆ CNST_LIMB

#define CNST_LIMB (   C)    ((mp_limb_t) C##LL)

Definition at line 3935 of file gmp-impl.h.

◆ CPUVEC_THRESHOLD

#define CPUVEC_THRESHOLD (   field)
Value:
((LIKELY (__gmpn_cpuvec_initialized) ? 0 : (__gmpn_cpuvec_init (), 0)), \
__gmpn_cpuvec.field)
#define LIKELY(cond)
Definition: gmp-impl.h:531
void __gmpn_cpuvec_init(void)

Definition at line 4708 of file gmp-impl.h.

◆ CRAY_Pragma

#define CRAY_Pragma (   str)    __GMP_CRAY_Pragma(str)

Definition at line 529 of file gmp-impl.h.

◆ DC_BDIV_Q_THRESHOLD

#define DC_BDIV_Q_THRESHOLD   180

Definition at line 2221 of file gmp-impl.h.

◆ DC_BDIV_QR_THRESHOLD

#define DC_BDIV_QR_THRESHOLD   (2*MUL_TOOM22_THRESHOLD)

Definition at line 2217 of file gmp-impl.h.

◆ DC_DIV_QR_THRESHOLD

#define DC_DIV_QR_THRESHOLD   (2*MUL_TOOM22_THRESHOLD)

Definition at line 2209 of file gmp-impl.h.

◆ DC_DIVAPPR_Q_THRESHOLD

#define DC_DIVAPPR_Q_THRESHOLD   200

Definition at line 2213 of file gmp-impl.h.

◆ DECL_add_n

Definition at line 66 of file gmp-impl.h.

◆ DECL_addlsh1_n

#define DECL_addlsh1_n (   name)     DECL_add_n (name)

Definition at line 68 of file gmp-impl.h.

◆ DECL_addlsh2_n

#define DECL_addlsh2_n (   name)     DECL_add_n (name)

Definition at line 70 of file gmp-impl.h.

◆ DECL_addmul_1

Definition at line 72 of file gmp-impl.h.

◆ DECL_addmul_2

Definition at line 74 of file gmp-impl.h.

◆ DECL_bdiv_dbm1c

Definition at line 76 of file gmp-impl.h.

◆ DECL_cnd_add_n

Definition at line 78 of file gmp-impl.h.

◆ DECL_cnd_sub_n

Definition at line 80 of file gmp-impl.h.

◆ DECL_com

Definition at line 82 of file gmp-impl.h.

◆ DECL_copyd

#define DECL_copyd (   name)     __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t)

Definition at line 84 of file gmp-impl.h.

◆ DECL_copyi

#define DECL_copyi (   name)     DECL_copyd (name)

Definition at line 86 of file gmp-impl.h.

◆ DECL_divexact_1

#define DECL_divexact_1 (   name)     __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)

Definition at line 88 of file gmp-impl.h.

◆ DECL_divexact_by3c

#define DECL_divexact_by3c (   name)     __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, mp_limb_t)

Definition at line 90 of file gmp-impl.h.

◆ DECL_divrem_1

Definition at line 92 of file gmp-impl.h.

◆ DECL_gcd_11

#define DECL_gcd_11 (   name)     __GMP_DECLSPEC mp_limb_t name (mp_limb_t, mp_limb_t)

Definition at line 94 of file gmp-impl.h.

◆ DECL_lshift

#define DECL_lshift (   name)     __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, unsigned)

Definition at line 96 of file gmp-impl.h.

◆ DECL_lshiftc

#define DECL_lshiftc (   name)     DECL_lshift (name)

Definition at line 98 of file gmp-impl.h.

◆ DECL_mod_1

Definition at line 100 of file gmp-impl.h.

◆ DECL_mod_1_1p

Definition at line 102 of file gmp-impl.h.

◆ DECL_mod_1_1p_cps

#define DECL_mod_1_1p_cps (   name)     __GMP_DECLSPEC void name (mp_limb_t cps[], mp_limb_t b)

Definition at line 104 of file gmp-impl.h.

◆ DECL_mod_1s_2p

#define DECL_mod_1s_2p (   name)     DECL_mod_1_1p (name)

Definition at line 106 of file gmp-impl.h.

◆ DECL_mod_1s_2p_cps

#define DECL_mod_1s_2p_cps (   name)     DECL_mod_1_1p_cps (name)

Definition at line 108 of file gmp-impl.h.

◆ DECL_mod_1s_4p

#define DECL_mod_1s_4p (   name)     DECL_mod_1_1p (name)

Definition at line 110 of file gmp-impl.h.

◆ DECL_mod_1s_4p_cps

#define DECL_mod_1s_4p_cps (   name)     DECL_mod_1_1p_cps (name)

Definition at line 112 of file gmp-impl.h.

◆ DECL_mod_34lsub1

#define DECL_mod_34lsub1 (   name)     __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t)

Definition at line 114 of file gmp-impl.h.

◆ DECL_modexact_1c_odd

#define DECL_modexact_1c_odd (   name)     __GMP_DECLSPEC mp_limb_t name (mp_srcptr, mp_size_t, mp_limb_t, mp_limb_t)

Definition at line 116 of file gmp-impl.h.

◆ DECL_mul_1

#define DECL_mul_1 (   name)     DECL_addmul_1 (name)

Definition at line 118 of file gmp-impl.h.

◆ DECL_mul_basecase

Definition at line 120 of file gmp-impl.h.

◆ DECL_mullo_basecase

#define DECL_mullo_basecase (   name)     __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_srcptr, mp_size_t)

Definition at line 122 of file gmp-impl.h.

◆ DECL_preinv_divrem_1

Definition at line 124 of file gmp-impl.h.

◆ DECL_preinv_mod_1

Definition at line 126 of file gmp-impl.h.

◆ DECL_redc_1

Definition at line 128 of file gmp-impl.h.

◆ DECL_redc_2

Definition at line 130 of file gmp-impl.h.

◆ DECL_rshift

#define DECL_rshift (   name)     DECL_lshift (name)

Definition at line 132 of file gmp-impl.h.

◆ DECL_sqr_basecase

#define DECL_sqr_basecase (   name)     __GMP_DECLSPEC void name (mp_ptr, mp_srcptr, mp_size_t)

Definition at line 134 of file gmp-impl.h.

◆ DECL_sub_n

#define DECL_sub_n (   name)     DECL_add_n (name)

Definition at line 136 of file gmp-impl.h.

◆ DECL_sublsh1_n

#define DECL_sublsh1_n (   name)     DECL_add_n (name)

Definition at line 138 of file gmp-impl.h.

◆ DECL_submul_1

#define DECL_submul_1 (   name)     DECL_addmul_1 (name)

Definition at line 140 of file gmp-impl.h.

◆ DEN

#define DEN (   x)    mpq_denref(x)

Definition at line 551 of file gmp-impl.h.

◆ DIGITS_IN_BASE_FROM_BITS

#define DIGITS_IN_BASE_FROM_BITS (   res,
  nbits,
  b 
)
Value:
do { \
mp_limb_t _ph, _dummy; \
size_t _nbits = (nbits); \
umul_ppmm (_ph, _dummy, mp_bases[b].logb2, _nbits); \
_ph += (_dummy + _nbits < _dummy); \
res = _ph + 1; \
} while (0)
#define b
Definition: jpegint.h:372
#define mp_bases
Definition: gmp-impl.h:2910
register bit_buf_type register int int nbits
Definition: jdhuff.h:156
_dummy
Definition: sec_div.c:123

Definition at line 2917 of file gmp-impl.h.

◆ DIGITS_IN_BASE_PER_LIMB

#define DIGITS_IN_BASE_PER_LIMB (   res,
  nlimbs,
  b 
)
Value:
do { \
mp_limb_t _ph, _dummy; \
umul_ppmm (_ph, _dummy, \
mp_bases[b].logb2, GMP_NUMB_BITS * (mp_limb_t) (nlimbs));\
res = _ph; \
} while (0)
Definition: asl.h:63

Definition at line 4378 of file gmp-impl.h.

◆ DIGITS_IN_BASEGT2_FROM_BITS

#define DIGITS_IN_BASEGT2_FROM_BITS (   res,
  nbits,
  b 
)
Value:
do { \
mp_limb_t _ph, _dummy; \
size_t _nbits = (nbits); \
umul_ppmm (_ph, _dummy, mp_bases[b].logb2 + 1, _nbits); \
res = _ph + 1; \
} while (0)

Definition at line 2925 of file gmp-impl.h.

◆ DIVEXACT_1_THRESHOLD

#define DIVEXACT_1_THRESHOLD   0

Definition at line 3248 of file gmp-impl.h.

◆ DIVEXACT_BY3_METHOD

#define DIVEXACT_BY3_METHOD   0 /* default to using mpn_bdiv_dbm1c */

Definition at line 1653 of file gmp-impl.h.

◆ DIVEXACT_JEB_THRESHOLD

#define DIVEXACT_JEB_THRESHOLD   25

Definition at line 2225 of file gmp-impl.h.

◆ DIVIDE_BY_ZERO

#define DIVIDE_BY_ZERO   __gmp_divide_by_zero ()

Definition at line 3931 of file gmp-impl.h.

◆ DOPRNT_CONV_FIXED

#define DOPRNT_CONV_FIXED   1

Definition at line 4442 of file gmp-impl.h.

◆ DOPRNT_CONV_GENERAL

#define DOPRNT_CONV_GENERAL   3

Definition at line 4444 of file gmp-impl.h.

◆ DOPRNT_CONV_SCIENTIFIC

#define DOPRNT_CONV_SCIENTIFIC   2

Definition at line 4443 of file gmp-impl.h.

◆ DOPRNT_JUSTIFY_INTERNAL

#define DOPRNT_JUSTIFY_INTERNAL   3

Definition at line 4449 of file gmp-impl.h.

◆ DOPRNT_JUSTIFY_LEFT

#define DOPRNT_JUSTIFY_LEFT   1

Definition at line 4447 of file gmp-impl.h.

◆ DOPRNT_JUSTIFY_NONE

#define DOPRNT_JUSTIFY_NONE   0

Definition at line 4446 of file gmp-impl.h.

◆ DOPRNT_JUSTIFY_RIGHT

#define DOPRNT_JUSTIFY_RIGHT   2

Definition at line 4448 of file gmp-impl.h.

◆ DOPRNT_SHOWBASE_NO

#define DOPRNT_SHOWBASE_NO   2

Definition at line 4452 of file gmp-impl.h.

◆ DOPRNT_SHOWBASE_NONZERO

#define DOPRNT_SHOWBASE_NONZERO   3

Definition at line 4453 of file gmp-impl.h.

◆ DOPRNT_SHOWBASE_YES

#define DOPRNT_SHOWBASE_YES   1

Definition at line 4451 of file gmp-impl.h.

◆ DOUBLE_NAN_INF_ACTION

#define DOUBLE_NAN_INF_ACTION (   x,
  a_nan,
  a_inf 
)
Value:
do { \
u.d = (x); \
if (UNLIKELY (u.s.exp == 0x7FF)) \
{ \
if (u.s.manl == 0 && u.s.manh == 0) \
{ a_inf; } \
else \
{ a_nan; } \
} \
} while (0)
small capitals from c petite p scientific f u
Definition: afcover.h:88

Definition at line 3861 of file gmp-impl.h.

◆ EXP

#define EXP (   x)    ((x)->_mp_exp)

Definition at line 547 of file gmp-impl.h.

◆ FAC_DSC_THRESHOLD

#define FAC_DSC_THRESHOLD   400

Definition at line 2381 of file gmp-impl.h.

◆ FAC_ODD_THRESHOLD

#define FAC_ODD_THRESHOLD   35

Definition at line 2377 of file gmp-impl.h.

◆ FFT_FIRST_K

#define FFT_FIRST_K   4

Definition at line 2297 of file gmp-impl.h.

◆ FFT_TABLE_ATTRS

#define FFT_TABLE_ATTRS   static const

Definition at line 2350 of file gmp-impl.h.

◆ FIB_TABLE

#define FIB_TABLE (   n)    (__gmp_fib_table[(n)+1])

Definition at line 2046 of file gmp-impl.h.

◆ FORCE_DOUBLE

#define FORCE_DOUBLE (   d)     do { volatile double __gmp_force = (d); (d) = __gmp_force; } while (0)

Definition at line 3915 of file gmp-impl.h.

◆ GCD_DC_THRESHOLD

#define GCD_DC_THRESHOLD   1000

Definition at line 4336 of file gmp-impl.h.

◆ GCDEXT_DC_THRESHOLD

#define GCDEXT_DC_THRESHOLD   600

Definition at line 4340 of file gmp-impl.h.

◆ GET_STR_DC_THRESHOLD

#define GET_STR_DC_THRESHOLD   18

Definition at line 2361 of file gmp-impl.h.

◆ GET_STR_PRECOMPUTE_THRESHOLD

#define GET_STR_PRECOMPUTE_THRESHOLD   35

Definition at line 2365 of file gmp-impl.h.

◆ GMP_DECIMAL_POINT

#define GMP_DECIMAL_POINT   (".")

Definition at line 4438 of file gmp-impl.h.

◆ GMP_ERROR

#define GMP_ERROR (   code)    __gmp_exception (code)

Definition at line 3930 of file gmp-impl.h.

◆ gmp_init_primesieve

#define gmp_init_primesieve   __gmp_init_primesieve

Definition at line 2071 of file gmp-impl.h.

◆ GMP_LIMB_BYTES

#define GMP_LIMB_BYTES   SIZEOF_MP_LIMB_T

Definition at line 222 of file gmp-impl.h.

◆ GMP_LIMB_HIGHBIT

#define GMP_LIMB_HIGHBIT   (MP_LIMB_T_MAX ^ (MP_LIMB_T_MAX >> 1))

Definition at line 574 of file gmp-impl.h.

◆ GMP_NAIL_LOWBIT

#define GMP_NAIL_LOWBIT   CNST_LIMB(0)

Definition at line 596 of file gmp-impl.h.

◆ gmp_nextprime

#define gmp_nextprime   __gmp_nextprime

Definition at line 2074 of file gmp-impl.h.

◆ GMP_NUMB_CEIL_2MAX_DIV3

#define GMP_NUMB_CEIL_2MAX_DIV3   ((GMP_NUMB_MAX>>1) / 3 + 1 + GMP_NUMB_HIGHBIT)

Definition at line 3340 of file gmp-impl.h.

◆ GMP_NUMB_CEIL_MAX_DIV3

#define GMP_NUMB_CEIL_MAX_DIV3   (GMP_NUMB_MAX / 3 + 1)

Definition at line 3339 of file gmp-impl.h.

◆ GMP_NUMB_HIGHBIT

#define GMP_NUMB_HIGHBIT   (CNST_LIMB(1) << (GMP_NUMB_BITS-1))

Definition at line 593 of file gmp-impl.h.

◆ gmp_primesieve

#define gmp_primesieve   __gmp_primesieve

Definition at line 2077 of file gmp-impl.h.

◆ HGCD_APPR_THRESHOLD

#define HGCD_APPR_THRESHOLD   400

Definition at line 4328 of file gmp-impl.h.

◆ HGCD_REDUCE_THRESHOLD

#define HGCD_REDUCE_THRESHOLD   1000

Definition at line 4332 of file gmp-impl.h.

◆ HGCD_THRESHOLD

#define HGCD_THRESHOLD   400

Definition at line 4324 of file gmp-impl.h.

◆ INT_HIGHBIT

#define INT_HIGHBIT   INT_MIN

Definition at line 589 of file gmp-impl.h.

◆ INV_APPR_THRESHOLD

#define INV_APPR_THRESHOLD   INV_NEWTON_THRESHOLD

Definition at line 2233 of file gmp-impl.h.

◆ INV_MULMOD_BNM1_THRESHOLD

#define INV_MULMOD_BNM1_THRESHOLD   (4*MULMOD_BNM1_THRESHOLD)

Definition at line 2229 of file gmp-impl.h.

◆ INV_NEWTON_THRESHOLD

#define INV_NEWTON_THRESHOLD   200

Definition at line 2237 of file gmp-impl.h.

◆ invert_limb

#define invert_limb (   invxl,
  xl 
)
Value:
do { \
mp_limb_t _dummy; \
ASSERT ((xl) != 0); \
udiv_qrnnd (invxl, _dummy, ~(xl), ~CNST_LIMB(0), xl); \
} while (0)
#define CNST_LIMB(C)
Definition: gmp-impl.h:3935

Definition at line 3056 of file gmp-impl.h.

◆ invert_pi1

#define invert_pi1 (   dinv,
  d1,
  d0 
)
Value:
do { \
mp_limb_t _v, _p, _t1, _t0, _mask; \
invert_limb (_v, d1); \
_p = (d1) * _v; \
_p += (d0); \
if (_p < (d0)) \
{ \
_v--; \
_mask = -(mp_limb_t) (_p >= (d1)); \
_p -= (d1); \
_v += _mask; \
_p -= _mask & (d1); \
} \
umul_ppmm (_t1, _t0, d0, _v); \
_p += _t1; \
if (_p < _t1) \
{ \
_v--; \
if (UNLIKELY (_p >= (d1))) \
{ \
if (_p > (d1) || _t0 >= (d0)) \
_v--; \
} \
} \
(dinv).inv32 = _v; \
} while (0)
unsigned long long int mp_limb_t
Definition: gmp.h:138
d0
Definition: sec_div.c:122
d1
Definition: sec_div.c:81
mp_limb_t inv32
Definition: sec_div.c:75
RETTYPE mp_ptr mp_size_t mp_srcptr mp_size_t mp_limb_t dinv
Definition: sec_pi1_div.c:81

Definition at line 3064 of file gmp-impl.h.

◆ JACOBI_0LS

#define JACOBI_0LS (   blow,
  bsize 
)     (((bsize) == 1 || (bsize) == -1) && (blow) == 1)

Definition at line 4015 of file gmp-impl.h.

◆ JACOBI_0S

#define JACOBI_0S (   b)    ((b) == 1 || (b) == -1)

Definition at line 4012 of file gmp-impl.h.

◆ JACOBI_0U

#define JACOBI_0U (   b)    ((b) == 1)

Definition at line 4009 of file gmp-impl.h.

◆ JACOBI_ASGN_SU_BIT1

#define JACOBI_ASGN_SU_BIT1 (   a,
  b 
)     ((((a) < 0) << 1) & JACOBI_N1B_BIT1(b))

Definition at line 4043 of file gmp-impl.h.

◆ JACOBI_BIT1_TO_PN

#define JACOBI_BIT1_TO_PN (   result_bit1)     (1 - ((int) (result_bit1) & 2))

Definition at line 4019 of file gmp-impl.h.

◆ JACOBI_BSGN_SS_BIT1

#define JACOBI_BSGN_SS_BIT1 (   a,
  b 
)     ((((a)<0) & ((b)<0)) << 1)

Definition at line 4048 of file gmp-impl.h.

◆ JACOBI_BSGN_SZ_BIT1

#define JACOBI_BSGN_SZ_BIT1 (   a,
  b 
)     JACOBI_BSGN_SS_BIT1 (a, SIZ(b))

Definition at line 4053 of file gmp-impl.h.

◆ JACOBI_BSGN_ZS_BIT1

#define JACOBI_BSGN_ZS_BIT1 (   a,
  b 
)     JACOBI_BSGN_SZ_BIT1 (b, a)

Definition at line 4058 of file gmp-impl.h.

◆ JACOBI_LS0

#define JACOBI_LS0 (   alow,
  asize 
)     (((asize) == 1 || (asize) == -1) && (alow) == 1)

Definition at line 4001 of file gmp-impl.h.

◆ JACOBI_MOD_OR_MODEXACT_1_ODD

#define JACOBI_MOD_OR_MODEXACT_1_ODD (   result_bit1,
  a_rem,
  a_ptr,
  a_size,
  b 
)
Value:
do { \
mp_srcptr __a_ptr = (a_ptr); \
mp_size_t __a_size = (a_size); \
mp_limb_t __b = (b); \
ASSERT (__a_size >= 1); \
ASSERT (__b & 1); \
if ((GMP_NUMB_BITS % 2) != 0 \
{ \
(a_rem) = mpn_mod_1 (__a_ptr, __a_size, __b); \
} \
else \
{ \
(result_bit1) ^= JACOBI_N1B_BIT1 (__b); \
(a_rem) = mpn_modexact_1_odd (__a_ptr, __a_size, __b); \
} \
} while (0)
#define ABOVE_THRESHOLD(size, thresh)
Definition: gmp-impl.h:1358
#define JACOBI_N1B_BIT1(b)
Definition: gmp-impl.h:4038
#define mpn_modexact_1_odd(src, size, divisor)
Definition: gmp-impl.h:3274
#define BMOD_1_TO_MOD_1_THRESHOLD
Definition: gmp-impl.h:3251
#define mpn_mod_1
Definition: gmp.h:1540

Definition at line 4105 of file gmp-impl.h.

◆ JACOBI_N1B_BIT1

#define JACOBI_N1B_BIT1 (   b)     ((int) (b))

Definition at line 4038 of file gmp-impl.h.

◆ JACOBI_RECIP_UU_BIT1

#define JACOBI_RECIP_UU_BIT1 (   a,
  b 
)     ((int) ((a) & (b)))

Definition at line 4066 of file gmp-impl.h.

◆ JACOBI_S0

#define JACOBI_S0 (   a)    (((a) == 1) | ((a) == -1))

Definition at line 3991 of file gmp-impl.h.

◆ JACOBI_STRIP_LOW_ZEROS

#define JACOBI_STRIP_LOW_ZEROS (   result_bit1,
  a,
  b_ptr,
  b_size,
  b_low 
)
Value:
do { \
ASSERT ((b_size) >= 1); \
ASSERT ((b_low) == (b_ptr)[0]); \
while (UNLIKELY ((b_low) == 0)) \
{ \
(b_size)--; \
ASSERT ((b_size) >= 1); \
(b_ptr)++; \
(b_low) = *(b_ptr); \
ASSERT (((a) & 1) != 0); \
if ((GMP_NUMB_BITS % 2) == 1) \
(result_bit1) ^= JACOBI_TWO_U_BIT1(a); \
} \
} while (0)
#define JACOBI_TWO_U_BIT1(b)
Definition: gmp-impl.h:4025
#define a(n)
Definition: gpos-common.c:148
while(temp)
Definition: t4ht.c:858

Definition at line 4073 of file gmp-impl.h.

◆ jacobi_table

#define jacobi_table   __gmp_jacobi_table

Definition at line 4127 of file gmp-impl.h.

◆ JACOBI_TWO_U_BIT1

#define JACOBI_TWO_U_BIT1 (   b)     ((int) (((b) >> 1) ^ (b)))

Definition at line 4025 of file gmp-impl.h.

◆ JACOBI_TWOS_U

#define JACOBI_TWOS_U (   twos,
  b 
)     (JACOBI_BIT1_TO_PN (JACOBI_TWOS_U_BIT1 (twos, b)))

Definition at line 4033 of file gmp-impl.h.

◆ JACOBI_TWOS_U_BIT1

#define JACOBI_TWOS_U_BIT1 (   twos,
  b 
)     ((int) ((twos) << 1) & JACOBI_TWO_U_BIT1 (b))

Definition at line 4029 of file gmp-impl.h.

◆ JACOBI_U0

#define JACOBI_U0 (   a)    ((a) == 1)

Definition at line 3994 of file gmp-impl.h.

◆ JACOBI_Z0

#define JACOBI_Z0 (   a)    JACOBI_LS0 (PTR(a)[0], SIZ(a))

Definition at line 4006 of file gmp-impl.h.

◆ LIKELY

#define LIKELY (   cond)    __GMP_LIKELY(cond)

Definition at line 531 of file gmp-impl.h.

◆ LIMB_HIGHBIT_TO_MASK

#define LIMB_HIGHBIT_TO_MASK (   n)
Value:
(((mp_limb_signed_t) -1 >> 1) < 0 \
? (mp_limb_signed_t) (n) >> (GMP_LIMB_BITS - 1) \
#define GMP_LIMB_BITS
Definition: asl.h:44
#define GMP_LIMB_HIGHBIT
Definition: gmp-impl.h:574
#define MP_LIMB_T_MAX
Definition: gmp-impl.h:566
long long int mp_limb_signed_t
Definition: gmp.h:139

Definition at line 3039 of file gmp-impl.h.

◆ LIMBS_PER_DIGIT_IN_BASE

#define LIMBS_PER_DIGIT_IN_BASE (   res,
  ndigits,
  b 
)
Value:
do { \
mp_limb_t _ph, _dummy; \
umul_ppmm (_ph, _dummy, mp_bases[b].log2b, (mp_limb_t) (ndigits)); \
res = 8 * _ph / GMP_NUMB_BITS + 2; \
} while (0)

Definition at line 4388 of file gmp-impl.h.

◆ LIMBS_PER_DOUBLE

#define LIMBS_PER_DOUBLE   ((53 + GMP_NUMB_BITS - 2) / GMP_NUMB_BITS + 1)

Definition at line 3848 of file gmp-impl.h.

◆ LIMBS_PER_ULONG

#define LIMBS_PER_ULONG   1

Definition at line 2992 of file gmp-impl.h.

◆ LOG2C

#define LOG2C (   n)
Value:
(((n) >= 0x1) + ((n) >= 0x2) + ((n) >= 0x4) + ((n) >= 0x8) + \
((n) >= 0x10) + ((n) >= 0x20) + ((n) >= 0x40) + ((n) >= 0x80) + \
((n) >= 0x100) + ((n) >= 0x200) + ((n) >= 0x400) + ((n) >= 0x800) + \
((n) >= 0x1000) + ((n) >= 0x2000) + ((n) >= 0x4000) + ((n) >= 0x8000))

Definition at line 560 of file gmp-impl.h.

◆ LONG_HIGHBIT

#define LONG_HIGHBIT   LONG_MIN

Definition at line 588 of file gmp-impl.h.

◆ LOW_ZEROS_MASK

#define LOW_ZEROS_MASK (   n)    (((n) & -(n)) - 1)

Definition at line 3374 of file gmp-impl.h.

◆ MATRIX22_STRASSEN_THRESHOLD

#define MATRIX22_STRASSEN_THRESHOLD   30

Definition at line 4197 of file gmp-impl.h.

◆ MAX

#define MAX (   h,
  i 
)    ((h) > (i) ? (h) : (i))

Definition at line 540 of file gmp-impl.h.

◆ MEM_OVERLAP_P

#define MEM_OVERLAP_P (   xp,
  xsize,
  yp,
  ysize 
)
Value:
( (char *) (xp) + (xsize) > (char *) (yp) \
&& (char *) (yp) + (ysize) > (char *) (xp))
#define xp
static int ysize
Definition: ppmtopjxl.c:42
static int xsize
Definition: ppmtopjxl.c:41

Definition at line 2389 of file gmp-impl.h.

◆ MIN

#define MIN (   l,
 
)    ((l) < (o) ? (l) : (o))

Definition at line 538 of file gmp-impl.h.

◆ MODLIMB_INVERSE_3

#define MODLIMB_INVERSE_3   (((GMP_NUMB_MAX >> (GMP_NUMB_BITS % 2)) / 3) * 2 + 1)

Definition at line 3335 of file gmp-impl.h.

◆ modlimb_invert

#define modlimb_invert   binvert_limb /* backward compatibility */

Definition at line 3329 of file gmp-impl.h.

◆ MP_BASE_AS_DOUBLE

#define MP_BASE_AS_DOUBLE   (4.0 * ((mp_limb_t) 1 << (GMP_NUMB_BITS - 2)))

Definition at line 3845 of file gmp-impl.h.

◆ mp_bases

#define mp_bases   __MPN(bases)

Definition at line 2910 of file gmp-impl.h.

◆ MP_EXP_T_MAX

#define MP_EXP_T_MAX   MP_SIZE_T_MAX

Definition at line 585 of file gmp-impl.h.

◆ MP_EXP_T_MIN

#define MP_EXP_T_MIN   MP_SIZE_T_MIN

Definition at line 586 of file gmp-impl.h.

◆ MP_LIMB_T_MAX

#define MP_LIMB_T_MAX   (~ (mp_limb_t) 0)

Definition at line 566 of file gmp-impl.h.

◆ MP_LIMB_T_SWAP

#define MP_LIMB_T_SWAP (   x,
  y 
)
Value:
do { \
mp_limb_t __mp_limb_t_swap__tmp = (x); \
(x) = (y); \
(y) = __mp_limb_t_swap__tmp; \
} while (0)

Definition at line 631 of file gmp-impl.h.

◆ MP_PTR_SWAP

#define MP_PTR_SWAP (   x,
  y 
)
Value:
do { \
mp_ptr __mp_ptr_swap__tmp = (x); \
(x) = (y); \
(y) = __mp_ptr_swap__tmp; \
} while (0)

Definition at line 644 of file gmp-impl.h.

◆ MP_SIZE_T_MAX

#define MP_SIZE_T_MAX   LONG_MAX

Definition at line 580 of file gmp-impl.h.

◆ MP_SIZE_T_MIN

#define MP_SIZE_T_MIN   LONG_MIN

Definition at line 581 of file gmp-impl.h.

◆ MP_SIZE_T_SWAP

#define MP_SIZE_T_SWAP (   x,
  y 
)
Value:
do { \
mp_size_t __mp_size_t_swap__tmp = (x); \
(x) = (y); \
(y) = __mp_size_t_swap__tmp; \
} while (0)

Definition at line 637 of file gmp-impl.h.

◆ MP_SRCPTR_SWAP

#define MP_SRCPTR_SWAP (   x,
  y 
)
Value:
do { \
mp_srcptr __mp_srcptr_swap__tmp = (x); \
(x) = (y); \
(y) = __mp_srcptr_swap__tmp; \
} while (0)

Definition at line 650 of file gmp-impl.h.

◆ MPF_CHECK_FORMAT

#define MPF_CHECK_FORMAT (   f)
Value:
do { \
ASSERT_ALWAYS (PREC(f) >= __GMPF_BITS_TO_PREC(53)); \
ASSERT_ALWAYS (ABSIZ(f) <= PREC(f)+1); \
if (SIZ(f) == 0) \
ASSERT_ALWAYS (EXP(f) == 0); \
if (SIZ(f) != 0) \
ASSERT_ALWAYS (PTR(f)[ABSIZ(f) - 1] != 0); \
} while (0)
mpz_t * f
Definition: gen-fib.c:34
#define ABSIZ(x)
Definition: gmp-impl.h:545
#define EXP(x)
Definition: gmp-impl.h:547
#define SIZ(x)
Definition: gmp-impl.h:544
#define PTR(x)
Definition: gmp-impl.h:546
#define __GMPF_BITS_TO_PREC(n)
Definition: gmp-impl.h:4369
#define PREC(x)
Definition: gmp-impl.h:548

Definition at line 4635 of file gmp-impl.h.

◆ MPF_SIGNIFICANT_DIGITS

#define MPF_SIGNIFICANT_DIGITS (   n,
  base,
  prec 
)
Value:
do { \
size_t rawn; \
ASSERT (base >= 2 && base < numberof (mp_bases)); \
DIGITS_IN_BASE_PER_LIMB (rawn, (prec) - 1, base); \
n = rawn + 2; \
} while (0)
#define numberof(x)
Definition: gmp-impl.h:541
int base
Definition: gsftopk.c:1502

Definition at line 4408 of file gmp-impl.h.

◆ mpn_add_err1_n

#define mpn_add_err1_n   __MPN(add_err1_n)

Definition at line 1100 of file gmp-impl.h.

◆ mpn_add_err2_n

#define mpn_add_err2_n   __MPN(add_err2_n)

Definition at line 1103 of file gmp-impl.h.

◆ mpn_add_err3_n

#define mpn_add_err3_n   __MPN(add_err3_n)

Definition at line 1106 of file gmp-impl.h.

◆ mpn_add_n_sub_n

#define mpn_add_n_sub_n   __MPN(add_n_sub_n)

Definition at line 1118 of file gmp-impl.h.

◆ mpn_add_n_sub_nc

#define mpn_add_n_sub_nc   __MPN(add_n_sub_nc)

Definition at line 1121 of file gmp-impl.h.

◆ mpn_addaddmul_1msb0

#define mpn_addaddmul_1msb0   __MPN(addaddmul_1msb0)

Definition at line 1124 of file gmp-impl.h.

◆ mpn_addlsh1_n

#define mpn_addlsh1_n   __MPN(addlsh1_n)

Definition at line 969 of file gmp-impl.h.

◆ mpn_addlsh1_n_ip1

#define mpn_addlsh1_n_ip1   __MPN(addlsh1_n_ip1)

Definition at line 977 of file gmp-impl.h.

◆ mpn_addlsh1_nc

#define mpn_addlsh1_nc   __MPN(addlsh1_nc)

Definition at line 973 of file gmp-impl.h.

◆ mpn_addlsh1_nc_ip1

#define mpn_addlsh1_nc_ip1   __MPN(addlsh1_nc_ip1)

Definition at line 981 of file gmp-impl.h.

◆ mpn_addlsh2_n

#define mpn_addlsh2_n   __MPN(addlsh2_n)

Definition at line 986 of file gmp-impl.h.

◆ mpn_addlsh2_n_ip1

#define mpn_addlsh2_n_ip1   __MPN(addlsh2_n_ip1)

Definition at line 994 of file gmp-impl.h.

◆ mpn_addlsh2_nc

#define mpn_addlsh2_nc   __MPN(addlsh2_nc)

Definition at line 990 of file gmp-impl.h.

◆ mpn_addlsh2_nc_ip1

#define mpn_addlsh2_nc_ip1   __MPN(addlsh2_nc_ip1)

Definition at line 998 of file gmp-impl.h.

◆ mpn_addlsh_n

#define mpn_addlsh_n   __MPN(addlsh_n)

Definition at line 1003 of file gmp-impl.h.

◆ mpn_addlsh_n_ip1

#define mpn_addlsh_n_ip1   __MPN(addlsh_n_ip1)

Definition at line 1011 of file gmp-impl.h.

◆ mpn_addlsh_nc

#define mpn_addlsh_nc   __MPN(addlsh_nc)

Definition at line 1007 of file gmp-impl.h.

◆ mpn_addlsh_nc_ip1

#define mpn_addlsh_nc_ip1   __MPN(addlsh_nc_ip1)

Definition at line 1015 of file gmp-impl.h.

◆ mpn_addmul_1c

#define mpn_addmul_1c   __MPN(addmul_1c)

Definition at line 811 of file gmp-impl.h.

◆ mpn_addmul_2

#define mpn_addmul_2   __MPN(addmul_2)

Definition at line 815 of file gmp-impl.h.

◆ mpn_addmul_2s

#define mpn_addmul_2s   __MPN(addmul_2s)

Definition at line 838 of file gmp-impl.h.

◆ mpn_addmul_3

#define mpn_addmul_3   __MPN(addmul_3)

Definition at line 819 of file gmp-impl.h.

◆ mpn_addmul_4

#define mpn_addmul_4   __MPN(addmul_4)

Definition at line 822 of file gmp-impl.h.

◆ mpn_addmul_5

#define mpn_addmul_5   __MPN(addmul_5)

Definition at line 825 of file gmp-impl.h.

◆ mpn_addmul_6

#define mpn_addmul_6   __MPN(addmul_6)

Definition at line 828 of file gmp-impl.h.

◆ mpn_addmul_7

#define mpn_addmul_7   __MPN(addmul_7)

Definition at line 831 of file gmp-impl.h.

◆ mpn_addmul_8

#define mpn_addmul_8   __MPN(addmul_8)

Definition at line 834 of file gmp-impl.h.

◆ mpn_and_n

#define mpn_and_n (   rp,
  up,
  vp,
  n 
)     MPN_LOGOPS_N_INLINE (rp, up, vp, n, __a & __b)

Definition at line 2591 of file gmp-impl.h.

◆ mpn_andn_n

#define mpn_andn_n (   rp,
  up,
  vp,
  n 
)     MPN_LOGOPS_N_INLINE (rp, up, vp, n, __a & ~__b)

Definition at line 2597 of file gmp-impl.h.

◆ mpn_bc_mulmod_bnm1

#define mpn_bc_mulmod_bnm1   __MPN(bc_mulmod_bnm1)

Definition at line 1262 of file gmp-impl.h.

◆ mpn_bc_set_str

#define mpn_bc_set_str   __MPN(bc_set_str)

Definition at line 4361 of file gmp-impl.h.

◆ mpn_bdiv_dbm1

#define mpn_bdiv_dbm1 (   dst,
  src,
  size,
  divisor 
)     mpn_bdiv_dbm1c (dst, src, size, divisor, __GMP_CAST (mp_limb_t, 0))

Definition at line 1637 of file gmp-impl.h.

◆ mpn_bdiv_dbm1c

#define mpn_bdiv_dbm1c   __MPN(bdiv_dbm1c)

Definition at line 1633 of file gmp-impl.h.

◆ mpn_bdiv_q

#define mpn_bdiv_q   __MPN(bdiv_q)

Definition at line 1622 of file gmp-impl.h.

◆ mpn_bdiv_q_1

#define mpn_bdiv_q_1   __MPN(bdiv_q_1)

Definition at line 1582 of file gmp-impl.h.

◆ mpn_bdiv_q_itch

#define mpn_bdiv_q_itch   __MPN(bdiv_q_itch)

Definition at line 1624 of file gmp-impl.h.

◆ mpn_bdiv_qr

#define mpn_bdiv_qr   __MPN(bdiv_qr)

Definition at line 1617 of file gmp-impl.h.

◆ mpn_bdiv_qr_itch

#define mpn_bdiv_qr_itch   __MPN(bdiv_qr_itch)

Definition at line 1619 of file gmp-impl.h.

◆ mpn_binvert

#define mpn_binvert   __MPN(binvert)

Definition at line 1577 of file gmp-impl.h.

◆ mpn_binvert_itch

#define mpn_binvert_itch   __MPN(binvert_itch)

Definition at line 1579 of file gmp-impl.h.

◆ mpn_broot

#define mpn_broot   __MPN(broot)

Definition at line 1727 of file gmp-impl.h.

◆ mpn_broot_invm1

#define mpn_broot_invm1   __MPN(broot_invm1)

Definition at line 1730 of file gmp-impl.h.

◆ mpn_brootinv

#define mpn_brootinv   __MPN(brootinv)

Definition at line 1733 of file gmp-impl.h.

◆ mpn_bsqrt

#define mpn_bsqrt   __MPN(bsqrt)

Definition at line 1736 of file gmp-impl.h.

◆ mpn_bsqrtinv

#define mpn_bsqrtinv   __MPN(bsqrtinv)

Definition at line 1739 of file gmp-impl.h.

◆ MPN_BSWAP

#define MPN_BSWAP (   dst,
  src,
  size 
)
Value:
do { \
mp_ptr __dst = (dst); \
mp_srcptr __src = (src); \
mp_size_t __size = (size); \
mp_size_t __i; \
ASSERT ((size) >= 0); \
CRAY_Pragma ("_CRI ivdep"); \
for (__i = 0; __i < __size; __i++) \
{ \
BSWAP_LIMB_FETCH (*__dst, __src); \
__dst++; \
__src++; \
} \
} while (0)
#define MPN_SAME_OR_SEPARATE_P(xp, yp, size)
Definition: gmp-impl.h:2395

Definition at line 3615 of file gmp-impl.h.

◆ MPN_BSWAP_REVERSE

#define MPN_BSWAP_REVERSE (   dst,
  src,
  size 
)
Value:
do { \
mp_ptr __dst = (dst); \
mp_size_t __size = (size); \
mp_srcptr __src = (src) + __size - 1; \
mp_size_t __i; \
ASSERT ((size) >= 0); \
ASSERT (! MPN_OVERLAP_P (dst, size, src, size)); \
CRAY_Pragma ("_CRI ivdep"); \
for (__i = 0; __i < __size; __i++) \
{ \
BSWAP_LIMB_FETCH (*__dst, __src); \
__dst++; \
__src--; \
} \
} while (0)
#define MPN_OVERLAP_P(xp, xsize, yp, ysize)
Definition: gmp-impl.h:2387

Definition at line 3633 of file gmp-impl.h.

◆ MPN_CMP

#define MPN_CMP (   result,
  xp,
  yp,
  size 
)    __GMPN_CMP(result, xp, yp, size)

Definition at line 530 of file gmp-impl.h.

◆ mpn_com

#define mpn_com (   d,
  s,
  n 
)
Value:
do { \
mp_ptr __d = (d); \
mp_srcptr __s = (s); \
mp_size_t __n = (n); \
ASSERT (__n >= 1); \
ASSERT (MPN_SAME_OR_SEPARATE_P (__d, __s, __n)); \
do \
*__d++ = (~ *__s++) & GMP_NUMB_MASK; \
while (--__n); \
} while (0)
#define s
Definition: afcover.h:80
#define d(n)
Definition: gpos-common.c:151

Definition at line 2554 of file gmp-impl.h.

◆ mpn_compute_powtab

#define mpn_compute_powtab   __MPN(compute_powtab)

Definition at line 4357 of file gmp-impl.h.

◆ MPN_COPY

#define MPN_COPY (   d,
  s,
  n 
)
Value:
do { \
ASSERT (MPN_SAME_OR_SEPARATE_P (d, s, n)); \
MPN_COPY_INCR (d, s, n); \
} while (0)

Definition at line 1849 of file gmp-impl.h.

◆ MPN_COPY_DECR

#define MPN_COPY_DECR (   dst,
  src,
  n 
)
Value:
do { \
ASSERT ((n) >= 0); \
ASSERT (MPN_SAME_OR_DECR_P (dst, src, n)); \
if ((n) != 0) \
{ \
mp_size_t __n = (n) - 1; \
mp_ptr __dst = (dst) + __n; \
mp_srcptr __src = (src) + __n; \
mp_limb_t __x; \
__x = *__src--; \
if (__n != 0) \
{ \
do \
{ \
*__dst-- = __x; \
__x = *__src--; \
} \
while (--__n); \
} \
*__dst-- = __x; \
} \
} while (0)
#define MPN_SAME_OR_DECR_P(dst, src, size)
Definition: gmp-impl.h:2409

Definition at line 1822 of file gmp-impl.h.

◆ MPN_COPY_INCR

#define MPN_COPY_INCR (   dst,
  src,
  n 
)
Value:
do { \
ASSERT ((n) >= 0); \
ASSERT (MPN_SAME_OR_INCR_P (dst, src, n)); \
if ((n) != 0) \
{ \
mp_size_t __n = (n) - 1; \
mp_ptr __dst = (dst); \
mp_srcptr __src = (src); \
mp_limb_t __x; \
__x = *__src++; \
if (__n != 0) \
{ \
do \
{ \
*__dst++ = __x; \
__x = *__src++; \
} \
while (--__n); \
} \
*__dst++ = __x; \
} \
} while (0)
#define MPN_SAME_OR_INCR_P(dst, src, size)
Definition: gmp-impl.h:2405

Definition at line 1769 of file gmp-impl.h.

◆ mpn_dc_get_str_itch

#define mpn_dc_get_str_itch (   n)    ((n) + GMP_LIMB_BITS)

Definition at line 4355 of file gmp-impl.h.

◆ mpn_dc_set_str

#define mpn_dc_set_str   __MPN(dc_set_str)

Definition at line 4359 of file gmp-impl.h.

◆ mpn_dc_set_str_itch

#define mpn_dc_set_str_itch (   n)    ((n) + GMP_LIMB_BITS)

Definition at line 4354 of file gmp-impl.h.

◆ mpn_dcpi1_bdiv_q

#define mpn_dcpi1_bdiv_q   __MPN(dcpi1_bdiv_q)

Definition at line 1604 of file gmp-impl.h.

◆ mpn_dcpi1_bdiv_qr

#define mpn_dcpi1_bdiv_qr   __MPN(dcpi1_bdiv_qr)

Definition at line 1597 of file gmp-impl.h.

◆ mpn_dcpi1_bdiv_qr_n

#define mpn_dcpi1_bdiv_qr_n   __MPN(dcpi1_bdiv_qr_n)

Definition at line 1602 of file gmp-impl.h.

◆ mpn_dcpi1_bdiv_qr_n_itch

#define mpn_dcpi1_bdiv_qr_n_itch   __MPN(dcpi1_bdiv_qr_n_itch)

Definition at line 1599 of file gmp-impl.h.

◆ mpn_dcpi1_div_q

#define mpn_dcpi1_div_q   __MPN(dcpi1_div_q)

Definition at line 1538 of file gmp-impl.h.

◆ mpn_dcpi1_div_qr

#define mpn_dcpi1_div_qr   __MPN(dcpi1_div_qr)

Definition at line 1533 of file gmp-impl.h.

◆ mpn_dcpi1_div_qr_n

#define mpn_dcpi1_div_qr_n   __MPN(dcpi1_div_qr_n)

Definition at line 1535 of file gmp-impl.h.

◆ mpn_dcpi1_divappr_q

#define mpn_dcpi1_divappr_q   __MPN(dcpi1_divappr_q)

Definition at line 1541 of file gmp-impl.h.

◆ mpn_decr_u

#define mpn_decr_u (   p,
  incr 
)
Value:
do { \
mp_limb_t __x; \
mp_ptr __p = (p); \
if (__builtin_constant_p (incr) && (incr) == 1) \
{ \
while ((*(__p++))-- == 0) \
; \
} \
else \
{ \
__x = *__p; \
*__p = __x - (incr); \
if (__x < (incr)) \
while ((*(++__p))-- == 0) \
; \
} \
} while (0)
#define __builtin_constant_p(x)
Definition: gmp-impl.h:734
#define incr(x)
Definition: cpascal.h:92

Definition at line 2776 of file gmp-impl.h.

◆ MPN_DECR_U

#define MPN_DECR_U (   ptr,
  size,
  n 
)    mpn_decr_u (ptr, n)

Definition at line 2880 of file gmp-impl.h.

◆ mpn_div_q

#define mpn_div_q   __MPN(div_q)

Definition at line 1564 of file gmp-impl.h.

◆ mpn_div_qr_1n_pi1

#define mpn_div_qr_1n_pi1   __MPN(div_qr_1n_pi1)

Definition at line 1515 of file gmp-impl.h.

◆ mpn_div_qr_2n_pi1

#define mpn_div_qr_2n_pi1   __MPN(div_qr_2n_pi1)

Definition at line 1518 of file gmp-impl.h.

◆ mpn_div_qr_2u_pi1

#define mpn_div_qr_2u_pi1   __MPN(div_qr_2u_pi1)

Definition at line 1521 of file gmp-impl.h.

◆ mpn_divexact

#define mpn_divexact   __MPN(divexact)

Definition at line 1627 of file gmp-impl.h.

◆ mpn_divexact_by15

#define mpn_divexact_by15 (   dst,
  src,
  size 
)     (15 & 1 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 15)))

Definition at line 1697 of file gmp-impl.h.

◆ mpn_divexact_by3

#define mpn_divexact_by3 (   dst,
  src,
  size 
)     (3 & mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 3)))

Definition at line 1661 of file gmp-impl.h.

◆ mpn_divexact_by5

#define mpn_divexact_by5 (   dst,
  src,
  size 
)     (7 & 3 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 5)))

Definition at line 1672 of file gmp-impl.h.

◆ mpn_divexact_itch

#define mpn_divexact_itch   __MPN(divexact_itch)

Definition at line 1629 of file gmp-impl.h.

◆ mpn_divisible_p

#define mpn_divisible_p   __MPN(divisible_p)

Definition at line 1721 of file gmp-impl.h.

◆ mpn_divrem_1c

#define mpn_divrem_1c   __MPN(divrem_1c)

Definition at line 1127 of file gmp-impl.h.

◆ MPN_DIVREM_OR_DIVEXACT_1

#define MPN_DIVREM_OR_DIVEXACT_1 (   rp,
  up,
  n,
  d 
)
Value:
do { \
ASSERT_NOCARRY (mpn_divrem_1 (rp, (mp_size_t) 0, up, n, d)); \
else \
{ \
ASSERT (mpn_mod_1 (up, n, d) == 0); \
mpn_divexact_1 (rp, up, n, d); \
} \
} while (0)
#define BELOW_THRESHOLD(size, thresh)
Definition: gmp-impl.h:1368
#define DIVEXACT_1_THRESHOLD
Definition: gmp-impl.h:3248
long int mp_size_t
Definition: gmp.h:175
mp_limb_t mpn_divrem_1(mp_limb_t *, mp_size_t, mp_limb_t *, mp_size_t, mp_limb_t)
up
Definition: tex4ht.c:2558

Definition at line 3254 of file gmp-impl.h.

◆ MPN_DIVREM_OR_PREINV_DIVREM_1

#define MPN_DIVREM_OR_PREINV_DIVREM_1 (   qp,
  xsize,
  ap,
  size,
  d,
  dinv,
  shift 
)     mpn_preinv_divrem_1 (qp, xsize, ap, size, d, dinv, shift)

Definition at line 3217 of file gmp-impl.h.

◆ mpn_dump

#define mpn_dump   __MPN(dump)

Definition at line 1130 of file gmp-impl.h.

◆ MPN_EXTRACT_NUMB

#define MPN_EXTRACT_NUMB (   count,
  xh,
  xl 
)
Value:
((((xh) << ((count) - GMP_NAIL_BITS)) & GMP_NUMB_MASK) | \
((xl) >> (GMP_LIMB_BITS - (count))))
#define count(a)
Definition: aptex-macros.h:781

Definition at line 4216 of file gmp-impl.h.

◆ mpn_fft_best_k

#define mpn_fft_best_k   __MPN(fft_best_k)

Definition at line 1500 of file gmp-impl.h.

◆ mpn_fft_mul

#define mpn_fft_mul   mpn_nussbaumer_mul

Definition at line 5240 of file gmp-impl.h.

◆ mpn_fft_next_size

#define mpn_fft_next_size   __MPN(fft_next_size)

Definition at line 1512 of file gmp-impl.h.

◆ MPN_FFT_TABLE_SIZE

#define MPN_FFT_TABLE_SIZE   16

Definition at line 2353 of file gmp-impl.h.

◆ MPN_FIB2_SIZE

#define MPN_FIB2_SIZE (   n)     ((mp_size_t) ((n) / 32 * 23 / GMP_NUMB_BITS) + 4)

Definition at line 2035 of file gmp-impl.h.

◆ mpn_fib2_ui

#define mpn_fib2_ui   __MPN(fib2_ui)

Definition at line 1133 of file gmp-impl.h.

◆ mpn_fib2m

#define mpn_fib2m   __MPN(fib2m)

Definition at line 1136 of file gmp-impl.h.

◆ MPN_FILL

#define MPN_FILL (   dst,
  n,
  f 
)
Value:
do { \
mp_ptr __dst = (dst); \
mp_size_t __n = (n); \
ASSERT (__n > 0); \
do \
*__dst++ = (f); \
while (--__n); \
} while (0)

Definition at line 1908 of file gmp-impl.h.

◆ mpn_gcd_22

#define mpn_gcd_22   __MPN (gcd_22)

Definition at line 3976 of file gmp-impl.h.

◆ mpn_gcd_subdiv_step

#define mpn_gcd_subdiv_step   __MPN(gcd_subdiv_step)

Definition at line 4296 of file gmp-impl.h.

◆ MPN_GCD_SUBDIV_STEP_ITCH

#define MPN_GCD_SUBDIV_STEP_ITCH (   n)    (n)

Definition at line 4294 of file gmp-impl.h.

◆ mpn_gcdext_hook

#define mpn_gcdext_hook   __MPN (gcdext_hook)

Definition at line 4312 of file gmp-impl.h.

◆ MPN_GCDEXT_LEHMER_ITCH

#define MPN_GCDEXT_LEHMER_ITCH (   an,
  bn 
)    (5*(an) + 4*(bn) + 8)

Definition at line 4321 of file gmp-impl.h.

◆ mpn_gcdext_lehmer_n

#define mpn_gcdext_lehmer_n   __MPN(gcdext_lehmer_n)

Definition at line 4317 of file gmp-impl.h.

◆ MPN_GCDEXT_LEHMER_N_ITCH

#define MPN_GCDEXT_LEHMER_N_ITCH (   n)    (4*(n) + 3)

Definition at line 4315 of file gmp-impl.h.

◆ mpn_get_d

#define mpn_get_d   __gmpn_get_d

Definition at line 3852 of file gmp-impl.h.

◆ mpn_hgcd

#define mpn_hgcd   __MPN (hgcd)

Definition at line 4279 of file gmp-impl.h.

◆ mpn_hgcd2

#define mpn_hgcd2   __MPN (hgcd2)

Definition at line 4231 of file gmp-impl.h.

◆ mpn_hgcd2_jacobi

#define mpn_hgcd2_jacobi   __MPN (hgcd2_jacobi)

Definition at line 4240 of file gmp-impl.h.

◆ mpn_hgcd_appr

#define mpn_hgcd_appr   __MPN (hgcd_appr)

Definition at line 4285 of file gmp-impl.h.

◆ mpn_hgcd_appr_itch

#define mpn_hgcd_appr_itch   __MPN (hgcd_appr_itch)

Definition at line 4282 of file gmp-impl.h.

◆ mpn_hgcd_itch

#define mpn_hgcd_itch   __MPN (hgcd_itch)

Definition at line 4276 of file gmp-impl.h.

◆ mpn_hgcd_jacobi

#define mpn_hgcd_jacobi   __MPN (hgcd_jacobi)

Definition at line 4288 of file gmp-impl.h.

◆ mpn_hgcd_matrix_adjust

#define mpn_hgcd_matrix_adjust