Documentation ¶
Overview ¶
Package minigmp is a small implementation of a subset of GMP's mpn and mpz interfaces.
Changelog ¶
2017-07-18:
- Support for Linux/386 is in.
- License is now the original one, choose LGPL or GPL.
Caveats ¶
- ATM there are only a few simple tests covering just the basic arithmetic operations. The plan is to eventually run all translated-to-Go C tests in minigmp/tests during go generate. Linux/386 version does not yet pass even the simple tests, presumably because of a bug in the CCGO tool chain.
- The automatically generated documentation is sparse and sometimes misplaced. Please consult the full documentation at
http://gmplib.org
Header extracted from minigmp.c:
/* mini-gmp, a minimalistic implementation of a GNU GMP subset. Contributed to the GNU project by Niels Möller Copyright 1991-1997, 1999-2016 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. or both in parallel, as here. The GNU MP Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. */ /* NOTE: All functions in this file which are not declared in mini-gmp.h are internal, and are not intended to be compatible neither with GMP nor with future versions of mini-gmp. */ /* Much of the material copied from GMP files, including: gmp-impl.h, longlong.h, mpn/generic/add_n.c, mpn/generic/addmul_1.c, mpn/generic/lshift.c, mpn/generic/mul_1.c, mpn/generic/mul_basecase.c, mpn/generic/rshift.c, mpn/generic/sbpi1_div_qr.c, mpn/generic/sub_n.c, mpn/generic/submul_1.c. */
Index ¶
- Constants
- Variables
- func Xmp_get_memory_functions(tls *crt.TLS, _alloc_func *func(*crt.TLS, uint64) unsafe.Pointer, ...)
- func Xmp_set_memory_functions(tls *crt.TLS, _alloc_func func(*crt.TLS, uint64) unsafe.Pointer, ...)
- func Xmpn_add(tls *crt.TLS, _rp *uint64, _ap *uint64, _an int64, _bp *uint64, _bn int64) (r0 uint64)
- func Xmpn_add_1(tls *crt.TLS, _rp *uint64, _ap *uint64, _n int64, _b uint64) (r0 uint64)
- func Xmpn_add_n(tls *crt.TLS, _rp *uint64, _ap *uint64, _bp *uint64, _n int64) (r0 uint64)
- func Xmpn_addmul_1(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64, _vl uint64) (r0 uint64)
- func Xmpn_cmp(tls *crt.TLS, _ap *uint64, _bp *uint64, _n int64) (r0 int32)
- func Xmpn_com(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64)
- func Xmpn_copyd(tls *crt.TLS, _d *uint64, _s *uint64, _n int64)
- func Xmpn_copyi(tls *crt.TLS, _d *uint64, _s *uint64, _n int64)
- func Xmpn_get_str(tls *crt.TLS, _sp *uint8, _base int32, _up *uint64, _un int64) (r0 uint64)
- func Xmpn_invert_3by2(tls *crt.TLS, _u1 uint64, _u0 uint64) (r0 uint64)
- func Xmpn_lshift(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64, _cnt uint32) (r0 uint64)
- func Xmpn_mul(tls *crt.TLS, _rp *uint64, _up *uint64, _un int64, _vp *uint64, _vn int64) (r0 uint64)
- func Xmpn_mul_1(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64, _vl uint64) (r0 uint64)
- func Xmpn_mul_n(tls *crt.TLS, _rp *uint64, _ap *uint64, _bp *uint64, _n int64)
- func Xmpn_neg(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64) (r0 uint64)
- func Xmpn_perfect_square_p(tls *crt.TLS, _p *uint64, _n int64) (r0 int32)
- func Xmpn_popcount(tls *crt.TLS, _p *uint64, _n int64) (r0 uint64)
- func Xmpn_rshift(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64, _cnt uint32) (r0 uint64)
- func Xmpn_scan0(tls *crt.TLS, _ptr *uint64, _bit uint64) (r0 uint64)
- func Xmpn_scan1(tls *crt.TLS, _ptr *uint64, _bit uint64) (r0 uint64)
- func Xmpn_set_str(tls *crt.TLS, _rp *uint64, _sp *uint8, _sn uint64, _base int32) (r0 int64)
- func Xmpn_sqr(tls *crt.TLS, _rp *uint64, _ap *uint64, _n int64)
- func Xmpn_sqrtrem(tls *crt.TLS, _sp *uint64, _rp *uint64, _p *uint64, _n int64) (r0 int64)
- func Xmpn_sub(tls *crt.TLS, _rp *uint64, _ap *uint64, _an int64, _bp *uint64, _bn int64) (r0 uint64)
- func Xmpn_sub_1(tls *crt.TLS, _rp *uint64, _ap *uint64, _n int64, _b uint64) (r0 uint64)
- func Xmpn_sub_n(tls *crt.TLS, _rp *uint64, _ap *uint64, _bp *uint64, _n int64) (r0 uint64)
- func Xmpn_submul_1(tls *crt.TLS, _rp *uint64, _up *uint64, _n int64, _vl uint64) (r0 uint64)
- func Xmpn_zero(tls *crt.TLS, _rp *uint64, _n int64)
- func Xmpn_zero_p(tls *crt.TLS, _rp *uint64, _n int64) (r0 int32)
- func Xmpz_abs(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
- func Xmpz_add(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr)
- func Xmpz_add_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b uint64)
- func Xmpz_addmul(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_addmul_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
- func Xmpz_and(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_bin_uiui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n uint64, _k uint64)
- func Xmpz_cdiv_q(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_cdiv_q_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
- func Xmpz_cdiv_q_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_cdiv_qr(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, ...)
- func Xmpz_cdiv_qr_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, ...) (r0 uint64)
- func Xmpz_cdiv_r(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_cdiv_r_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
- func Xmpz_cdiv_r_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_cdiv_ui(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_clear(tls *crt.TLS, _r *[1]Xmpz_srcptr)
- func Xmpz_clrbit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64)
- func Xmpz_cmp(tls *crt.TLS, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_cmp_d(tls *crt.TLS, _x *[1]Xmpz_srcptr, _d float64) (r0 int32)
- func Xmpz_cmp_si(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v int64) (r0 int32)
- func Xmpz_cmp_ui(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v uint64) (r0 int32)
- func Xmpz_cmpabs(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_cmpabs_d(tls *crt.TLS, _x *[1]Xmpz_srcptr, _d float64) (r0 int32)
- func Xmpz_cmpabs_ui(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v uint64) (r0 int32)
- func Xmpz_com(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
- func Xmpz_combit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64)
- func Xmpz_congruent_p(tls *crt.TLS, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _m *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_divexact(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_divexact_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64)
- func Xmpz_divisible_p(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_divisible_ui_p(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 int32)
- func Xmpz_export(tls *crt.TLS, _r unsafe.Pointer, _countp *uint64, _order int32, _size uint64, ...) (r0 unsafe.Pointer)
- func Xmpz_fac_ui(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n uint64)
- func Xmpz_fdiv_q(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_fdiv_q_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
- func Xmpz_fdiv_q_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_fdiv_qr(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, ...)
- func Xmpz_fdiv_qr_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, ...) (r0 uint64)
- func Xmpz_fdiv_r(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_fdiv_r_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
- func Xmpz_fdiv_r_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_fdiv_ui(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_fits_slong_p(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_fits_ulong_p(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_gcd(tls *crt.TLS, _g *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_gcd_ui(tls *crt.TLS, _g *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64) (r0 uint64)
- func Xmpz_gcdext(tls *crt.TLS, _g *[1]Xmpz_srcptr, _s *[1]Xmpz_srcptr, _t *[1]Xmpz_srcptr, ...)
- func Xmpz_get_d(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 float64)
- func Xmpz_get_si(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int64)
- func Xmpz_get_str(tls *crt.TLS, _sp *int8, _base int32, _u *[1]Xmpz_srcptr) (r0 *int8)
- func Xmpz_get_ui(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 uint64)
- func Xmpz_getlimbn(tls *crt.TLS, _u *[1]Xmpz_srcptr, _n int64) (r0 uint64)
- func Xmpz_hamdist(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr) (r0 uint64)
- func Xmpz_import(tls *crt.TLS, _r *[1]Xmpz_srcptr, _count uint64, _order int32, _size uint64, ...)
- func Xmpz_init(tls *crt.TLS, _r *[1]Xmpz_srcptr)
- func Xmpz_init2(tls *crt.TLS, _r *[1]Xmpz_srcptr, _bits uint64)
- func Xmpz_init_set(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x *[1]Xmpz_srcptr)
- func Xmpz_init_set_d(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x float64)
- func Xmpz_init_set_si(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x int64)
- func Xmpz_init_set_str(tls *crt.TLS, _r *[1]Xmpz_srcptr, _sp *int8, _base int32) (r0 int32)
- func Xmpz_init_set_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x uint64)
- func Xmpz_invert(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _m *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_ior(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_lcm(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_lcm_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
- func Xmpz_limbs_finish(tls *crt.TLS, _x *[1]Xmpz_srcptr, _xs int64)
- func Xmpz_limbs_modify(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n int64) (r0 *uint64)
- func Xmpz_limbs_read(tls *crt.TLS, _x *Xmpz_srcptr) (r0 *uint64)
- func Xmpz_limbs_write(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n int64) (r0 *uint64)
- func Xmpz_mod(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_mod_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_mul(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_mul_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _bits uint64)
- func Xmpz_mul_si(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v int64)
- func Xmpz_mul_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
- func Xmpz_neg(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
- func Xmpz_out_str(tls *crt.TLS, _stream *crt.XFILE, _base int32, _x *[1]Xmpz_srcptr) (r0 uint64)
- func Xmpz_perfect_square_p(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_popcount(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 uint64)
- func Xmpz_pow_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _e uint64)
- func Xmpz_powm(tls *crt.TLS, _r *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _e *[1]Xmpz_srcptr, ...)
- func Xmpz_powm_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _elimb uint64, ...)
- func Xmpz_probab_prime_p(tls *crt.TLS, _n *[1]Xmpz_srcptr, _reps int32) (r0 int32)
- func Xmpz_realloc2(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n uint64)
- func Xmpz_root(tls *crt.TLS, _x *[1]Xmpz_srcptr, _y *[1]Xmpz_srcptr, _z uint64) (r0 int32)
- func Xmpz_rootrem(tls *crt.TLS, _x *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _y *[1]Xmpz_srcptr, ...)
- func Xmpz_scan0(tls *crt.TLS, _u *[1]Xmpz_srcptr, _starting_bit uint64) (r0 uint64)
- func Xmpz_scan1(tls *crt.TLS, _u *[1]Xmpz_srcptr, _starting_bit uint64) (r0 uint64)
- func Xmpz_set(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x *[1]Xmpz_srcptr)
- func Xmpz_set_d(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x float64)
- func Xmpz_set_si(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x int64)
- func Xmpz_set_str(tls *crt.TLS, _r *[1]Xmpz_srcptr, _sp *int8, _base int32) (r0 int32)
- func Xmpz_set_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x uint64)
- func Xmpz_setbit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64)
- func Xmpz_sgn(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
- func Xmpz_size(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 uint64)
- func Xmpz_sizeinbase(tls *crt.TLS, _u *[1]Xmpz_srcptr, _base int32) (r0 uint64)
- func Xmpz_sqrt(tls *crt.TLS, _s *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
- func Xmpz_sqrtrem(tls *crt.TLS, _s *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
- func Xmpz_sub(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr)
- func Xmpz_sub_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b uint64)
- func Xmpz_submul(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_submul_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
- func Xmpz_swap(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- func Xmpz_tdiv_q(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_tdiv_q_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
- func Xmpz_tdiv_q_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_tdiv_qr(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, ...)
- func Xmpz_tdiv_qr_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, ...) (r0 uint64)
- func Xmpz_tdiv_r(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
- func Xmpz_tdiv_r_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
- func Xmpz_tdiv_r_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_tdiv_ui(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
- func Xmpz_tstbit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64) (r0 int32)
- func Xmpz_ui_pow_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _blimb uint64, _e uint64)
- func Xmpz_ui_sub(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a uint64, _b *[1]Xmpz_srcptr)
- func Xmpz_xor(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
- type Tgmp_div_inverse
- type Tmpn_base_info
- type Xmpz_srcptr
Constants ¶
const ( X_LP64 = 1 X_STDC_PREDEF_H = 1 X__ATOMIC_ACQUIRE = 2 X__ATOMIC_ACQ_REL = 4 X__ATOMIC_CONSUME = 1 X__ATOMIC_HLE_ACQUIRE = 65536 X__ATOMIC_HLE_RELEASE = 131072 X__ATOMIC_RELAXED = 0 X__ATOMIC_RELEASE = 3 X__ATOMIC_SEQ_CST = 5 X__BIGGEST_ALIGNMENT__ = 16 X__BYTE_ORDER__ = 1234 X__CHAR_BIT__ = 8 X__DBL_DECIMAL_DIG__ = 17 X__DBL_DIG__ = 15 X__DBL_HAS_DENORM__ = 1 X__DBL_HAS_INFINITY__ = 1 X__DBL_HAS_QUIET_NAN__ = 1 X__DBL_MANT_DIG__ = 53 X__DBL_MAX_10_EXP__ = 308 X__DBL_MAX_EXP__ = 1024 X__DBL_MIN_10_EXP__ = -307 X__DBL_MIN_EXP__ = -1021 X__DEC128_MANT_DIG__ = 34 X__DEC128_MAX_EXP__ = 6145 X__DEC128_MIN_EXP__ = -6142 X__DEC32_MANT_DIG__ = 7 X__DEC32_MAX_EXP__ = 97 X__DEC32_MIN_EXP__ = -94 X__DEC64_MANT_DIG__ = 16 X__DEC64_MAX_EXP__ = 385 X__DEC64_MIN_EXP__ = -382 X__DECIMAL_BID_FORMAT__ = 1 X__DECIMAL_DIG__ = 21 X__DEC_EVAL_METHOD__ = 2 X__FINITE_MATH_ONLY__ = 0 X__FLOAT_WORD_ORDER__ = 1234 X__FLT_DECIMAL_DIG__ = 9 X__FLT_DENORM_MIN__ = 1e-45 X__FLT_DIG__ = 6 X__FLT_EPSILON__ = 1.1920929e-07 X__FLT_EVAL_METHOD__ = 0 X__FLT_HAS_DENORM__ = 1 X__FLT_HAS_INFINITY__ = 1 X__FLT_HAS_QUIET_NAN__ = 1 X__FLT_MANT_DIG__ = 24 X__FLT_MAX_10_EXP__ = 38 X__FLT_MAX_EXP__ = 128 X__FLT_MAX__ = 3.4028235e+38 X__FLT_MIN_10_EXP__ = -37 X__FLT_MIN_EXP__ = -125 X__FLT_MIN__ = 1.1754944e-38 X__FLT_RADIX__ = 2 X__FUNCTION__ = 0 X__FXSR__ = 1 X__GXX_ABI_VERSION = 1010 X__INT16_MAX__ = 32767 X__INT32_MAX__ = 2147483647 X__INT32_TYPE__ = 0 X__INT64_MAX__ = 9223372036854775807 X__INT8_MAX__ = 127 X__INTMAX_MAX__ = 9223372036854775807 X__INTPTR_MAX__ = 9223372036854775807 X__INT_FAST16_MAX__ = 9223372036854775807 X__INT_FAST32_MAX__ = 9223372036854775807 X__INT_FAST64_MAX__ = 9223372036854775807 X__INT_FAST8_MAX__ = 127 X__INT_LEAST16_MAX__ = 32767 X__INT_LEAST32_MAX__ = 2147483647 X__INT_LEAST32_TYPE__ = 0 X__INT_LEAST64_MAX__ = 9223372036854775807 X__INT_LEAST8_MAX__ = 127 X__INT_MAX__ = 2147483647 X__LDBL_DENORM_MIN__ = 0 X__LDBL_DIG__ = 18 X__LDBL_EPSILON__ = 1.0842021724855044e-19 X__LDBL_HAS_DENORM__ = 1 X__LDBL_HAS_INFINITY__ = 1 X__LDBL_HAS_QUIET_NAN__ = 1 X__LDBL_MANT_DIG__ = 64 X__LDBL_MAX_10_EXP__ = 4932 X__LDBL_MAX_EXP__ = 16384 X__LDBL_MAX__ = 0 X__LDBL_MIN_10_EXP__ = -4931 X__LDBL_MIN_EXP__ = -16381 X__LDBL_MIN__ = 0 X__LONG_LONG_MAX__ = 9223372036854775807 X__LONG_MAX__ = 9223372036854775807 X__LP64__ = 1 X__MMX__ = 1 X__NO_INLINE__ = 1 X__ORDER_BIG_ENDIAN__ = 4321 X__ORDER_LITTLE_ENDIAN__ = 1234 X__ORDER_PDP_ENDIAN__ = 3412 X__PIC__ = 2 X__PIE__ = 2 X__PRAGMA_REDEFINE_EXTNAME = 1 X__PTRDIFF_MAX__ = 9223372036854775807 X__SCHAR_MAX__ = 127 X__SEG_FS = 1 X__SEG_GS = 1 X__SHRT_MAX__ = 32767 X__SIG_ATOMIC_MAX__ = 2147483647 X__SIG_ATOMIC_MIN__ = -2147483648 X__SIG_ATOMIC_TYPE__ = 0 X__SIZEOF_DOUBLE__ = 8 X__SIZEOF_FLOAT128__ = 16 X__SIZEOF_FLOAT80__ = 16 X__SIZEOF_FLOAT__ = 4 X__SIZEOF_INT__ = 4 X__SIZEOF_LONG_DOUBLE__ = 16 X__SIZEOF_LONG_LONG__ = 8 X__SIZEOF_LONG__ = 8 X__SIZEOF_POINTER__ = 8 X__SIZEOF_PTRDIFF_T__ = 8 X__SIZEOF_SHORT__ = 2 X__SIZEOF_SIZE_T__ = 8 X__SIZEOF_WCHAR_T__ = 4 X__SIZEOF_WINT_T__ = 4 X__SIZE_MAX__ = 18446744073709551615 X__SSE2_MATH__ = 1 X__SSE2__ = 1 X__SSE_MATH__ = 1 X__SSE__ = 1 X__SSP_STRONG__ = 3 X__STDC_HOSTED__ = 1 X__STDC_IEC_559_COMPLEX__ = 1 X__STDC_IEC_559__ = 1 X__STDC_ISO_10646__ = 201505 X__STDC_NO_THREADS__ = 1 X__STDC_VERSION__ = 199901 X__STDC__ = 1 X__STRICT_ANSI__ = 1 X__UINT16_MAX__ = 65535 X__UINT32_MAX__ = 4294967295 X__UINT64_MAX__ = 18446744073709551615 X__UINT8_MAX__ = 255 X__UINTMAX_MAX__ = 18446744073709551615 X__UINTPTR_MAX__ = 18446744073709551615 X__UINT_FAST16_MAX__ = 18446744073709551615 X__UINT_FAST32_MAX__ = 18446744073709551615 X__UINT_FAST64_MAX__ = 18446744073709551615 X__UINT_FAST8_MAX__ = 255 X__UINT_LEAST16_MAX__ = 65535 X__UINT_LEAST32_MAX__ = 4294967295 X__UINT_LEAST64_MAX__ = 18446744073709551615 X__UINT_LEAST8_MAX__ = 255 X__VERSION__ = "6.2.0 20161005" X__WCHAR_MAX__ = 2147483647 X__WCHAR_MIN__ = -2147483648 X__WCHAR_TYPE__ = 0 X__WINT_MAX__ = 4294967295 X__WINT_MIN__ = 0 X__amd64 = 1 X__amd64__ = 1 X__code_model_small__ = 1 X__complex__ = 0 X__const = 0 X__inline = 0 X__k8 = 1 X__k8__ = 1 X__linux = 1 X__linux__ = 1 X__pic__ = 2 X__pie__ = 2 X__restrict = 0 X__unix = 1 X__unix__ = 1 X__volatile = 0 X__x86_64 = 1 X__x86_64__ = 1 )
Variables ¶
var Xmp_bits_per_limb int32
var Xstderr unsafe.Pointer
Functions ¶
func Xmpn_add_1 ¶
func Xmpn_add_n ¶
func Xmpn_addmul_1 ¶
func Xmpn_get_str ¶
func Xmpn_invert_3by2 ¶
C comment
/* The 3/2 inverse is defined as m = floor( (B^3-1) / (B u1 + u0)) - B */
func Xmpn_lshift ¶
func Xmpn_mul_1 ¶
func Xmpn_perfect_square_p ¶
func Xmpn_rshift ¶
func Xmpn_set_str ¶
func Xmpn_sqrtrem ¶
func Xmpn_sub_1 ¶
func Xmpn_sub_n ¶
func Xmpn_submul_1 ¶
func Xmpz_abs ¶
func Xmpz_abs(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
func Xmpz_add ¶
func Xmpz_add(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr)
func Xmpz_add_ui ¶
func Xmpz_add_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b uint64)
func Xmpz_addmul ¶
func Xmpz_addmul(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_addmul_ui ¶
func Xmpz_addmul_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
func Xmpz_and ¶
func Xmpz_and(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_bin_uiui ¶
func Xmpz_bin_uiui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n uint64, _k uint64)
func Xmpz_cdiv_q ¶
func Xmpz_cdiv_q(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_cdiv_q_2exp ¶
func Xmpz_cdiv_q_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
func Xmpz_cdiv_q_ui ¶
func Xmpz_cdiv_q_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_cdiv_qr ¶
func Xmpz_cdiv_qr(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_cdiv_qr_ui ¶
func Xmpz_cdiv_qr_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_cdiv_r ¶
func Xmpz_cdiv_r(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_cdiv_r_2exp ¶
func Xmpz_cdiv_r_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
func Xmpz_cdiv_r_ui ¶
func Xmpz_cdiv_r_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_cdiv_ui ¶
func Xmpz_cdiv_ui(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_clear ¶
func Xmpz_clear(tls *crt.TLS, _r *[1]Xmpz_srcptr)
func Xmpz_clrbit ¶
func Xmpz_clrbit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64)
func Xmpz_cmp ¶
func Xmpz_cmp(tls *crt.TLS, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_cmp_d ¶
func Xmpz_cmp_d(tls *crt.TLS, _x *[1]Xmpz_srcptr, _d float64) (r0 int32)
func Xmpz_cmp_si ¶
func Xmpz_cmp_si(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v int64) (r0 int32)
func Xmpz_cmp_ui ¶
func Xmpz_cmp_ui(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v uint64) (r0 int32)
func Xmpz_cmpabs ¶
func Xmpz_cmpabs(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_cmpabs_d ¶
func Xmpz_cmpabs_d(tls *crt.TLS, _x *[1]Xmpz_srcptr, _d float64) (r0 int32)
func Xmpz_cmpabs_ui ¶
func Xmpz_cmpabs_ui(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v uint64) (r0 int32)
func Xmpz_com ¶
func Xmpz_com(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
func Xmpz_combit ¶
func Xmpz_combit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64)
func Xmpz_congruent_p ¶
func Xmpz_congruent_p(tls *crt.TLS, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _m *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_divexact ¶
func Xmpz_divexact(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_divexact_ui ¶
func Xmpz_divexact_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64)
func Xmpz_divisible_p ¶
func Xmpz_divisible_p(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_divisible_ui_p ¶
func Xmpz_divisible_ui_p(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 int32)
func Xmpz_export ¶
func Xmpz_fac_ui ¶
func Xmpz_fac_ui(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n uint64)
func Xmpz_fdiv_q ¶
func Xmpz_fdiv_q(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_fdiv_q_2exp ¶
func Xmpz_fdiv_q_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
func Xmpz_fdiv_q_ui ¶
func Xmpz_fdiv_q_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_fdiv_qr ¶
func Xmpz_fdiv_qr(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_fdiv_qr_ui ¶
func Xmpz_fdiv_qr_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_fdiv_r ¶
func Xmpz_fdiv_r(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_fdiv_r_2exp ¶
func Xmpz_fdiv_r_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
func Xmpz_fdiv_r_ui ¶
func Xmpz_fdiv_r_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_fdiv_ui ¶
func Xmpz_fdiv_ui(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_fits_slong_p ¶
func Xmpz_fits_slong_p(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_fits_ulong_p ¶
func Xmpz_fits_ulong_p(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_gcd ¶
func Xmpz_gcd(tls *crt.TLS, _g *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_gcd_ui ¶
func Xmpz_gcd_ui(tls *crt.TLS, _g *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64) (r0 uint64)
func Xmpz_gcdext ¶
func Xmpz_gcdext(tls *crt.TLS, _g *[1]Xmpz_srcptr, _s *[1]Xmpz_srcptr, _t *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_get_d ¶
func Xmpz_get_d(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 float64)
func Xmpz_get_si ¶
func Xmpz_get_si(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int64)
func Xmpz_get_str ¶
func Xmpz_get_ui ¶
func Xmpz_get_ui(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 uint64)
func Xmpz_getlimbn ¶
func Xmpz_getlimbn(tls *crt.TLS, _u *[1]Xmpz_srcptr, _n int64) (r0 uint64)
func Xmpz_hamdist ¶
func Xmpz_hamdist(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr) (r0 uint64)
func Xmpz_import ¶
func Xmpz_import(tls *crt.TLS, _r *[1]Xmpz_srcptr, _count uint64, _order int32, _size uint64, _endian int32, _nails uint64, _src unsafe.Pointer)
C comment
/* Import and export. Does not support nails. */
func Xmpz_init2 ¶
func Xmpz_init2(tls *crt.TLS, _r *[1]Xmpz_srcptr, _bits uint64)
C comment
/* The utility of this function is a bit limited, since many functions assigns the result variable using mpz_swap. */
func Xmpz_init_set ¶
func Xmpz_init_set(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x *[1]Xmpz_srcptr)
func Xmpz_init_set_d ¶
func Xmpz_init_set_d(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x float64)
func Xmpz_init_set_si ¶
func Xmpz_init_set_si(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x int64)
func Xmpz_init_set_str ¶
func Xmpz_init_set_ui ¶
func Xmpz_init_set_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x uint64)
func Xmpz_invert ¶
func Xmpz_invert(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _m *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_ior ¶
func Xmpz_ior(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_lcm ¶
func Xmpz_lcm(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_lcm_ui ¶
func Xmpz_lcm_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
func Xmpz_limbs_finish ¶
func Xmpz_limbs_finish(tls *crt.TLS, _x *[1]Xmpz_srcptr, _xs int64)
func Xmpz_limbs_modify ¶
func Xmpz_limbs_modify(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n int64) (r0 *uint64)
func Xmpz_limbs_read ¶
func Xmpz_limbs_read(tls *crt.TLS, _x *Xmpz_srcptr) (r0 *uint64)
func Xmpz_limbs_write ¶
func Xmpz_limbs_write(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n int64) (r0 *uint64)
func Xmpz_mod ¶
func Xmpz_mod(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_mod_ui ¶
func Xmpz_mod_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_mul ¶
func Xmpz_mul(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_mul_2exp ¶
func Xmpz_mul_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _bits uint64)
func Xmpz_mul_si ¶
func Xmpz_mul_si(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v int64)
C comment
/* MPZ multiplication */
func Xmpz_mul_ui ¶
func Xmpz_mul_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
func Xmpz_neg ¶
func Xmpz_neg(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
func Xmpz_out_str ¶
func Xmpz_perfect_square_p ¶
func Xmpz_perfect_square_p(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
func Xmpz_popcount ¶
func Xmpz_popcount(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 uint64)
func Xmpz_pow_ui ¶
func Xmpz_pow_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _e uint64)
func Xmpz_powm ¶
func Xmpz_powm(tls *crt.TLS, _r *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _e *[1]Xmpz_srcptr, _m *[1]Xmpz_srcptr)
func Xmpz_powm_ui ¶
func Xmpz_powm_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr, _elimb uint64, _m *[1]Xmpz_srcptr)
func Xmpz_probab_prime_p ¶
func Xmpz_probab_prime_p(tls *crt.TLS, _n *[1]Xmpz_srcptr, _reps int32) (r0 int32)
func Xmpz_realloc2 ¶
func Xmpz_realloc2(tls *crt.TLS, _x *[1]Xmpz_srcptr, _n uint64)
func Xmpz_root ¶
func Xmpz_root(tls *crt.TLS, _x *[1]Xmpz_srcptr, _y *[1]Xmpz_srcptr, _z uint64) (r0 int32)
func Xmpz_rootrem ¶
func Xmpz_rootrem(tls *crt.TLS, _x *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _y *[1]Xmpz_srcptr, _z uint64)
C comment
/* x=trunc(y^(1/z)), r=y-x^z */
func Xmpz_scan0 ¶
func Xmpz_scan0(tls *crt.TLS, _u *[1]Xmpz_srcptr, _starting_bit uint64) (r0 uint64)
func Xmpz_scan1 ¶
func Xmpz_scan1(tls *crt.TLS, _u *[1]Xmpz_srcptr, _starting_bit uint64) (r0 uint64)
func Xmpz_set ¶
func Xmpz_set(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x *[1]Xmpz_srcptr)
func Xmpz_set_d ¶
func Xmpz_set_d(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x float64)
C comment
/* Conversions and comparison to double. */
func Xmpz_set_si ¶
func Xmpz_set_si(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x int64)
C comment
/* MPZ assignment and basic conversions. */
func Xmpz_set_str ¶
func Xmpz_set_ui ¶
func Xmpz_set_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _x uint64)
func Xmpz_setbit ¶
func Xmpz_setbit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64)
func Xmpz_sgn ¶
func Xmpz_sgn(tls *crt.TLS, _u *[1]Xmpz_srcptr) (r0 int32)
C comment
/* MPZ comparisons and the like. */
func Xmpz_sizeinbase ¶
func Xmpz_sizeinbase(tls *crt.TLS, _u *[1]Xmpz_srcptr, _base int32) (r0 uint64)
func Xmpz_sqrt ¶
func Xmpz_sqrt(tls *crt.TLS, _s *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
func Xmpz_sqrtrem ¶
func Xmpz_sqrtrem(tls *crt.TLS, _s *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr)
C comment
/* Compute s = floor(sqrt(u)) and r = u - s^2. Allows r == NULL */
func Xmpz_sub ¶
func Xmpz_sub(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b *[1]Xmpz_srcptr)
func Xmpz_sub_ui ¶
func Xmpz_sub_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a *[1]Xmpz_srcptr, _b uint64)
func Xmpz_submul ¶
func Xmpz_submul(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_submul_ui ¶
func Xmpz_submul_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v uint64)
func Xmpz_swap ¶
func Xmpz_swap(tls *crt.TLS, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
func Xmpz_tdiv_q ¶
func Xmpz_tdiv_q(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_tdiv_q_2exp ¶
func Xmpz_tdiv_q_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
func Xmpz_tdiv_q_ui ¶
func Xmpz_tdiv_q_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_tdiv_qr ¶
func Xmpz_tdiv_qr(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_tdiv_qr_ui ¶
func Xmpz_tdiv_qr_ui(tls *crt.TLS, _q *[1]Xmpz_srcptr, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_tdiv_r ¶
func Xmpz_tdiv_r(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d *[1]Xmpz_srcptr)
func Xmpz_tdiv_r_2exp ¶
func Xmpz_tdiv_r_2exp(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _cnt uint64)
func Xmpz_tdiv_r_ui ¶
func Xmpz_tdiv_r_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_tdiv_ui ¶
func Xmpz_tdiv_ui(tls *crt.TLS, _n *[1]Xmpz_srcptr, _d uint64) (r0 uint64)
func Xmpz_tstbit ¶
func Xmpz_tstbit(tls *crt.TLS, _d *[1]Xmpz_srcptr, _bit_index uint64) (r0 int32)
func Xmpz_ui_pow_ui ¶
func Xmpz_ui_pow_ui(tls *crt.TLS, _r *[1]Xmpz_srcptr, _blimb uint64, _e uint64)
func Xmpz_ui_sub ¶
func Xmpz_ui_sub(tls *crt.TLS, _r *[1]Xmpz_srcptr, _a uint64, _b *[1]Xmpz_srcptr)
func Xmpz_xor ¶
func Xmpz_xor(tls *crt.TLS, _r *[1]Xmpz_srcptr, _u *[1]Xmpz_srcptr, _v *[1]Xmpz_srcptr)
Types ¶
type Tgmp_div_inverse ¶
type Tmpn_base_info ¶
type Xmpz_srcptr ¶
type Xmpz_srcptr struct { X_mp_alloc int32 X_mp_size int32 X_mp_d *uint64 } // t9 struct{_mp_alloc int32,_mp_size int32,_mp_d *uint64}
func Xmpz_roinit_n ¶
func Xmpz_roinit_n(tls *crt.TLS, _x *[1]Xmpz_srcptr, _xp *uint64, _xs int64) (r0 *Xmpz_srcptr)