Polly 20.0.0git
Functions
isl_int_sioimath.c File Reference
#include <stdlib.h>
#include <string.h>
#include <isl_int.h>

Go to the source code of this file.

Functions

int isl_sioimath_decode (isl_sioimath val, int32_t *small, mp_int *big)
 
int isl_sioimath_decode_big (isl_sioimath val, mp_int *big)
 
int isl_sioimath_decode_small (isl_sioimath val, int32_t *small)
 
isl_sioimath isl_sioimath_encode_small (int32_t val)
 
isl_sioimath isl_sioimath_encode_big (mp_int val)
 
int isl_sioimath_is_small (isl_sioimath val)
 
int isl_sioimath_is_big (isl_sioimath val)
 
int32_t isl_sioimath_get_small (isl_sioimath val)
 
mp_int isl_sioimath_get_big (isl_sioimath val)
 
void isl_siomath_uint32_to_digits (uint32_t num, mp_digit *digits, mp_size *used)
 
void isl_siomath_ulong_to_digits (unsigned long num, mp_digit *digits, mp_size *used)
 
void isl_siomath_uint64_to_digits (uint64_t num, mp_digit *digits, mp_size *used)
 
mp_int isl_sioimath_bigarg_src (isl_sioimath arg, isl_sioimath_scratchspace_t *scratch)
 
mp_int isl_sioimath_siarg_src (signed long arg, isl_sioimath_scratchspace_t *scratch)
 
mp_int isl_sioimath_si64arg_src (int64_t arg, isl_sioimath_scratchspace_t *scratch)
 
mp_int isl_sioimath_uiarg_src (unsigned long arg, isl_sioimath_scratchspace_t *scratch)
 
mp_int isl_sioimath_reinit_big (isl_sioimath_ptr ptr)
 
void isl_sioimath_set_small (isl_sioimath_ptr ptr, int32_t val)
 
void isl_sioimath_set_int32 (isl_sioimath_ptr ptr, int32_t val)
 
void isl_sioimath_set_int64 (isl_sioimath_ptr ptr, int64_t val)
 
void isl_sioimath_promote (isl_sioimath_ptr dst)
 
void isl_sioimath_try_demote (isl_sioimath_ptr dst)
 
void isl_sioimath_init (isl_sioimath_ptr dst)
 
void isl_sioimath_clear (isl_sioimath_ptr dst)
 
void isl_sioimath_set (isl_sioimath_ptr dst, isl_sioimath_src val)
 
void isl_sioimath_set_si (isl_sioimath_ptr dst, long val)
 
void isl_sioimath_set_ui (isl_sioimath_ptr dst, unsigned long val)
 
int isl_sioimath_fits_slong (isl_sioimath_src val)
 
long isl_sioimath_get_si (isl_sioimath_src val)
 
int isl_sioimath_fits_ulong (isl_sioimath_src val)
 
unsigned long isl_sioimath_get_ui (isl_sioimath_src val)
 
double isl_sioimath_get_d (isl_sioimath_src val)
 
char * isl_sioimath_get_str (isl_sioimath_src val)
 
void isl_sioimath_abs (isl_sioimath_ptr dst, isl_sioimath_src arg)
 
void isl_sioimath_neg (isl_sioimath_ptr dst, isl_sioimath_src arg)
 
void isl_sioimath_swap (isl_sioimath_ptr lhs, isl_sioimath_ptr rhs)
 
void isl_sioimath_add_ui (isl_sioimath_ptr dst, isl_sioimath lhs, unsigned long rhs)
 
void isl_sioimath_sub_ui (isl_sioimath_ptr dst, isl_sioimath lhs, unsigned long rhs)
 
void isl_sioimath_add (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_sub (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_mul (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_mul_2exp (isl_sioimath_ptr dst, isl_sioimath lhs, unsigned long rhs)
 
void isl_sioimath_mul_si (isl_sioimath_ptr dst, isl_sioimath lhs, signed long rhs)
 
void isl_sioimath_mul_ui (isl_sioimath_ptr dst, isl_sioimath lhs, unsigned long rhs)
 
void isl_sioimath_pow_ui (isl_sioimath_ptr dst, isl_sioimath_src lhs, unsigned long rhs)
 
void isl_sioimath_addmul (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_addmul_ui (isl_sioimath_ptr dst, isl_sioimath_src lhs, unsigned long rhs)
 
void isl_sioimath_submul (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_submul_ui (isl_sioimath_ptr dst, isl_sioimath_src lhs, unsigned long rhs)
 
static uint32_t isl_sioimath_smallgcd (int32_t lhs, int32_t rhs)
 
void isl_sioimath_gcd (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_lcm (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_tdiv_q (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_tdiv_q_ui (isl_sioimath_ptr dst, isl_sioimath_src lhs, unsigned long rhs)
 
void isl_sioimath_cdiv_q (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_cdiv_q_ui (isl_sioimath_ptr dst, isl_sioimath_src lhs, unsigned long rhs)
 
void isl_sioimath_fdiv_q (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_fdiv_q_ui (isl_sioimath_ptr dst, isl_sioimath_src lhs, unsigned long rhs)
 
void isl_sioimath_fdiv_r (isl_sioimath_ptr dst, isl_sioimath_src lhs, isl_sioimath_src rhs)
 
void isl_sioimath_read (isl_sioimath_ptr dst, const char *str)
 
int isl_sioimath_sgn (isl_sioimath_src arg)
 
int isl_sioimath_cmp (isl_sioimath_src lhs, isl_sioimath_src rhs)
 
int isl_sioimath_cmp_si (isl_sioimath_src lhs, signed long rhs)
 
int isl_sioimath_abs_cmp (isl_sioimath_src lhs, isl_sioimath_src rhs)
 
int isl_sioimath_is_divisible_by (isl_sioimath_src lhs, isl_sioimath_src rhs)
 
uint32_t isl_sioimath_hash (isl_sioimath_src arg, uint32_t hash)
 
size_t isl_sioimath_sizeinbase (isl_sioimath_src arg, int base)
 
void isl_sioimath_print (FILE *out, isl_sioimath_src i, int width)
 
void isl_sioimath_dump (isl_sioimath_src arg)
 

Function Documentation

◆ isl_sioimath_abs()

void isl_sioimath_abs ( isl_sioimath_ptr  dst,
isl_sioimath_src  arg 
)
inline

◆ isl_sioimath_abs_cmp()

int isl_sioimath_abs_cmp ( isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_add()

void isl_sioimath_add ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_add_ui()

void isl_sioimath_add_ui ( isl_sioimath_ptr  dst,
isl_sioimath  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_addmul()

void isl_sioimath_addmul ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_addmul_ui()

void isl_sioimath_addmul_ui ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_bigarg_src()

mp_int isl_sioimath_bigarg_src ( isl_sioimath  arg,
isl_sioimath_scratchspace_t scratch 
)
inline

◆ isl_sioimath_cdiv_q()

void isl_sioimath_cdiv_q ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_cdiv_q_ui()

void isl_sioimath_cdiv_q_ui ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_clear()

void isl_sioimath_clear ( isl_sioimath_ptr  dst)
inline

◆ isl_sioimath_cmp()

int isl_sioimath_cmp ( isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_cmp_si()

int isl_sioimath_cmp_si ( isl_sioimath_src  lhs,
signed long  rhs 
)
inline

◆ isl_sioimath_decode()

int isl_sioimath_decode ( isl_sioimath  val,
int32_t *  small,
mp_int big 
)

◆ isl_sioimath_decode_big()

int isl_sioimath_decode_big ( isl_sioimath  val,
mp_int big 
)
inline

Definition at line 144 of file isl_int_sioimath.h.

References isl_sioimath_get_big(), isl_sioimath_is_big(), and val.

Referenced by isl_sioimath_bigarg_src().

◆ isl_sioimath_decode_small()

int isl_sioimath_decode_small ( isl_sioimath  val,
int32_t *  small 
)
inline

◆ isl_sioimath_dump()

void isl_sioimath_dump ( isl_sioimath_src  arg)

Definition at line 220 of file isl_int_sioimath.c.

References arg, and isl_sioimath_print().

◆ isl_sioimath_encode_big()

isl_sioimath isl_sioimath_encode_big ( mp_int  val)
inline

Definition at line 159 of file isl_int_sioimath.h.

References val.

Referenced by isl_sioimath_reinit_big().

◆ isl_sioimath_encode_small()

isl_sioimath isl_sioimath_encode_small ( int32_t  val)
inline

Definition at line 152 of file isl_int_sioimath.h.

References val.

Referenced by isl_sioimath_init(), and isl_sioimath_set_small().

◆ isl_sioimath_fdiv_q()

void isl_sioimath_fdiv_q ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_fdiv_q_ui()

void isl_sioimath_fdiv_q_ui ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_fdiv_r()

void isl_sioimath_fdiv_r ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_fits_slong()

int isl_sioimath_fits_slong ( isl_sioimath_src  val)
inline

◆ isl_sioimath_fits_ulong()

int isl_sioimath_fits_ulong ( isl_sioimath_src  val)
inline

◆ isl_sioimath_gcd()

void isl_sioimath_gcd ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)

◆ isl_sioimath_get_big()

mp_int isl_sioimath_get_big ( isl_sioimath  val)
inline

◆ isl_sioimath_get_d()

double isl_sioimath_get_d ( isl_sioimath_src  val)
inline

◆ isl_sioimath_get_si()

long isl_sioimath_get_si ( isl_sioimath_src  val)
inline

◆ isl_sioimath_get_small()

int32_t isl_sioimath_get_small ( isl_sioimath  val)
inline

◆ isl_sioimath_get_str()

char * isl_sioimath_get_str ( isl_sioimath_src  val)
inline

◆ isl_sioimath_get_ui()

unsigned long isl_sioimath_get_ui ( isl_sioimath_src  val)
inline

◆ isl_sioimath_hash()

uint32_t isl_sioimath_hash ( isl_sioimath_src  arg,
uint32_t  hash 
)
inline

◆ isl_sioimath_init()

void isl_sioimath_init ( isl_sioimath_ptr  dst)
inline

◆ isl_sioimath_is_big()

int isl_sioimath_is_big ( isl_sioimath  val)
inline

◆ isl_sioimath_is_divisible_by()

int isl_sioimath_is_divisible_by ( isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_is_small()

int isl_sioimath_is_small ( isl_sioimath  val)
inline

◆ isl_sioimath_lcm()

void isl_sioimath_lcm ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)

◆ isl_sioimath_mul()

void isl_sioimath_mul ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_mul_2exp()

void isl_sioimath_mul_2exp ( isl_sioimath_ptr  dst,
isl_sioimath  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_mul_si()

void isl_sioimath_mul_si ( isl_sioimath_ptr  dst,
isl_sioimath  lhs,
signed long  rhs 
)
inline

◆ isl_sioimath_mul_ui()

void isl_sioimath_mul_ui ( isl_sioimath_ptr  dst,
isl_sioimath  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_neg()

void isl_sioimath_neg ( isl_sioimath_ptr  dst,
isl_sioimath_src  arg 
)
inline

◆ isl_sioimath_pow_ui()

void isl_sioimath_pow_ui ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_print()

void isl_sioimath_print ( FILE *  out,
isl_sioimath_src  i,
int  width 
)

◆ isl_sioimath_promote()

void isl_sioimath_promote ( isl_sioimath_ptr  dst)
inline

◆ isl_sioimath_read()

void isl_sioimath_read ( isl_sioimath_ptr  dst,
const char *  str 
)

◆ isl_sioimath_reinit_big()

mp_int isl_sioimath_reinit_big ( isl_sioimath_ptr  ptr)
inline

◆ isl_sioimath_set()

void isl_sioimath_set ( isl_sioimath_ptr  dst,
isl_sioimath_src  val 
)
inline

◆ isl_sioimath_set_int32()

void isl_sioimath_set_int32 ( isl_sioimath_ptr  ptr,
int32_t  val 
)
inline

◆ isl_sioimath_set_int64()

void isl_sioimath_set_int64 ( isl_sioimath_ptr  ptr,
int64_t  val 
)
inline

◆ isl_sioimath_set_si()

void isl_sioimath_set_si ( isl_sioimath_ptr  dst,
long  val 
)
inline

◆ isl_sioimath_set_small()

void isl_sioimath_set_small ( isl_sioimath_ptr  ptr,
int32_t  val 
)
inline

◆ isl_sioimath_set_ui()

void isl_sioimath_set_ui ( isl_sioimath_ptr  dst,
unsigned long  val 
)
inline

◆ isl_sioimath_sgn()

int isl_sioimath_sgn ( isl_sioimath_src  arg)
inline

◆ isl_sioimath_si64arg_src()

mp_int isl_sioimath_si64arg_src ( int64_t  arg,
isl_sioimath_scratchspace_t scratch 
)
inline

◆ isl_sioimath_siarg_src()

mp_int isl_sioimath_siarg_src ( signed long  arg,
isl_sioimath_scratchspace_t scratch 
)
inline

◆ isl_sioimath_sizeinbase()

size_t isl_sioimath_sizeinbase ( isl_sioimath_src  arg,
int  base 
)
inline

◆ isl_sioimath_smallgcd()

static uint32_t isl_sioimath_smallgcd ( int32_t  lhs,
int32_t  rhs 
)
static

Definition at line 84 of file isl_int_sioimath.c.

References lhs, and rhs.

Referenced by isl_sioimath_gcd(), and isl_sioimath_lcm().

◆ isl_sioimath_sub()

void isl_sioimath_sub ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_sub_ui()

void isl_sioimath_sub_ui ( isl_sioimath_ptr  dst,
isl_sioimath  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_submul()

void isl_sioimath_submul ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_submul_ui()

void isl_sioimath_submul_ui ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_swap()

void isl_sioimath_swap ( isl_sioimath_ptr  lhs,
isl_sioimath_ptr  rhs 
)
inline

Definition at line 577 of file isl_int_sioimath.h.

References lhs, and rhs.

◆ isl_sioimath_tdiv_q()

void isl_sioimath_tdiv_q ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
isl_sioimath_src  rhs 
)
inline

◆ isl_sioimath_tdiv_q_ui()

void isl_sioimath_tdiv_q_ui ( isl_sioimath_ptr  dst,
isl_sioimath_src  lhs,
unsigned long  rhs 
)
inline

◆ isl_sioimath_try_demote()

void isl_sioimath_try_demote ( isl_sioimath_ptr  dst)
inline

◆ isl_sioimath_uiarg_src()

mp_int isl_sioimath_uiarg_src ( unsigned long  arg,
isl_sioimath_scratchspace_t scratch 
)
inline

◆ isl_siomath_uint32_to_digits()

void isl_siomath_uint32_to_digits ( uint32_t  num,
mp_digit digits,
mp_size used 
)
inline

Definition at line 220 of file isl_int_sioimath.h.

References ISL_SIOIMATH_TO_DIGITS.

Referenced by isl_sioimath_bigarg_src(), and isl_sioimath_hash().

◆ isl_siomath_uint64_to_digits()

void isl_siomath_uint64_to_digits ( uint64_t  num,
mp_digit digits,
mp_size used 
)
inline

Definition at line 232 of file isl_int_sioimath.h.

References ISL_SIOIMATH_TO_DIGITS.

Referenced by isl_sioimath_si64arg_src().

◆ isl_siomath_ulong_to_digits()

void isl_siomath_ulong_to_digits ( unsigned long  num,
mp_digit digits,
mp_size used 
)
inline

Definition at line 226 of file isl_int_sioimath.h.

References ISL_SIOIMATH_TO_DIGITS.

Referenced by isl_sioimath_siarg_src(), and isl_sioimath_uiarg_src().