package goblint-cil

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module E = Errormsg
module RD = Reachingdefs
module AELV = Availexpslv
module UD = Usedef
module IH = Inthash
module S = Stats
module IS : sig ... end
val debug : bool Pervasives.ref
val doTime : bool Pervasives.ref
val time : string -> ('a -> 'b) -> 'a -> 'b
type nameform =
  1. | Suffix of string
  2. | Prefix of string
  3. | Exact of string
val getDefRhs : int -> (RD.rhs * int * RD.IOS.t RD.IH.t) option
val exp_ok : bool Pervasives.ref
class memReadOrAddrOfFinderClass : object ... end
val memReadOrAddrOfFinder : memReadOrAddrOfFinderClass
val exp_is_ok_replacement : Cil.exp -> bool
val emptyStmt : Cil.stmt
class stmtFinderClass : int -> object ... end
val find_statement : 'a -> int -> Cil.stmt option
val wbHtbl : (int * int, bool) Hashtbl.t
val writes_between : 'a -> int -> int -> bool
val verify_unmodified : UD.VS.t -> UD.VS.t -> RD.IOS.t RD.IH.t -> RD.IOS.t RD.IH.t -> bool
val udDeepSkindHtbl : (UD.VS.t * UD.VS.t) IH.t
class defCollectorClass : object ... end
val defCollector : defCollectorClass
val collect_fun_defs : Cil.fundec -> UD.VS.t
val ok_to_replace : Cil.varinfo -> RD.IOS.t RD.IH.t -> int -> RD.IOS.t RD.IH.t -> int -> Cil.fundec -> RD.rhs -> bool
val useList : int list Pervasives.ref
class useListerClass : int -> Cil.varinfo -> object ... end
val ok_to_replace_with_incdec : RD.IOS.t RD.IH.t -> RD.IOS.t RD.IH.t -> Cil.fundec -> int -> Cil.varinfo -> RD.rhs -> (int * int * Cil.varinfo * Cil.binop) option
val iioh : Cil.instr option IH.t
val incdecHash : (int * Cil.varinfo * Cil.binop) IH.t
val idDefHash : (int * int) list IH.t
val id_dh_add : int -> (int * int) -> unit
val check_form : string -> nameform -> bool
val check_forms : string -> nameform list -> bool
val forms : nameform list
val varXformClass : ('a -> 'b -> Cil.varinfo -> 'c -> 'd -> Cil.exp option) -> 'a -> 'b -> 'c -> 'd -> Cil.nopCilVisitor
val lvalXformClass : ('a -> 'b -> Cil.lval -> 'c -> 'd -> Cil.exp option) -> 'a -> 'b -> 'c -> 'd -> Cil.nopCilVisitor
val iosh_get_useful_def : RD.IOS.t IH.t -> Cil.varinfo -> RD.IOS.elt
val ae_tmp_to_exp_change : bool Pervasives.ref
val ae_tmp_to_exp : Cil.exp IH.t -> 'a -> Cil.varinfo -> 'b -> bool -> Cil.exp option
val ae_lval_to_exp_change : bool Pervasives.ref
val ae_lval_to_exp : ?propStrings:bool -> Cil.exp AELV.LvExpHash.t -> 'a -> AELV.LvExpHash.key -> 'b -> bool -> Cil.exp option
val rd_tmp_to_exp_change : bool Pervasives.ref
val rd_tmp_to_exp : RD.IOS.t IH.t -> int -> Cil.varinfo -> Cil.fundec -> bool -> Cil.exp option
val rd_fwd_subst : RD.IOS.t IH.t -> int -> Cil.exp -> Cil.fundec -> bool -> Cil.exp * bool
val ae_fwd_subst : Cil.exp IH.t -> 'a -> Cil.exp -> 'b -> bool -> Cil.exp * bool
val ae_lv_fwd_subst : ?propStrings:bool -> Cil.exp AELV.LvExpHash.t -> 'a -> Cil.exp -> 'b -> bool -> Cil.exp * bool
val ae_simp_fwd_subst : Cil.exp IH.t -> Cil.exp -> bool -> Cil.exp * bool
val ae_lv_simp_fwd_subst : Cil.exp AELV.LvExpHash.t -> Cil.exp -> bool -> Cil.exp * bool
val ae_tmp_to_const_change : bool Pervasives.ref
val ae_tmp_to_const : Cil.exp IH.t -> 'a -> Cil.varinfo -> 'b -> bool -> Cil.exp option
val tmp_to_const_change : bool Pervasives.ref
val tmp_to_const : RD.IOS.t RD.IH.t -> int -> Cil.varinfo -> Cil.fundec -> bool -> Cil.exp option
val const_prop : RD.IOS.t RD.IH.t -> int -> Cil.exp -> Cil.fundec -> bool -> Cil.exp * bool
val ae_const_prop : Cil.exp IH.t -> 'a -> Cil.exp -> 'b -> bool -> Cil.exp * bool
class expTempElimClass : Cil.fundec -> object ... end
class expLvTmpElimClass : Cil.fundec -> object ... end
class incdecTempElimClass : Cil.fundec -> object ... end
class callTempElimClass : Cil.fundec -> object ... end
val rm_unused_locals : Cil.fundec -> unit
val is_volatile : Cil.varinfo -> bool
val fold_blocks : Cil.block -> unit
class removeBrackets : object ... end
val eliminate_temps : Cil.fundec -> Cil.fundec
val eliminateTempsForExpPrinting : Cil.fundec -> Cil.fundec