Module Availexpslv


module Availexpslv: sig .. end

module DF: Dataflow
module UD: Usedef
module IH: Inthash
module H: Hashtbl
module S: sig .. end
val debug : bool Pervasives.ref
val doTime : bool Pervasives.ref
val time : 'a -> ('b -> 'c) -> 'b -> 'c
val ignore_inst : (Cil_types.instr -> bool) Pervasives.ref
val ignore_call : (Cil_types.instr -> bool) Pervasives.ref
val registerIgnoreInst : (Cil_types.instr -> bool) -> unit
val registerIgnoreCall : (Cil_types.instr -> bool) -> unit
module LvExpHash: H.Make(sig
type t = Cil_types.lval 
val equal : Cil_types.lval -> Cil_types.lval -> bool
val hash : 'a -> int
end)
val lvh_equals : Cil_types.exp LvExpHash.t ->
Cil_types.exp LvExpHash.t -> bool
val lvh_pretty : Format.formatter -> Cil_types.exp LvExpHash.t -> unit
val lvh_combine : Cil_types.exp LvExpHash.t ->
Cil_types.exp LvExpHash.t ->
Cil_types.exp LvExpHash.t
class memReadOrAddrOfFinderClass : bool Pervasives.ref -> object .. end
val exp_has_mem_read : Cil_types.exp -> bool
val lval_has_mem_read : Cil_types.lval -> bool
val lvh_kill_mem : Cil_types.exp LvExpHash.t -> unit
class viFinderClass : Cil_types.varinfo -> bool Pervasives.ref -> object .. end
val exp_has_vi : Cil_types.varinfo -> Cil_types.exp -> bool
val lval_has_vi : Cil_types.varinfo -> Cil_types.lval -> bool
val lvh_kill_vi : Cil_types.exp LvExpHash.t -> Cil_types.varinfo -> unit
class lvalFinderClass : Cil_types.lval -> bool Pervasives.ref -> object .. end
val exp_has_lval : Cil_types.lval -> Cil_types.exp -> bool
val lval_has_lval : Cil_types.lval -> Cil_types.lhost * Cil_types.offset -> bool
val lvh_kill_lval : Cil_types.exp LvExpHash.t -> Cil_types.lval -> unit
class volatileFinderClass : bool Pervasives.ref -> object .. end
val exp_is_volatile : Cil_types.exp -> bool
class addrOfOrGlobalFinderClass : bool Pervasives.ref -> object .. end
val lval_has_addrof_or_global : Cil_types.lval -> bool
val lvh_kill_addrof_or_global : 'a LvExpHash.t -> unit
val lvh_handle_inst : Cil_types.instr ->
Cil_types.exp LvExpHash.t ->
Cil_types.exp LvExpHash.t
module AvailableExps: sig .. end
module AE: DF.ForwardsDataFlow(AvailableExps)
val computeAEs : Cil_types.fundec -> unit
val getAEs : int -> AvailableExps.StmtStartData.data option
val instrAEs : Cil_types.instr list ->
'a ->
Cil_types.exp LvExpHash.t ->
'b -> Cil_types.exp LvExpHash.t list
class aeVisitorClass : object .. end