Module Gmp

module Gmp: sig .. end

Calls to the GMP's API.


val name_of_mpz_arith_bop : Cil_types.binop -> string

name_of_mpz_arith_bop bop returns the name of the GMP function on integer corresponding to the bop arithmetic operation.

val init : loc:Cil_types.location -> Cil_types.exp -> Cil_types.stmt

build stmt mpz_init(v) or mpq_init(v) depending on typ of v

val init_set : loc:Cil_types.location ->
Cil_types.lval -> Cil_types.exp -> Cil_types.exp -> Cil_types.stmt

init_set x_as_lv x_as_exp e builds stmt x = e or mpz_init_set*(v, e) or mpq_init_set*(v, e) with the good function 'set' according to the type of e

val clear : loc:Cil_types.location -> Cil_types.exp -> Cil_types.stmt

build stmt mpz_clear(v) or mpq_clear(v) depending on typ of v

val affect : loc:Cil_types.location ->
Cil_types.lval -> Cil_types.exp -> Cil_types.exp -> Cil_types.stmt

affect x_as_lv x_as_exp e builds stmt x = e or mpz_set*(e) or mpq_set*(e) with the good function 'set' according to the type of e