Module Reachingdefs.ReachingDef


module ReachingDef: sig .. end

val name : string
val debug : bool Pervasives.ref
val mayReach : bool Pervasives.ref
type t = unit * int * Reachingdefs.IOS.t Reachingdefs.IH.t 
module StmtStartData: Reachingdefs.DF.StmtStartData(sig
type t = unit * int * Reachingdefs.IOS.t Reachingdefs.IH.t 
val size : int
end)
val copy : 'a * 'b * 'c Inthash.t -> unit * 'b * 'c Inthash.t
val defIdStmtHash : Cil_types.stmt Inthash.t
val sidStmtHash : Cil_types.stmt Inthash.t
val pretty : 'a -> 'b -> unit
val nextDefId : int Pervasives.ref
val num_defs : Cil_types.stmt -> int
val computeFirstPredecessor : Cil_types.stmt -> 'a * int * 'b Inthash.t -> unit * int * 'b Inthash.t
val combinePredecessors : Cil_types.stmt ->
old:t ->
t ->
(unit * int * Reachingdefs.IOS.t Reachingdefs.IH.t) option
val doInstr : 'a ->
Cil_types.instr ->
'b * 'c * 'd ->
(unit * int * Reachingdefs.IOS.t Reachingdefs.IH.t) Reachingdefs.DF.action
val doStmt : Cil_types.stmt ->
'a * 'b * 'c Reachingdefs.IH.t -> 'd Reachingdefs.DF.stmtaction
val doGuard : 'a ->
'b -> 'c -> 'd Reachingdefs.DF.guardaction * 'e Reachingdefs.DF.guardaction
val filterStmt : 'a -> bool
val stmt_can_reach : 'a -> 'b -> bool
val doEdge : 'a -> 'b -> 'c -> 'c