Module Generic.Build

module Build: Va_build

val function_declaration : ?vattr:Cil_types.attribute list ->
loc:Cil_types.location ->
string ->
Cil_types.typ ->
(Cil_types.varinfo list -> Cil_types.funspec) ->
Cil_types.varinfo * Cil_types.global
val vi_init : loc:Cil_types.location ->
Cil_types.varinfo -> Cil_types.exp -> Cil_types.instr
val array_init : loc:Cil_types.location ->
Cil_types.fundec ->
ghost:bool ->
Cil_types.block ->
string ->
Cil_types.typ -> Cil_types.exp list -> Cil_types.varinfo * Cil_types.instr
val call : loc:Cil_types.location ->
Cil_types.lval option ->
Cil_types.varinfo -> Cil_types.exp list -> Cil_types.stmt
val lvar : Cil_types.varinfo -> Cil_types.term_lhost * Cil_types.term_offset
val tlval : loc:Cil_datatype.Location.t -> Cil_types.term_lval -> Cil_types.term
val tvar : loc:Cil_datatype.Location.t -> Cil_types.varinfo -> Cil_types.term
val tvarmem : loc:Cil_datatype.Location.t ->
Cil_types.varinfo -> Cil_types.term_lhost * Cil_types.term_offset
val tvarfield : loc:Cil_datatype.Location.t ->
Cil_types.varinfo ->
Cil_types.fieldinfo -> Cil_types.term_lhost * Cil_types.term_offset
val tresult : Cil_types.typ -> Cil_types.term_lhost * Cil_types.term_offset
val tzero : loc:Cil_types.location -> Cil_types.term
val tone : loc:Cil_types.location -> Cil_types.term
val tbinop : loc:Cil_datatype.Location.t ->
Cil_types.binop -> Cil_types.term -> Cil_types.term -> Cil_types.term
val tminus : loc:Cil_datatype.Location.t ->
Cil_types.term -> Cil_types.term -> Cil_types.term
val tplus : loc:Cil_datatype.Location.t ->
Cil_types.term -> Cil_types.term -> Cil_types.term
val trange : loc:Cil_datatype.Location.t ->
Cil_types.term option -> Cil_types.term option -> Cil_types.term
val trange_from_vi : loc:Cil_datatype.Location.t ->
Cil_types.varinfo -> Cil_types.term_lhost * Cil_types.term_offset
exception NotAFunction
val tapp : loc:Cil_datatype.Location.t ->
Cil_types.logic_info ->
Cil_types.logic_label list -> Cil_types.term list -> Cil_types.term