package goblint
Static analysis framework for C
Install
Dune Dependency
Authors
Maintainers
Sources
goblint-1.1.1.tbz
sha256=999272bfbd3b9b96fcd58987b237ac6e9fa6d92ef935cc89f1ea2b4205185141
sha512=f3bf6ab71cf8c258d3290da4bf9f6fe42d7c671822e0efeb0fc50afdff078ab15e352237e5c1db31c5aa3a9d430691268ed2e5e00da10f2615835f672f91683d
doc/goblint.lib/CompareCIL/index.html
Module CompareCIL
include module type of struct include CompareAST end
include module type of struct include CompareCFG end
include module type of struct include CompareAST end
val compare_global_type :
global_type ->
global_type ->
Ppx_deriving_runtime.int
val compare_global_identifier :
global_identifier ->
global_identifier ->
Ppx_deriving_runtime.int
val identifier_of_global : Cil.global -> global_identifier
module GlobalMap = CompareCFG.GlobalMap
val global_typ_acc : (Cil.typ * Cil.typ) list ref
val eq_node : (MyCFG.node * Cil.fundec) -> (MyCFG.node * Cil.fundec) -> bool
val eq_edge : MyCFG.edge -> MyCFG.edge -> bool
val eq_edge_list : MyCFG.edge list -> MyCFG.edge list -> bool
module NH = CompareCFG.NH
module NTH = CompareCFG.NTH
val compareCfgs :
(module MyCFG.CfgForward) ->
(module MyCFG.CfgForward) ->
CilType.Fundec.t ->
CilType.Fundec.t ->
unit NTH.t * unit NH.t
val reexamine :
CilType.Fundec.t ->
CilType.Fundec.t ->
unit NTH.t ->
unit NH.t ->
(module MyCFG.CfgForward) ->
(module MyCFG.CfgForward) ->
NTH.key Seq.t * NH.key Seq.t * NH.key Seq.t
val compareFun :
(module MyCFG.CfgForward) ->
(module MyCFG.CfgForward) ->
CilType.Fundec.t ->
CilType.Fundec.t ->
NTH.key list * NH.key list * NH.key list
type nodes_diff = {
unchangedNodes : (MyCFG.node * MyCFG.node) list;
primObsoleteNodes : MyCFG.node list;
(*primary obsolete nodes -> all obsolete nodes are reachable from these
*)primNewNodes : MyCFG.node list;
(*primary new nodes -> all differing nodes in the new CFG are reachable from these
*)
}
type changed_global = {
old : Cil.global;
current : Cil.global;
unchangedHeader : bool;
diff : nodes_diff option;
}
type change_info = {
mutable changed : changed_global list;
mutable unchanged : Cil.global list;
mutable removed : Cil.global list;
mutable added : Cil.global list;
}
val empty_change_info : unit -> change_info
val eqF :
Cil.fundec ->
Cil.fundec ->
(MyCFG.cfg * MyCFG.cfg) option ->
bool * bool * nodes_diff option
val eq_glob :
Cil.global ->
Cil.global ->
(MyCFG.cfg * MyCFG.cfg) option ->
bool * bool * nodes_diff option
val compareCilFiles : Cil.file -> Cil.file -> change_info
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>