package goblint

  1. Overview
  2. Docs
Static analysis framework for C

Install

Dune Dependency

Authors

Maintainers

Sources

goblint-2.3.0.tbz
sha256=b729c94adb383a39aea32eb005c988dfd44b92af22ee6a4eedf4239542ac6c26
sha512=643b98770e5fe5644324c95c9ae3a9f698f25c8b11b298f0751d524e0b20af368b2a465fc8200b75a73d48fc9a053fd90f5e8920d4db070927f93188bb8687e0

doc/goblint.common/MyCFG/index.html

Module MyCFG

Control-flow graph.

Distinct from CIL's CFG.

type node = Node.t =
  1. | Statement of CilType.Stmt.t
  2. | FunctionEntry of CilType.Fundec.t
  3. | Function of CilType.Fundec.t

Re-exported Node.t with constructors. See Node.t for documentation.

type edge = Edge.t =
  1. | Assign of CilType.Lval.t * CilType.Exp.t
  2. | Proc of CilType.Lval.t option * CilType.Exp.t * CilType.Exp.t list
  3. | Entry of CilType.Fundec.t
  4. | Ret of CilType.Exp.t option * CilType.Fundec.t
  5. | Test of CilType.Exp.t * bool
  6. | ASM of string list * Edge.asm_out * Edge.asm_in
  7. | VDecl of CilType.Varinfo.t
  8. | Skip

Re-exported Edge.t with constructors. See Edge.t for documentation.

type edges = (CilType.Location.t * Edge.t) list
val equal_edges : edges -> edges -> Ppx_deriving_runtime.bool
val hash_edges : edges -> int
type cfg = node -> (edges * node) list
module type CfgBackward = sig ... end
module type CfgForward = sig ... end
module type CfgBidir = sig ... end
module NodeH : sig ... end
val current_node : Node.t option Stdlib.ref
val current_cfg : (module CfgBidir) Stdlib.ref
val unknown_exp : GoblintCil.exp
val dummy_func : GoblintCil.fundec
val dummy_node : node
module type FileCfg = sig ... end
OCaml

Innovation. Community. Security.