sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
Cfg.FrontendConverts a Universal program AST into a CFG.
val debug : ('a, Format.formatter, unit, unit) format4 -> 'aval extract_calls_expr :
MopsaLib.expr ->
(MopsaLib.var * MopsaLib.range) list * MopsaLib.stmt list * MopsaLib.exprval extract_calls_stmt :
MopsaLib.stmt ->
(MopsaLib.var * MopsaLib.range) list * MopsaLib.stmt list * MopsaLib.stmtval mk_add_tmps : (MopsaLib.var * MopsaLib.range) list -> MopsaLib.stmt listval mk_remove_tmps : (MopsaLib.var * MopsaLib.range) list -> MopsaLib.stmt listtype 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.nodeval add_edge :
ctx ->
Mopsa_utils.Core.Location.range ->
(Ast.port * Ast.node) list ->
(Ast.port * Ast.node) list ->
MopsaLib.stmt list ->
unitval add_block_after :
ctx ->
Mopsa_utils.Core.Location.range ->
Ast.node ->
MopsaLib.stmt list ->
Ast.nodeval add_block_before :
ctx ->
Mopsa_utils.Core.Location.range ->
Ast.node ->
MopsaLib.stmt list ->
Ast.nodeval add_stmt : ctx -> Ast.node -> Ast.node -> MopsaLib.stmt -> unitval convert_stmt : ?name:??? -> ?ret:??? -> MopsaLib.stmt -> MopsaLib.stmtCreates a new graph and fill-in with the given statement.
val convert_fundec : Universal.Lang.Ast.fundec -> unitConverts a function AST to a CFG.
val convert_program : MopsaLib.program -> MopsaLib.programConverts a full universal program.
val parse_program : string list -> MopsaLib.programFrom source to CFG.