package mopsa
MOPSA: A Modular and Open Platform for Static Analysis using Abstract Interpretation
Install
dune-project
Dependency
Authors
Maintainers
Sources
mopsa-analyzer-v1.2.tar.gz
md5=37966e98ffeebcedc09bd6e9b2b81f69
sha512=40d4d826c25f680766c07eccbabdf5e8a4fa023016e8a164e4e4f6b3781c8484dc4df437055721dfd19b9db8fb7fe3b61236c4833186d346fc7204a68d01eaaa
doc/mopsa.mopsa_analyzer/Mopsa_analyzer/Languages/Cfg/Frontend/index.html
Module Cfg.Frontend
Converts a Universal program AST into a CFG.
val debug : ('a, Format.formatter, unit, unit) format4 -> 'a
Graph conversion
val extract_calls_expr :
MopsaLib.expr ->
(MopsaLib.var * MopsaLib.range) list * MopsaLib.stmt list * MopsaLib.expr
val extract_calls_stmt :
MopsaLib.stmt ->
(MopsaLib.var * MopsaLib.range) list * MopsaLib.stmt list * MopsaLib.stmt
val mk_add_tmps : (MopsaLib.var * MopsaLib.range) list -> MopsaLib.stmt list
val mk_remove_tmps : (MopsaLib.var * MopsaLib.range) list -> MopsaLib.stmt list
type ctx = {
ctx_cfg : Ast.graph;
ctx_return : Ast.node;
ctx_break : Ast.node list;
ctx_continue : Ast.node list;
ctx_return_var : MopsaLib.var option;
}
val add_node : ctx -> Ast.node_id -> Ast.node
val add_edge :
ctx ->
Mopsa_utils.Core.Location.range ->
(Ast.port * Ast.node) list ->
(Ast.port * Ast.node) list ->
MopsaLib.stmt list ->
unit
val add_block_after :
ctx ->
Mopsa_utils.Core.Location.range ->
Ast.node ->
MopsaLib.stmt list ->
Ast.node
val add_block_before :
ctx ->
Mopsa_utils.Core.Location.range ->
Ast.node ->
MopsaLib.stmt list ->
Ast.node
val add_stmt : ctx -> Ast.node -> Ast.node -> MopsaLib.stmt -> unit
val convert_stmt :
?name:string ->
?ret:MopsaLib.var ->
MopsaLib.stmt ->
MopsaLib.stmt
Creates a new graph and fill-in with the given statement.
val convert_fundec : Universal.Lang.Ast.fundec -> unit
Converts a function AST to a CFG.
val convert_program : MopsaLib.program -> MopsaLib.program
Converts a full universal program.
val parse_program : string list -> MopsaLib.program
From source to CFG.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page