Constraints.LimitLifterLimits the number of widenings per node.
module S : Analyses.Specinclude module type of S with module D := S.D and type marshal = S.marshalmodule C : Printable.Stype marshal = S.marshalAuxiliary data (outside of solution domains) that needs to be marshaled and unmarshaled. This includes: * hashtables, * varinfos (create_var), * RichVarinfos.
val finalize : unit -> marshalFinalize and return auxiliary data to be marshaled.
val startstate : Cil.varinfo -> S.D.tval exitstate : Cil.varinfo -> S.D.tval call_descr : Cil.fundec -> C.t -> stringval sync :
(S.D.t, G.t, C.t) Analyses.ctx ->
[ `Normal | `Join | `Return ] ->
S.D.tval query : (S.D.t, G.t, C.t) Analyses.ctx -> 'a Queries.t -> 'a Queries.resultval assign : (S.D.t, G.t, C.t) Analyses.ctx -> Cil.lval -> Cil.exp -> S.D.tval vdecl : (S.D.t, G.t, C.t) Analyses.ctx -> Cil.varinfo -> S.D.tval branch : (S.D.t, G.t, C.t) Analyses.ctx -> Cil.exp -> bool -> S.D.tval body : (S.D.t, G.t, C.t) Analyses.ctx -> Cil.fundec -> S.D.tval return :
(S.D.t, G.t, C.t) Analyses.ctx ->
Cil.exp option ->
Cil.fundec ->
S.D.tval intrpt : (S.D.t, G.t, C.t) Analyses.ctx -> S.D.tval asm : (S.D.t, G.t, C.t) Analyses.ctx -> S.D.tval skip : (S.D.t, G.t, C.t) Analyses.ctx -> S.D.tval special :
(S.D.t, G.t, C.t) Analyses.ctx ->
Cil.lval option ->
Cil.varinfo ->
Cil.exp list ->
S.D.tval threadenter :
(S.D.t, G.t, C.t) Analyses.ctx ->
Cil.lval option ->
Cil.varinfo ->
Cil.exp list ->
S.D.t listReturns initial state for created thread.
val threadspawn :
(S.D.t, G.t, C.t) Analyses.ctx ->
Cil.lval option ->
Cil.varinfo ->
Cil.exp list ->
(S.D.t, G.t, C.t) Analyses.ctx ->
S.D.tUpdates the local state of the creator thread using initial state of created thread.
val limit : int Prelude.refval init : S.marshal option -> unitmodule H = MyCFG.NodeHval h : int H.tval incr : H.key -> unitmodule D : sig ... end