Module Runtime_mem.Create.Data


module Data: sig .. end

include V
type m_of_mem = Runtime_mem.Create.m_mbits 
val tau_of_mem : Formula.tau
val forall_loc : F.pool -> F.var list * Runtime_mem.Create.Tint.x_addr
val global : Runtime_mem.Create.VarDecl.t -> unit
val cvar : Runtime_mem.Create.mem ->
Runtime_mem.Create.VarDecl.t -> Runtime_mem.Create.Tint.x_addr
val inner_loc : 'a -> 'b
val lvar : 'a -> Cil_types.logic_var -> F.var -> loc
val shift : loc -> Ctypes.c_object -> F.integer -> loc
val index : loc -> Ctypes.c_object -> F.integer -> loc
val field : loc -> Runtime_mem.Create.Fields.t -> Runtime_mem.Create.Tint.x_addr
Even if union field has 0 offset, we have to use on operation because the size of the location to be consider might change from one field to another.
val value_of_bits : (Ctypes.c_object -> Runtime_mem.Create.t_bits -> value) Pervasives.ref
val bits_of_value : (Ctypes.c_object -> value -> Runtime_mem.Create.t_bits) Pervasives.ref
val load_mem : Runtime_mem.Create.mem_bits ->
Ctypes.c_object -> Runtime_mem.Create.Tint.x_addr -> value
Read a data of type te at loc and returns it as a logic value.
val store_mem : Runtime_mem.Create.mem_bits ->
Ctypes.c_object ->
Runtime_mem.Create.Tint.x_addr -> value -> Runtime_mem.Create.mem_bits